Subject: bug#10299: Emacs doesn't handle Unicode characters in keyboard layout on MS Windows

From: Jason Rumney <[email-masked]>
Date: Thu, 15 Dec 2011 22:40:15 +0800

Eli Zaretskii <[email-masked]> writes:

>> Date: Wed, 14 Dec 2011 21:39:28 +0100
>> From: Joakim Hårsman <[email-masked]>
>> 
>> However, Emacs doesn't seem to handle the case when the keyboard
>> layout contains characters not available in the ANSI code page, and
>> just prints a question mark character instead.
>
> Yes, Emacs on Windows uses the ANSI codepage to read the keyboard
> input.  Does it help to play with the value of keyboard-coding-system?

It tries to use Unicode if the Windows input method is sending it.  The
problem here is that there is no standard for Windows input methods, so
even the ones built into Windows act differently for different languages
and for the same language across different versions of Windows.

Some input methods will send WM_UNICHAR messages with the Unicode
character, which can be intercepted before they are turned into question
marks by Windows. These will just work with Emacs.

Others will send character codes corresponding to the codepoints in the
default Windows codepage for that language (regardless of your system
codepage). These can be handled by changing keyboard-coding-system
within Emacs.

Others will not send anything useful unless your system codepage is set
appropriately for the language being input.

It sounds like this one may be in the third category.