Subject: bug#43830: keyboard layout handling incompatible with rest of the OS

From: Eli Zaretskii <[email-masked]>
Date: Wed, 28 Oct 2020 17:06:04 +0200

> From: Paul Pogonyshev <[email-masked]>
> Date: Wed, 28 Oct 2020 01:43:04 +0100
> Cc: Juri Linkov <[email-masked]>, [email-masked]
> 
> Apparently what Java does internally is calling function
> XkbTranslateKeyCode() to translate 'keycode' that corresponds
> to a physical key into a character using the current XKB layout.

Is XKB universally available?  AFAICT, we don't require it, but use it
if available (not for XkbTranslateKeyCode, though).

> However, in Elisp this is further complicated by there being no
> real KeyEvent structure, instead it's a single integer as far as I
> can see.

Why would you need that?  If we decide to use XkbTranslateKeyCode, we
could translate the keycode in C, according to some logic that took
into account the modifiers and perhaps also some user options, and
returned the resulting translated character.