/*
* For combinations of the Alt key with text-input keys,
* in the case of a non-English keyboard layout,
* we will send the Unicode character corresponding
* to the pressed key.
*/
int codepoint = keysym2ucs(kd.keysym);
if ((input_char == -1) && (evt_state & Mod1Mask) && (codepoint > 0x7E)) {
input_char = codepoint;
}
just after
input_char = ((kd.keysym < 256)
? (int) kd.keysym
: ((kd.nbytes == 1)
? CharOf(kd.strbuf[0])
: -1));
in input.c