diff options
author | Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk> | 2008-04-21 21:27:26 +0100 |
---|---|---|
committer | Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk> | 2008-04-21 21:27:26 +0100 |
commit | c705bab0f6efcb6937b7ccc2fb415e701878fddb (patch) | |
tree | ba0f29a7eb21def588909b2c1728737b4c9a7e4e | |
parent | 44e24a27bca023cf7b799f191fe6d52e12efbe5f (diff) | |
download | xorg-proto-x11proto-c705bab0f6efcb6937b7ccc2fb415e701878fddb.tar.gz |
Added comment to slightly discourage the definition of ever more Unicode keysyms
-rw-r--r-- | keysymdef.h | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/keysymdef.h b/keysymdef.h index 1d9a3c1..18753ee 100644 --- a/keysymdef.h +++ b/keysymdef.h @@ -56,7 +56,7 @@ SOFTWARE. * engraving) of a keyboard layout. This file assigns mnemonic macro * names for these keysyms. * - * This file is also compiled (by xc/lib/X11/util/makekeys.c) into + * This file is also compiled (by src/util/makekeys.c in libX11) into * hash tables that can be accessed with X11 library functions such as * XStringToKeysym() and XKeysymToString(). * @@ -93,17 +93,26 @@ SOFTWARE. * /^\#define XK_([a-zA-Z_0-9]+)\s+0x([0-9a-f]+)\s*\/\*\(U+([0-9A-F]{4,6}) (.*)\)\*\/\s*$/ * /^\#define XK_([a-zA-Z_0-9]+)\s+0x([0-9a-f]+)\s*(\/\*\s*(.*)\s*\*\/)?\s*$/ * + * Before adding new keysyms, please do consider the following: In + * addition to the keysym names defined in this file, the + * XStringToKeysym() and XKeysymToString() functions will also handle + * any keysym string of the form "U0020" to "U007E" and "U00A0" to + * "U10FFFF" for all possible Unicode characters. In other words, + * every possible Unicode character has already a keysym string + * defined algorithmically, even if it is not listed here. Therefore, + * defining an additional keysym macro is only necessary where a + * non-hexadecimal mnemonic name is needed, or where the new keysym + * does not represent any existing Unicode character. + * * When adding new keysyms to this file, do not forget to also update the - * mappings in xc/lib/X11/KeyBind.c and the protocol specification in - * xc/doc/specs/XProtocol/X11.keysyms. - */ - -/* - * Now that the Xorg code base is managed in Git repositories, the KeyBind.c - * and X11.keysyms files mentioned in the last comment block are located at: + * following: + * + * - the mappings in src/KeyBind.c in the repo + * git://anongit.freedesktop.org/xorg/lib/libX11 + * + * - the protocol specification in specs/XProtocol/X11.keysyms + * in the repo git://anongit.freedesktop.org/xorg/doc/xorg-docs * - * src/KeyBind.c in the repo git://anongit.freedesktop.org/xorg/lib/libX11 - * specs/XProtocol/X11.keysyms in the repo git://anongit.freedesktop.org/xorg/doc/xorg-docs */ #define XK_VoidSymbol 0xffffff /* Void symbol */ |