"Multi_key e =" doesn't give the euro sign, where as "Multi_key E =" does, the same goes for the yen and pound signs. This is especially confusing for the euro sign, since the Compose sequence with the small "e" does work in gtk apps, which have there own compose sequence handling. Also this is rather inconsistent since the american cent symbol does work with both small and capital C, so please add the sequences with non-capitals for the euro, yen and pound to: /usr/lib/X11/locale/en_US.UTF-8/Compose
I'm confused about this compose map as it doesn't seem to be complete or accurate. For example on fedora core 3 (x.org 6.8.1) it has the following for € $ grep -F € /usr/X11R6/lib/X11/locale/en_US.UTF-8/Compose <Multi_key> <C> <equal> : "€" EuroSign # EURO SIGN <Multi_key> <equal> <C> : "€" EuroSign # EURO SIGN <Multi_key> <E> <equal> : "€" EuroSign # EURO SIGN <Multi_key> <equal> <E> : "€" EuroSign # EURO SIGN Note my locale is en_US.UTF-8. This suggests what Jim describes. I.E. lowercase e or c would not work. However it's completely off the wall in that lower case e and upper case C are all that work for me. Hence the Compose file above is neither complete or correct. Other examples of not being correct are for “” and å As a side note the ‘’ characters which `xkbprint -ll 3 :0.0` suggests should be bound to AltGr-Shift-V and AltGr-Shift-B produce instead `' A general question I have is, is there a way to find the (compose) key combination for a particular character? Searching the above file is obviously not sufficient. p.s. I encountered these problems when writing: http://www.pixelbeat.org/docs/xkeyboard/
1) Not Jim, but I (Hans de Goede) said that captials work where as non capitals don't work for the euro sign. 2) xkbprint also says for my keyboard that it should generate ‘’, but just like in your case it generates `', which is correct for my plain us keyboard so I guess this is a bug in xkbprint. 3) What app are you using to test the compose sequences? Please note that gtk+ apps have there own compose sequence handling and thus don't use / honor the /usr/X11R6/lib/X11/locale/en_US.UTF-8/Compose file.
GTK has it's own compose handling!? That explains what I was seeing. xterm matches the Compose file, but gnome-terminal doesn't. Another stupid gtk thing I noticed is that you can enter Ctrl+Shift+20AC for the € character for e.g. Except you can't in gnome terminal because Ctrl+Shift+C is bound by default to copy selection. thanks for the info.
FYI: export GTK_IM_MODULE="xim" will make GTK use normal X compose sequences.
In GNOME you now use Ctrl-Shift-U <codepoint> in order to print a specific codepoint. Indeed, GTK+ has its own magic regarding compose sequences.
This looks fixed in current libX11 ~/src/freedesktop/src/libX11/nls/en_US.UTF-8 (master) $ grep Euro * Compose:<Multi_key> <C> <equal> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <equal> <C> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <c> <equal> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <equal> <c> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <E> <equal> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <equal> <E> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <e> <equal> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <equal> <e> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <Cyrillic_ES> <equal> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <equal> <Cyrillic_ES> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <Cyrillic_IE> <equal> : "€" EuroSign # EURO SIGN Compose:<Multi_key> <equal> <Cyrillic_IE> : "€" EuroSign # EURO SIGN Compose:<dead_currency> <e> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <C> <equal> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <equal> <C> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <c> <equal> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <equal> <c> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <E> <equal> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <equal> <E> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <e> <equal> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <equal> <e> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <Cyrillic_ES> <equal> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <equal> <Cyrillic_ES> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <Cyrillic_IE> <equal> : "€" EuroSign # EURO SIGN Compose.pre:<Multi_key> <equal> <Cyrillic_IE> : "€" EuroSign # EURO SIGN Compose.pre:<dead_currency> <e> : "€" EuroSign # EURO SIGN
I just tried on Fedora 16 beta (libX11-1.4.3), and this is resolved for the Euro sign, but it still does not work for the Pound (L + =) and Yen (Y + =) signs, both of which only work with the capital letter. And for inconsistency the doller cent sign (c + |) only works with the lowercase letter...
Patch sent to xorg-devel for review.
commit 4d78ad4bf6dcabca9bb5f84c770abfbb02d3f7a4 Author: Jeremy Huddleston <jeremyhu@apple.com> Date: Sun Sep 25 16:29:17 2011 -0700 Add additional compose sequences for pound sterling, yen, and cent (mixed case) https://bugs.freedesktop.org/show_bug.cgi?id=1013 Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.