"Francois Gouget" <[EMAIL PROTECTED]> wrote:

>    Well, I'm not in France but I do sometimes use my qwerty keyboard in
> 'US-International' mode so that I can get some of these French
> characters... via dead-keys. Of course it seems like half the Unix
> applications don't support dead keys and the other half don't support
> accents.

Actually support for dead keys can be implemented now, since Alexandre
added support for composite unicode characters. I even wrote several tests
to prove the concept and do 2->1 and 1->2 character conversions in
WideCharToMultiByte and MultiByteToWideChar. But I have some problems:
1. Actually I don't know how to generate dead key sequence that will
modify next character, because cyrillic has no this "feature".
2. Accent characters in different code pages has different mappings to
unicode characters. Perhaps we just have to create internal table with
mapping [combining character in code page] -> [combining character in unicode]?

Then in x11drv.ToUnicode just do check: if previous pressed key was a dead key,
then convert both characters to unicode and do WideCharToMultiByte to combine
them into a single character and MultiByteToWideChar to convert combined
character to unicode?

P.S.
It was my thoughts. It they are too messy for you, excuse me - I have no strong
understanding of dead keys at all, just results of reading DDK and trial and error.




Reply via email to