Problem with mapping a key to multiple characters (Unicode + diacritic symbol)

Pierre-Luc Angles angles at stud.uni-heidelberg.de
Wed Mar 13 14:20:00 UTC 2019


Dear Ilya, dear all,

now I have tried once again in my keyboard layout

key <AE01>    { [        ampersand,                1,
  i_breve_below,                   U032F ] };

Typing it in a LibreOffice document with the right font results in no 
reaction (whereas before it reacts like NoSymbol by putting the default 
onesuperior).

Running xev I can see now:

KeyPress event, serial 37, synthetic NO, window 0x4c00001,
     root 0x168, subw 0x0, time 2807193, (-519,30), root:(568,309),
     state 0x4090, keycode 0 (keysym 0x0, NoSymbol), same_screen YES,
     XLookupString gives 0 bytes:
     XmbLookupString gives 3 bytes: (69 cc af) "i̯"
     XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x4c00001,
     root 0x168, subw 0x0, time 2807315, (-519,30), root:(568,309),
     state 0x4090, keycode 10 (keysym 0x100050f5, i_breve_below), 
same_screen YES,
     XLookupString gives 0 bytes:
     XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x4c00001,
     root 0x168, subw 0x0, time 2810008, (-519,30), root:(568,309),
     state 0x4090, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), 
same_screen YES,
     XKeysymToKeycode returns keycode: 92
     XLookupString gives 0 bytes:
     XFilterEvent returns: False

Note that a working key typed with the ALtGr modifier on the same 
keyboard layout has just two paragraphs in xev, for example:

KeyPress event, serial 37, synthetic NO, window 0x4c00001,
     root 0x168, subw 0x0, time 2802465, (-519,30), root:(568,309),
     state 0x4090, keycode 24 (keysym 0x1000101, U0101), same_screen YES,
     XLookupString gives 2 bytes: (c4 81) "ā"
     XmbLookupString gives 2 bytes: (c4 81) "ā"
     XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x4c00001,
     root 0x168, subw 0x0, time 2802581, (-519,30), root:(568,309),
     state 0x4090, keycode 24 (keysym 0x1000101, U0101), same_screen YES,
     XLookupString gives 2 bytes: (c4 81) "ā"
     XFilterEvent returns: False


It seems then to be the good direction, so thank you but I do not see 
what I could do now.

Thanks again!

Best,

Pierre-Luc

Le 13/03/2019 à 15:04, Pierre-Luc Angles a écrit :
> Dear Ilya, dear all,
> 
> Thanks again for this important remark.
> 
> My ~/.XCompose file is then the following:
> 
> <i_breve_below> : "i̯"
> <u_breve_below> : "u̯"
> <i_wtdot_ring_above> : "ı͗"
> <I_ring_above> : "I͗"
> <c_caron_dot_below> : "č̣"
> <C_caron_dot_below> : "Č̣"
> <s_macron_below> : "s̱"
> <S_macron_below> : "S̱"
> <H_macron_below> : "H̱"
> <h_circumf_below> : "h̭"
> <H_circumf_below> : "H̭"
> 
> My /usr/share/X11/XKeysymDB is the following:
> 
> i_breve_below        :100050F5
> u_breve_below        :100050F6
> i_wtdot_ring_above    :100050F7
> I_ring_above        :100050F8
> c_caron_dot_below    :100050F9
> C_caron_dot_below    :100050FA
> s_macron_below        :100050FB
> S_macron_below        :100050FC
> H_macron_below        :100050FD
> h_circumf_below        :100050FE
> H_circumf_below        :100050FF
> 
> and in my keyboard layout I have tried in a first time with:
> 
> 
> key <AE01>    { [        ampersand,                1, 
> i_breve_below,                   U032F ] };
> 
> and afterwards i a second time with
> 
> key <AE01>    { [        ampersand,                1,               
> U100050F5,                   U032F ] };
> 
> The keyboard is working but the i_breve_below or U100050F5 is not 
> working (I still have this xev when I type on the ampersand key + the 
> AltGr modifier:
> 
> KeyRelease event, serial 37, synthetic NO, window 0x4e00001,
>      root 0x168, subw 0x0, time 2120434, (-409,14), root:(142,282),
>      state 0x4090, keycode 10 (keysym 0xb9, onesuperior), same_screen YES,
>      XKeysymToKeycode returns keycode: 49
>      XLookupString gives 2 bytes: (c2 b9) "¹"
>      XFilterEvent returns: False
> 
> I do not see where the problem is now...
> 
> It could be helpful if some one has a key.
> 
> Thanks again and sorry for bothering you with that.
> 
> Best,
> 
> Pierre-Luc


More information about the xorg mailing list