John Levon wrote: > please analyse further: output of text(), key(), ascii() when you press > Ä. Use a debugger or add lots of debug
I'm not really shure where (and what) to analyse. However, I have added debugs for text(), key() and ascii() in getSymbolName(). For what it's woth, the result is below. Some further notes: 1. I can type Ä with "Caps_Lock ä" (see dbg output) 2. As Kornel already reported, it i also possible to insert Ä into widgets (search dialog) HTH, Jürgen. // Sequenze: <Caps_lock> ä </Caps_lock> S-ä // 1. Caps_Lock ä -> Ä (successful) // a.) Caps_Lock on Press key 4132 text "none", ascii "0" KeySym is Caps_Lock action first set to [-1] action now set to [-1] getSymbolName() -> Caps_Lock text() is: (null) key() is: 4132 ascii() is: 0 Key [action=-1][Caps_Lock] Removing modifiers... Action now set to [-1] // b.) "ä" (pressed *once*) Press key 65535 text "Ä", ascii "196" sym empty in getSymbolName() getSymbolName() -> Ä text() is: Ä key() is: 65535 ascii() is: 196 KeySym is Ä action first set to [89] action now set to [89] sym empty in getSymbolName() getSymbolName() -> Ä text() is: Ä key() is: 65535 ascii() is: 196 Key [action=89][Ä] getISO returning Ä Cannot decode: Ä SelfInsert arg[`Ä'] // c.) Switch Caps_Lock off Press key 4132 text "none", ascii "0" getSymbolName() -> Caps_Lock text() is: (null) key() is: 4132 ascii() is: 0 KeySym is Caps_Lock action first set to [-1] action now set to [-1] getSymbolName() -> Caps_Lock text() is: (null) key() is: 4132 ascii() is: 0 Key [action=-1][Caps_Lock] Removing modifiers... Action now set to [-1] // 2. S-ä (failed) Press key 4128 text "none", ascii "0" getSymbolName() -> Shift_L text() is: (null) key() is: 4128 ascii() is: 0 KeySym is Shift_L Press key 65535 text "Ä", ascii "196" sym empty in getSymbolName() getSymbolName() -> Ä text() is: Ä key() is: 65535 ascii() is: 196 KeySym is Ä action first set to [43] action now set to [43] sym empty in getSymbolName() getSymbolName() -> Ä text() is: Ä key() is: 65535 ascii() is: 196 Key [action=43][S-Ä]