Move dissectors to epan/dissectors directory.
[obnox/wireshark/wip.git] / epan / dissectors / packet-x11-keysymdef.h
1 /* packet-x11-keysymdef.h
2  * Key symbol definitions for X11 (XFree86 distribution: keysymdef.h)
3  * Copyright holders: Digital, The Open Group
4  * (see below for their copyright statement)
5  *
6  * $Id$
7  *
8  * Ethereal - Network traffic analyzer
9  * By Gerald Combs <gerald@ethereal.com>
10  * Copyright 1998 Gerald Combs
11  *
12  * This program is free software; you can redistribute it and/or
13  * modify it under the terms of the GNU General Public License
14  * as published by the Free Software Foundation; either version 2
15  * of the License, or (at your option) any later version.
16  * 
17  * This program is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20  * GNU General Public License for more details.
21  * 
22  * You should have received a copy of the GNU General Public License
23  * along with this program; if not, write to the Free Software
24  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25  */
26
27 /* $TOG: keysymdef.h /main/28 1998/05/22 16:18:01 kaleb $ */
28
29 /***********************************************************
30 Copyright 1987, 1994, 1998  The Open Group
31
32 All Rights Reserved.
33
34 The above copyright notice and this permission notice shall be included
35 in all copies or substantial portions of the Software.
36
37 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
38 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
39 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
40 IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
41 OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
42 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
43 OTHER DEALINGS IN THE SOFTWARE.
44
45 Except as contained in this notice, the name of The Open Group shall
46 not be used in advertising or otherwise to promote the sale, use or
47 other dealings in this Software without prior written authorization
48 from The Open Group.
49
50
51 Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts
52
53                         All Rights Reserved
54
55 Permission to use, copy, modify, and distribute this software and its
56 documentation for any purpose and without fee is hereby granted,
57 provided that the above copyright notice appear in all copies and that
58 both that copyright notice and this permission notice appear in
59 supporting documentation, and that the name of Digital not be
60 used in advertising or publicity pertaining to distribution of the
61 software without specific, written prior permission.
62
63 DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
64 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
65 DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
66 ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
67 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
68 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
69 SOFTWARE.
70
71 ******************************************************************/
72 /* $XFree86: xc/include/keysymdef.h,v 1.10 2000/10/27 18:30:46 dawes Exp $ */
73
74 #define XK_VoidSymbol           0xFFFFFF        /* void symbol */
75
76 #define XK_MISCELLANY
77 #ifdef XK_MISCELLANY
78 /*
79  * TTY Functions, cleverly chosen to map to ascii, for convenience of
80  * programming, but could have been arbitrary (at the cost of lookup
81  * tables in client code.
82  */
83
84 #define XK_BackSpace            0xFF08  /* back space, back char */
85 #define XK_Tab                  0xFF09
86 #define XK_Linefeed             0xFF0A  /* Linefeed, LF */
87 #define XK_Clear                0xFF0B
88 #define XK_Return               0xFF0D  /* Return, enter */
89 #define XK_Pause                0xFF13  /* Pause, hold */
90 #define XK_Scroll_Lock          0xFF14
91 #define XK_Sys_Req              0xFF15
92 #define XK_Escape               0xFF1B
93 #define XK_Delete               0xFFFF  /* Delete, rubout */
94
95
96
97 /* International & multi-key character composition */
98
99 #define XK_Multi_key            0xFF20  /* Multi-key character compose */
100 #define XK_Codeinput            0xFF37
101 #define XK_SingleCandidate      0xFF3C
102 #define XK_MultipleCandidate    0xFF3D
103 #define XK_PreviousCandidate    0xFF3E
104
105 /* Japanese keyboard support */
106
107 #define XK_Kanji                0xFF21  /* Kanji, Kanji convert */
108 #define XK_Muhenkan             0xFF22  /* Cancel Conversion */
109 #define XK_Henkan_Mode          0xFF23  /* Start/Stop Conversion */
110 #define XK_Henkan               0xFF23  /* Alias for Henkan_Mode */
111 #define XK_Romaji               0xFF24  /* to Romaji */
112 #define XK_Hiragana             0xFF25  /* to Hiragana */
113 #define XK_Katakana             0xFF26  /* to Katakana */
114 #define XK_Hiragana_Katakana    0xFF27  /* Hiragana/Katakana toggle */
115 #define XK_Zenkaku              0xFF28  /* to Zenkaku */
116 #define XK_Hankaku              0xFF29  /* to Hankaku */
117 #define XK_Zenkaku_Hankaku      0xFF2A  /* Zenkaku/Hankaku toggle */
118 #define XK_Touroku              0xFF2B  /* Add to Dictionary */
119 #define XK_Massyo               0xFF2C  /* Delete from Dictionary */
120 #define XK_Kana_Lock            0xFF2D  /* Kana Lock */
121 #define XK_Kana_Shift           0xFF2E  /* Kana Shift */
122 #define XK_Eisu_Shift           0xFF2F  /* Alphanumeric Shift */
123 #define XK_Eisu_toggle          0xFF30  /* Alphanumeric toggle */
124 #define XK_Kanji_Bangou         0xFF37  /* Codeinput */
125 #define XK_Zen_Koho             0xFF3D  /* Multiple/All Candidate(s) */
126 #define XK_Mae_Koho             0xFF3E  /* Previous Candidate */
127
128 /* 0xFF31 thru 0xFF3F are under XK_KOREAN */
129
130 /* Cursor control & motion */
131
132 #define XK_Home                 0xFF50
133 #define XK_Left                 0xFF51  /* Move left, left arrow */
134 #define XK_Up                   0xFF52  /* Move up, up arrow */
135 #define XK_Right                0xFF53  /* Move right, right arrow */
136 #define XK_Down                 0xFF54  /* Move down, down arrow */
137 #define XK_Prior                0xFF55  /* Prior, previous */
138 #define XK_Page_Up              0xFF55
139 #define XK_Next                 0xFF56  /* Next */
140 #define XK_Page_Down            0xFF56
141 #define XK_End                  0xFF57  /* EOL */
142 #define XK_Begin                0xFF58  /* BOL */
143
144
145 /* Misc Functions */
146
147 #define XK_Select               0xFF60  /* Select, mark */
148 #define XK_Print                0xFF61
149 #define XK_Execute              0xFF62  /* Execute, run, do */
150 #define XK_Insert               0xFF63  /* Insert, insert here */
151 #define XK_Undo                 0xFF65  /* Undo, oops */
152 #define XK_Redo                 0xFF66  /* redo, again */
153 #define XK_Menu                 0xFF67
154 #define XK_Find                 0xFF68  /* Find, search */
155 #define XK_Cancel               0xFF69  /* Cancel, stop, abort, exit */
156 #define XK_Help                 0xFF6A  /* Help */
157 #define XK_Break                0xFF6B
158 #define XK_Mode_switch          0xFF7E  /* Character set switch */
159 #define XK_script_switch        0xFF7E  /* Alias for mode_switch */
160 #define XK_Num_Lock             0xFF7F
161
162 /* Keypad Functions, keypad numbers cleverly chosen to map to ascii */
163
164 #define XK_KP_Space             0xFF80  /* space */
165 #define XK_KP_Tab               0xFF89
166 #define XK_KP_Enter             0xFF8D  /* enter */
167 #define XK_KP_F1                0xFF91  /* PF1, KP_A, ... */
168 #define XK_KP_F2                0xFF92
169 #define XK_KP_F3                0xFF93
170 #define XK_KP_F4                0xFF94
171 #define XK_KP_Home              0xFF95
172 #define XK_KP_Left              0xFF96
173 #define XK_KP_Up                0xFF97
174 #define XK_KP_Right             0xFF98
175 #define XK_KP_Down              0xFF99
176 #define XK_KP_Prior             0xFF9A
177 #define XK_KP_Page_Up           0xFF9A
178 #define XK_KP_Next              0xFF9B
179 #define XK_KP_Page_Down         0xFF9B
180 #define XK_KP_End               0xFF9C
181 #define XK_KP_Begin             0xFF9D
182 #define XK_KP_Insert            0xFF9E
183 #define XK_KP_Delete            0xFF9F
184 #define XK_KP_Equal             0xFFBD  /* equals */
185 #define XK_KP_Multiply          0xFFAA
186 #define XK_KP_Add               0xFFAB
187 #define XK_KP_Separator         0xFFAC  /* separator, often comma */
188 #define XK_KP_Subtract          0xFFAD
189 #define XK_KP_Decimal           0xFFAE
190 #define XK_KP_Divide            0xFFAF
191
192 #define XK_KP_0                 0xFFB0
193 #define XK_KP_1                 0xFFB1
194 #define XK_KP_2                 0xFFB2
195 #define XK_KP_3                 0xFFB3
196 #define XK_KP_4                 0xFFB4
197 #define XK_KP_5                 0xFFB5
198 #define XK_KP_6                 0xFFB6
199 #define XK_KP_7                 0xFFB7
200 #define XK_KP_8                 0xFFB8
201 #define XK_KP_9                 0xFFB9
202
203
204
205 /*
206  * Auxilliary Functions; note the duplicate definitions for left and right
207  * function keys;  Sun keyboards and a few other manufactures have such
208  * function key groups on the left and/or right sides of the keyboard.
209  * We've not found a keyboard with more than 35 function keys total.
210  */
211
212 #define XK_F1                   0xFFBE
213 #define XK_F2                   0xFFBF
214 #define XK_F3                   0xFFC0
215 #define XK_F4                   0xFFC1
216 #define XK_F5                   0xFFC2
217 #define XK_F6                   0xFFC3
218 #define XK_F7                   0xFFC4
219 #define XK_F8                   0xFFC5
220 #define XK_F9                   0xFFC6
221 #define XK_F10                  0xFFC7
222 #define XK_F11                  0xFFC8
223 #define XK_L1                   0xFFC8
224 #define XK_F12                  0xFFC9
225 #define XK_L2                   0xFFC9
226 #define XK_F13                  0xFFCA
227 #define XK_L3                   0xFFCA
228 #define XK_F14                  0xFFCB
229 #define XK_L4                   0xFFCB
230 #define XK_F15                  0xFFCC
231 #define XK_L5                   0xFFCC
232 #define XK_F16                  0xFFCD
233 #define XK_L6                   0xFFCD
234 #define XK_F17                  0xFFCE
235 #define XK_L7                   0xFFCE
236 #define XK_F18                  0xFFCF
237 #define XK_L8                   0xFFCF
238 #define XK_F19                  0xFFD0
239 #define XK_L9                   0xFFD0
240 #define XK_F20                  0xFFD1
241 #define XK_L10                  0xFFD1
242 #define XK_F21                  0xFFD2
243 #define XK_R1                   0xFFD2
244 #define XK_F22                  0xFFD3
245 #define XK_R2                   0xFFD3
246 #define XK_F23                  0xFFD4
247 #define XK_R3                   0xFFD4
248 #define XK_F24                  0xFFD5
249 #define XK_R4                   0xFFD5
250 #define XK_F25                  0xFFD6
251 #define XK_R5                   0xFFD6
252 #define XK_F26                  0xFFD7
253 #define XK_R6                   0xFFD7
254 #define XK_F27                  0xFFD8
255 #define XK_R7                   0xFFD8
256 #define XK_F28                  0xFFD9
257 #define XK_R8                   0xFFD9
258 #define XK_F29                  0xFFDA
259 #define XK_R9                   0xFFDA
260 #define XK_F30                  0xFFDB
261 #define XK_R10                  0xFFDB
262 #define XK_F31                  0xFFDC
263 #define XK_R11                  0xFFDC
264 #define XK_F32                  0xFFDD
265 #define XK_R12                  0xFFDD
266 #define XK_F33                  0xFFDE
267 #define XK_R13                  0xFFDE
268 #define XK_F34                  0xFFDF
269 #define XK_R14                  0xFFDF
270 #define XK_F35                  0xFFE0
271 #define XK_R15                  0xFFE0
272
273 /* Modifiers */
274
275 #define XK_Shift_L              0xFFE1  /* Left shift */
276 #define XK_Shift_R              0xFFE2  /* Right shift */
277 #define XK_Control_L            0xFFE3  /* Left control */
278 #define XK_Control_R            0xFFE4  /* Right control */
279 #define XK_Caps_Lock            0xFFE5  /* Caps lock */
280 #define XK_Shift_Lock           0xFFE6  /* Shift lock */
281
282 #define XK_Meta_L               0xFFE7  /* Left meta */
283 #define XK_Meta_R               0xFFE8  /* Right meta */
284 #define XK_Alt_L                0xFFE9  /* Left alt */
285 #define XK_Alt_R                0xFFEA  /* Right alt */
286 #define XK_Super_L              0xFFEB  /* Left super */
287 #define XK_Super_R              0xFFEC  /* Right super */
288 #define XK_Hyper_L              0xFFED  /* Left hyper */
289 #define XK_Hyper_R              0xFFEE  /* Right hyper */
290 #endif /* XK_MISCELLANY */
291
292 /*
293  * ISO 9995 Function and Modifier Keys
294  * Byte 3 = 0xFE
295  */
296
297 #define XK_XKB_KEYS
298 #ifdef XK_XKB_KEYS
299 #define XK_ISO_Lock                                     0xFE01
300 #define XK_ISO_Level2_Latch                             0xFE02
301 #define XK_ISO_Level3_Shift                             0xFE03
302 #define XK_ISO_Level3_Latch                             0xFE04
303 #define XK_ISO_Level3_Lock                              0xFE05
304 #define XK_ISO_Group_Shift              0xFF7E  /* Alias for mode_switch */
305 #define XK_ISO_Group_Latch                              0xFE06
306 #define XK_ISO_Group_Lock                               0xFE07
307 #define XK_ISO_Next_Group                               0xFE08
308 #define XK_ISO_Next_Group_Lock                          0xFE09
309 #define XK_ISO_Prev_Group                               0xFE0A
310 #define XK_ISO_Prev_Group_Lock                          0xFE0B
311 #define XK_ISO_First_Group                              0xFE0C
312 #define XK_ISO_First_Group_Lock                         0xFE0D
313 #define XK_ISO_Last_Group                               0xFE0E
314 #define XK_ISO_Last_Group_Lock                          0xFE0F
315
316 #define XK_ISO_Left_Tab                                 0xFE20
317 #define XK_ISO_Move_Line_Up                             0xFE21
318 #define XK_ISO_Move_Line_Down                           0xFE22
319 #define XK_ISO_Partial_Line_Up                          0xFE23
320 #define XK_ISO_Partial_Line_Down                        0xFE24
321 #define XK_ISO_Partial_Space_Left                       0xFE25
322 #define XK_ISO_Partial_Space_Right                      0xFE26
323 #define XK_ISO_Set_Margin_Left                          0xFE27
324 #define XK_ISO_Set_Margin_Right                         0xFE28
325 #define XK_ISO_Release_Margin_Left                      0xFE29
326 #define XK_ISO_Release_Margin_Right                     0xFE2A
327 #define XK_ISO_Release_Both_Margins                     0xFE2B
328 #define XK_ISO_Fast_Cursor_Left                         0xFE2C
329 #define XK_ISO_Fast_Cursor_Right                        0xFE2D
330 #define XK_ISO_Fast_Cursor_Up                           0xFE2E
331 #define XK_ISO_Fast_Cursor_Down                         0xFE2F
332 #define XK_ISO_Continuous_Underline                     0xFE30
333 #define XK_ISO_Discontinuous_Underline                  0xFE31
334 #define XK_ISO_Emphasize                                0xFE32
335 #define XK_ISO_Center_Object                            0xFE33
336 #define XK_ISO_Enter                                    0xFE34
337
338 #define XK_dead_grave                                   0xFE50
339 #define XK_dead_acute                                   0xFE51
340 #define XK_dead_circumflex                              0xFE52
341 #define XK_dead_tilde                                   0xFE53
342 #define XK_dead_macron                                  0xFE54
343 #define XK_dead_breve                                   0xFE55
344 #define XK_dead_abovedot                                0xFE56
345 #define XK_dead_diaeresis                               0xFE57
346 #define XK_dead_abovering                               0xFE58
347 #define XK_dead_doubleacute                             0xFE59
348 #define XK_dead_caron                                   0xFE5A
349 #define XK_dead_cedilla                                 0xFE5B
350 #define XK_dead_ogonek                                  0xFE5C
351 #define XK_dead_iota                                    0xFE5D
352 #define XK_dead_voiced_sound                            0xFE5E
353 #define XK_dead_semivoiced_sound                        0xFE5F
354 #define XK_dead_belowdot                                0xFE60
355 #define XK_dead_hook                                    0xFE61
356 #define XK_dead_horn                                    0xFE62
357
358 #define XK_First_Virtual_Screen                         0xFED0
359 #define XK_Prev_Virtual_Screen                          0xFED1
360 #define XK_Next_Virtual_Screen                          0xFED2
361 #define XK_Last_Virtual_Screen                          0xFED4
362 #define XK_Terminate_Server                             0xFED5
363
364 #define XK_AccessX_Enable                               0xFE70
365 #define XK_AccessX_Feedback_Enable                      0xFE71
366 #define XK_RepeatKeys_Enable                            0xFE72
367 #define XK_SlowKeys_Enable                              0xFE73
368 #define XK_BounceKeys_Enable                            0xFE74
369 #define XK_StickyKeys_Enable                            0xFE75
370 #define XK_MouseKeys_Enable                             0xFE76
371 #define XK_MouseKeys_Accel_Enable                       0xFE77
372 #define XK_Overlay1_Enable                              0xFE78
373 #define XK_Overlay2_Enable                              0xFE79
374 #define XK_AudibleBell_Enable                           0xFE7A
375
376 #define XK_Pointer_Left                                 0xFEE0
377 #define XK_Pointer_Right                                0xFEE1
378 #define XK_Pointer_Up                                   0xFEE2
379 #define XK_Pointer_Down                                 0xFEE3
380 #define XK_Pointer_UpLeft                               0xFEE4
381 #define XK_Pointer_UpRight                              0xFEE5
382 #define XK_Pointer_DownLeft                             0xFEE6
383 #define XK_Pointer_DownRight                            0xFEE7
384 #define XK_Pointer_Button_Dflt                          0xFEE8
385 #define XK_Pointer_Button1                              0xFEE9
386 #define XK_Pointer_Button2                              0xFEEA
387 #define XK_Pointer_Button3                              0xFEEB
388 #define XK_Pointer_Button4                              0xFEEC
389 #define XK_Pointer_Button5                              0xFEED
390 #define XK_Pointer_DblClick_Dflt                        0xFEEE
391 #define XK_Pointer_DblClick1                            0xFEEF
392 #define XK_Pointer_DblClick2                            0xFEF0
393 #define XK_Pointer_DblClick3                            0xFEF1
394 #define XK_Pointer_DblClick4                            0xFEF2
395 #define XK_Pointer_DblClick5                            0xFEF3
396 #define XK_Pointer_Drag_Dflt                            0xFEF4
397 #define XK_Pointer_Drag1                                0xFEF5
398 #define XK_Pointer_Drag2                                0xFEF6
399 #define XK_Pointer_Drag3                                0xFEF7
400 #define XK_Pointer_Drag4                                0xFEF8
401 #define XK_Pointer_Drag5                                0xFEFD
402
403 #define XK_Pointer_EnableKeys                           0xFEF9
404 #define XK_Pointer_Accelerate                           0xFEFA
405 #define XK_Pointer_DfltBtnNext                          0xFEFB
406 #define XK_Pointer_DfltBtnPrev                          0xFEFC
407
408 #endif
409
410 /*
411  * 3270 Terminal Keys
412  * Byte 3 = 0xFD
413  */
414
415 #define XK_3270
416 #ifdef XK_3270
417 #define XK_3270_Duplicate      0xFD01
418 #define XK_3270_FieldMark      0xFD02
419 #define XK_3270_Right2         0xFD03
420 #define XK_3270_Left2          0xFD04
421 #define XK_3270_BackTab        0xFD05
422 #define XK_3270_EraseEOF       0xFD06
423 #define XK_3270_EraseInput     0xFD07
424 #define XK_3270_Reset          0xFD08
425 #define XK_3270_Quit           0xFD09
426 #define XK_3270_PA1            0xFD0A
427 #define XK_3270_PA2            0xFD0B
428 #define XK_3270_PA3            0xFD0C
429 #define XK_3270_Test           0xFD0D
430 #define XK_3270_Attn           0xFD0E
431 #define XK_3270_CursorBlink    0xFD0F
432 #define XK_3270_AltCursor      0xFD10
433 #define XK_3270_KeyClick       0xFD11
434 #define XK_3270_Jump           0xFD12
435 #define XK_3270_Ident          0xFD13
436 #define XK_3270_Rule           0xFD14
437 #define XK_3270_Copy           0xFD15
438 #define XK_3270_Play           0xFD16
439 #define XK_3270_Setup          0xFD17
440 #define XK_3270_Record         0xFD18
441 #define XK_3270_ChangeScreen   0xFD19
442 #define XK_3270_DeleteWord     0xFD1A
443 #define XK_3270_ExSelect       0xFD1B
444 #define XK_3270_CursorSelect   0xFD1C
445 #define XK_3270_PrintScreen    0xFD1D
446 #define XK_3270_Enter          0xFD1E
447 #endif
448
449 /*
450  *  Latin 1
451  *  Byte 3 = 0
452  */
453 #define XK_LATIN1
454 #ifdef XK_LATIN1
455 #define XK_space               0x020
456 #define XK_exclam              0x021
457 #define XK_quotedbl            0x022
458 #define XK_numbersign          0x023
459 #define XK_dollar              0x024
460 #define XK_percent             0x025
461 #define XK_ampersand           0x026
462 #define XK_apostrophe          0x027
463 #define XK_quoteright          0x027    /* deprecated */
464 #define XK_parenleft           0x028
465 #define XK_parenright          0x029
466 #define XK_asterisk            0x02a
467 #define XK_plus                0x02b
468 #define XK_comma               0x02c
469 #define XK_minus               0x02d
470 #define XK_period              0x02e
471 #define XK_slash               0x02f
472 #define XK_0                   0x030
473 #define XK_1                   0x031
474 #define XK_2                   0x032
475 #define XK_3                   0x033
476 #define XK_4                   0x034
477 #define XK_5                   0x035
478 #define XK_6                   0x036
479 #define XK_7                   0x037
480 #define XK_8                   0x038
481 #define XK_9                   0x039
482 #define XK_colon               0x03a
483 #define XK_semicolon           0x03b
484 #define XK_less                0x03c
485 #define XK_equal               0x03d
486 #define XK_greater             0x03e
487 #define XK_question            0x03f
488 #define XK_at                  0x040
489 #define XK_A                   0x041
490 #define XK_B                   0x042
491 #define XK_C                   0x043
492 #define XK_D                   0x044
493 #define XK_E                   0x045
494 #define XK_F                   0x046
495 #define XK_G                   0x047
496 #define XK_H                   0x048
497 #define XK_I                   0x049
498 #define XK_J                   0x04a
499 #define XK_K                   0x04b
500 #define XK_L                   0x04c
501 #define XK_M                   0x04d
502 #define XK_N                   0x04e
503 #define XK_O                   0x04f
504 #define XK_P                   0x050
505 #define XK_Q                   0x051
506 #define XK_R                   0x052
507 #define XK_S                   0x053
508 #define XK_T                   0x054
509 #define XK_U                   0x055
510 #define XK_V                   0x056
511 #define XK_W                   0x057
512 #define XK_X                   0x058
513 #define XK_Y                   0x059
514 #define XK_Z                   0x05a
515 #define XK_bracketleft         0x05b
516 #define XK_backslash           0x05c
517 #define XK_bracketright        0x05d
518 #define XK_asciicircum         0x05e
519 #define XK_underscore          0x05f
520 #define XK_grave               0x060
521 #define XK_quoteleft           0x060    /* deprecated */
522 #define XK_a                   0x061
523 #define XK_b                   0x062
524 #define XK_c                   0x063
525 #define XK_d                   0x064
526 #define XK_e                   0x065
527 #define XK_f                   0x066
528 #define XK_g                   0x067
529 #define XK_h                   0x068
530 #define XK_i                   0x069
531 #define XK_j                   0x06a
532 #define XK_k                   0x06b
533 #define XK_l                   0x06c
534 #define XK_m                   0x06d
535 #define XK_n                   0x06e
536 #define XK_o                   0x06f
537 #define XK_p                   0x070
538 #define XK_q                   0x071
539 #define XK_r                   0x072
540 #define XK_s                   0x073
541 #define XK_t                   0x074
542 #define XK_u                   0x075
543 #define XK_v                   0x076
544 #define XK_w                   0x077
545 #define XK_x                   0x078
546 #define XK_y                   0x079
547 #define XK_z                   0x07a
548 #define XK_braceleft           0x07b
549 #define XK_bar                 0x07c
550 #define XK_braceright          0x07d
551 #define XK_asciitilde          0x07e
552
553 #define XK_nobreakspace        0x0a0
554 #define XK_exclamdown          0x0a1
555 #define XK_cent                0x0a2
556 #define XK_sterling            0x0a3
557 #define XK_currency            0x0a4
558 #define XK_yen                 0x0a5
559 #define XK_brokenbar           0x0a6
560 #define XK_section             0x0a7
561 #define XK_diaeresis           0x0a8
562 #define XK_copyright           0x0a9
563 #define XK_ordfeminine         0x0aa
564 #define XK_guillemotleft       0x0ab    /* left angle quotation mark */
565 #define XK_notsign             0x0ac
566 #define XK_hyphen              0x0ad
567 #define XK_registered          0x0ae
568 #define XK_macron              0x0af
569 #define XK_degree              0x0b0
570 #define XK_plusminus           0x0b1
571 #define XK_twosuperior         0x0b2
572 #define XK_threesuperior       0x0b3
573 #define XK_acute               0x0b4
574 #define XK_mu                  0x0b5
575 #define XK_paragraph           0x0b6
576 #define XK_periodcentered      0x0b7
577 #define XK_cedilla             0x0b8
578 #define XK_onesuperior         0x0b9
579 #define XK_masculine           0x0ba
580 #define XK_guillemotright      0x0bb    /* right angle quotation mark */
581 #define XK_onequarter          0x0bc
582 #define XK_onehalf             0x0bd
583 #define XK_threequarters       0x0be
584 #define XK_questiondown        0x0bf
585 #define XK_Agrave              0x0c0
586 #define XK_Aacute              0x0c1
587 #define XK_Acircumflex         0x0c2
588 #define XK_Atilde              0x0c3
589 #define XK_Adiaeresis          0x0c4
590 #define XK_Aring               0x0c5
591 #define XK_AE                  0x0c6
592 #define XK_Ccedilla            0x0c7
593 #define XK_Egrave              0x0c8
594 #define XK_Eacute              0x0c9
595 #define XK_Ecircumflex         0x0ca
596 #define XK_Ediaeresis          0x0cb
597 #define XK_Igrave              0x0cc
598 #define XK_Iacute              0x0cd
599 #define XK_Icircumflex         0x0ce
600 #define XK_Idiaeresis          0x0cf
601 #define XK_ETH                 0x0d0
602 #define XK_Eth                 0x0d0    /* deprecated */
603 #define XK_Ntilde              0x0d1
604 #define XK_Ograve              0x0d2
605 #define XK_Oacute              0x0d3
606 #define XK_Ocircumflex         0x0d4
607 #define XK_Otilde              0x0d5
608 #define XK_Odiaeresis          0x0d6
609 #define XK_multiply            0x0d7
610 #define XK_Ooblique            0x0d8
611 #define XK_Oslash              XK_Ooblique
612 #define XK_Ugrave              0x0d9
613 #define XK_Uacute              0x0da
614 #define XK_Ucircumflex         0x0db
615 #define XK_Udiaeresis          0x0dc
616 #define XK_Yacute              0x0dd
617 #define XK_THORN               0x0de
618 #define XK_Thorn               0x0de    /* deprecated */
619 #define XK_ssharp              0x0df
620 #define XK_agrave              0x0e0
621 #define XK_aacute              0x0e1
622 #define XK_acircumflex         0x0e2
623 #define XK_atilde              0x0e3
624 #define XK_adiaeresis          0x0e4
625 #define XK_aring               0x0e5
626 #define XK_ae                  0x0e6
627 #define XK_ccedilla            0x0e7
628 #define XK_egrave              0x0e8
629 #define XK_eacute              0x0e9
630 #define XK_ecircumflex         0x0ea
631 #define XK_ediaeresis          0x0eb
632 #define XK_igrave              0x0ec
633 #define XK_iacute              0x0ed
634 #define XK_icircumflex         0x0ee
635 #define XK_idiaeresis          0x0ef
636 #define XK_eth                 0x0f0
637 #define XK_ntilde              0x0f1
638 #define XK_ograve              0x0f2
639 #define XK_oacute              0x0f3
640 #define XK_ocircumflex         0x0f4
641 #define XK_otilde              0x0f5
642 #define XK_odiaeresis          0x0f6
643 #define XK_division            0x0f7
644 #define XK_oslash              0x0f8
645 #define XK_ooblique            XK_oslash
646 #define XK_ugrave              0x0f9
647 #define XK_uacute              0x0fa
648 #define XK_ucircumflex         0x0fb
649 #define XK_udiaeresis          0x0fc
650 #define XK_yacute              0x0fd
651 #define XK_thorn               0x0fe
652 #define XK_ydiaeresis          0x0ff
653 #endif /* XK_LATIN1 */
654
655 /*
656  *   Latin 2
657  *   Byte 3 = 1
658  */
659
660 #define XK_LATIN2
661 #ifdef XK_LATIN2
662 #define XK_Aogonek             0x1a1
663 #define XK_breve               0x1a2
664 #define XK_Lstroke             0x1a3
665 #define XK_Lcaron              0x1a5
666 #define XK_Sacute              0x1a6
667 #define XK_Scaron              0x1a9
668 #define XK_Scedilla            0x1aa
669 #define XK_Tcaron              0x1ab
670 #define XK_Zacute              0x1ac
671 #define XK_Zcaron              0x1ae
672 #define XK_Zabovedot           0x1af
673 #define XK_aogonek             0x1b1
674 #define XK_ogonek              0x1b2
675 #define XK_lstroke             0x1b3
676 #define XK_lcaron              0x1b5
677 #define XK_sacute              0x1b6
678 #define XK_caron               0x1b7
679 #define XK_scaron              0x1b9
680 #define XK_scedilla            0x1ba
681 #define XK_tcaron              0x1bb
682 #define XK_zacute              0x1bc
683 #define XK_doubleacute         0x1bd
684 #define XK_zcaron              0x1be
685 #define XK_zabovedot           0x1bf
686 #define XK_Racute              0x1c0
687 #define XK_Abreve              0x1c3
688 #define XK_Lacute              0x1c5
689 #define XK_Cacute              0x1c6
690 #define XK_Ccaron              0x1c8
691 #define XK_Eogonek             0x1ca
692 #define XK_Ecaron              0x1cc
693 #define XK_Dcaron              0x1cf
694 #define XK_Dstroke             0x1d0
695 #define XK_Nacute              0x1d1
696 #define XK_Ncaron              0x1d2
697 #define XK_Odoubleacute        0x1d5
698 #define XK_Rcaron              0x1d8
699 #define XK_Uring               0x1d9
700 #define XK_Udoubleacute        0x1db
701 #define XK_Tcedilla            0x1de
702 #define XK_racute              0x1e0
703 #define XK_abreve              0x1e3
704 #define XK_lacute              0x1e5
705 #define XK_cacute              0x1e6
706 #define XK_ccaron              0x1e8
707 #define XK_eogonek             0x1ea
708 #define XK_ecaron              0x1ec
709 #define XK_dcaron              0x1ef
710 #define XK_dstroke             0x1f0
711 #define XK_nacute              0x1f1
712 #define XK_ncaron              0x1f2
713 #define XK_odoubleacute        0x1f5
714 #define XK_udoubleacute        0x1fb
715 #define XK_rcaron              0x1f8
716 #define XK_uring               0x1f9
717 #define XK_tcedilla            0x1fe
718 #define XK_abovedot            0x1ff
719 #endif /* XK_LATIN2 */
720
721 /*
722  *   Latin 3
723  *   Byte 3 = 2
724  */
725
726 #define XK_LATIN3
727 #ifdef XK_LATIN3
728 #define XK_Hstroke             0x2a1
729 #define XK_Hcircumflex         0x2a6
730 #define XK_Iabovedot           0x2a9
731 #define XK_Gbreve              0x2ab
732 #define XK_Jcircumflex         0x2ac
733 #define XK_hstroke             0x2b1
734 #define XK_hcircumflex         0x2b6
735 #define XK_idotless            0x2b9
736 #define XK_gbreve              0x2bb
737 #define XK_jcircumflex         0x2bc
738 #define XK_Cabovedot           0x2c5
739 #define XK_Ccircumflex         0x2c6
740 #define XK_Gabovedot           0x2d5
741 #define XK_Gcircumflex         0x2d8
742 #define XK_Ubreve              0x2dd
743 #define XK_Scircumflex         0x2de
744 #define XK_cabovedot           0x2e5
745 #define XK_ccircumflex         0x2e6
746 #define XK_gabovedot           0x2f5
747 #define XK_gcircumflex         0x2f8
748 #define XK_ubreve              0x2fd
749 #define XK_scircumflex         0x2fe
750 #endif /* XK_LATIN3 */
751
752
753 /*
754  *   Latin 4
755  *   Byte 3 = 3
756  */
757
758 #define XK_LATIN4
759 #ifdef XK_LATIN4
760 #define XK_kra                 0x3a2
761 #define XK_kappa               0x3a2    /* deprecated */
762 #define XK_Rcedilla            0x3a3
763 #define XK_Itilde              0x3a5
764 #define XK_Lcedilla            0x3a6
765 #define XK_Emacron             0x3aa
766 #define XK_Gcedilla            0x3ab
767 #define XK_Tslash              0x3ac
768 #define XK_rcedilla            0x3b3
769 #define XK_itilde              0x3b5
770 #define XK_lcedilla            0x3b6
771 #define XK_emacron             0x3ba
772 #define XK_gcedilla            0x3bb
773 #define XK_tslash              0x3bc
774 #define XK_ENG                 0x3bd
775 #define XK_eng                 0x3bf
776 #define XK_Amacron             0x3c0
777 #define XK_Iogonek             0x3c7
778 #define XK_Eabovedot           0x3cc
779 #define XK_Imacron             0x3cf
780 #define XK_Ncedilla            0x3d1
781 #define XK_Omacron             0x3d2
782 #define XK_Kcedilla            0x3d3
783 #define XK_Uogonek             0x3d9
784 #define XK_Utilde              0x3dd
785 #define XK_Umacron             0x3de
786 #define XK_amacron             0x3e0
787 #define XK_iogonek             0x3e7
788 #define XK_eabovedot           0x3ec
789 #define XK_imacron             0x3ef
790 #define XK_ncedilla            0x3f1
791 #define XK_omacron             0x3f2
792 #define XK_kcedilla            0x3f3
793 #define XK_uogonek             0x3f9
794 #define XK_utilde              0x3fd
795 #define XK_umacron             0x3fe
796 #endif /* XK_LATIN4 */
797
798 /*
799  * Latin-8
800  * Byte 3 = 18
801  */
802 #define XK_LATIN8
803 #ifdef XK_LATIN8
804 #define XK_Babovedot           0x12a1
805 #define XK_babovedot           0x12a2
806 #define XK_Dabovedot           0x12a6
807 #define XK_Wgrave              0x12a8
808 #define XK_Wacute              0x12aa
809 #define XK_dabovedot           0x12ab
810 #define XK_Ygrave              0x12ac
811 #define XK_Fabovedot           0x12b0
812 #define XK_fabovedot           0x12b1
813 #define XK_Mabovedot           0x12b4
814 #define XK_mabovedot           0x12b5
815 #define XK_Pabovedot           0x12b7
816 #define XK_wgrave              0x12b8
817 #define XK_pabovedot           0x12b9
818 #define XK_wacute              0x12ba
819 #define XK_Sabovedot           0x12bb
820 #define XK_ygrave              0x12bc
821 #define XK_Wdiaeresis          0x12bd
822 #define XK_wdiaeresis          0x12be
823 #define XK_sabovedot           0x12bf
824 #define XK_Wcircumflex         0x12d0
825 #define XK_Tabovedot           0x12d7
826 #define XK_Ycircumflex         0x12de
827 #define XK_wcircumflex         0x12f0
828 #define XK_tabovedot           0x12f7
829 #define XK_ycircumflex         0x12fe
830 #endif /* XK_LATIN8 */
831
832 /*
833  * Latin-9 (a.k.a. Latin-0)
834  * Byte 3 = 19
835  */
836
837 #define XK_LATIN9
838 #ifdef XK_LATIN9
839 #define XK_OE                  0x13bc
840 #define XK_oe                  0x13bd
841 #define XK_Ydiaeresis          0x13be
842 #endif /* XK_LATIN9 */
843
844 /*
845  * Katakana
846  * Byte 3 = 4
847  */
848
849 #define XK_KATAKANA
850 #ifdef XK_KATAKANA
851 #define XK_overline                                    0x47e
852 #define XK_kana_fullstop                               0x4a1
853 #define XK_kana_openingbracket                         0x4a2
854 #define XK_kana_closingbracket                         0x4a3
855 #define XK_kana_comma                                  0x4a4
856 #define XK_kana_conjunctive                            0x4a5
857 #define XK_kana_middledot                              0x4a5  /* deprecated */
858 #define XK_kana_WO                                     0x4a6
859 #define XK_kana_a                                      0x4a7
860 #define XK_kana_i                                      0x4a8
861 #define XK_kana_u                                      0x4a9
862 #define XK_kana_e                                      0x4aa
863 #define XK_kana_o                                      0x4ab
864 #define XK_kana_ya                                     0x4ac
865 #define XK_kana_yu                                     0x4ad
866 #define XK_kana_yo                                     0x4ae
867 #define XK_kana_tsu                                    0x4af
868 #define XK_kana_tu                                     0x4af  /* deprecated */
869 #define XK_prolongedsound                              0x4b0
870 #define XK_kana_A                                      0x4b1
871 #define XK_kana_I                                      0x4b2
872 #define XK_kana_U                                      0x4b3
873 #define XK_kana_E                                      0x4b4
874 #define XK_kana_O                                      0x4b5
875 #define XK_kana_KA                                     0x4b6
876 #define XK_kana_KI                                     0x4b7
877 #define XK_kana_KU                                     0x4b8
878 #define XK_kana_KE                                     0x4b9
879 #define XK_kana_KO                                     0x4ba
880 #define XK_kana_SA                                     0x4bb
881 #define XK_kana_SHI                                    0x4bc
882 #define XK_kana_SU                                     0x4bd
883 #define XK_kana_SE                                     0x4be
884 #define XK_kana_SO                                     0x4bf
885 #define XK_kana_TA                                     0x4c0
886 #define XK_kana_CHI                                    0x4c1
887 #define XK_kana_TI                                     0x4c1  /* deprecated */
888 #define XK_kana_TSU                                    0x4c2
889 #define XK_kana_TU                                     0x4c2  /* deprecated */
890 #define XK_kana_TE                                     0x4c3
891 #define XK_kana_TO                                     0x4c4
892 #define XK_kana_NA                                     0x4c5
893 #define XK_kana_NI                                     0x4c6
894 #define XK_kana_NU                                     0x4c7
895 #define XK_kana_NE                                     0x4c8
896 #define XK_kana_NO                                     0x4c9
897 #define XK_kana_HA                                     0x4ca
898 #define XK_kana_HI                                     0x4cb
899 #define XK_kana_FU                                     0x4cc
900 #define XK_kana_HU                                     0x4cc  /* deprecated */
901 #define XK_kana_HE                                     0x4cd
902 #define XK_kana_HO                                     0x4ce
903 #define XK_kana_MA                                     0x4cf
904 #define XK_kana_MI                                     0x4d0
905 #define XK_kana_MU                                     0x4d1
906 #define XK_kana_ME                                     0x4d2
907 #define XK_kana_MO                                     0x4d3
908 #define XK_kana_YA                                     0x4d4
909 #define XK_kana_YU                                     0x4d5
910 #define XK_kana_YO                                     0x4d6
911 #define XK_kana_RA                                     0x4d7
912 #define XK_kana_RI                                     0x4d8
913 #define XK_kana_RU                                     0x4d9
914 #define XK_kana_RE                                     0x4da
915 #define XK_kana_RO                                     0x4db
916 #define XK_kana_WA                                     0x4dc
917 #define XK_kana_N                                      0x4dd
918 #define XK_voicedsound                                 0x4de
919 #define XK_semivoicedsound                             0x4df
920 #define XK_kana_switch          0xFF7E  /* Alias for mode_switch */
921 #endif /* XK_KATAKANA */
922
923 /*
924  *  Arabic
925  *  Byte 3 = 5
926  */
927
928 #define XK_ARABIC
929 #ifdef XK_ARABIC
930 #define XK_Farsi_0                                     0x590
931 #define XK_Farsi_1                                     0x591
932 #define XK_Farsi_2                                     0x592
933 #define XK_Farsi_3                                     0x593
934 #define XK_Farsi_4                                     0x594
935 #define XK_Farsi_5                                     0x595
936 #define XK_Farsi_6                                     0x596
937 #define XK_Farsi_7                                     0x597
938 #define XK_Farsi_8                                     0x598
939 #define XK_Farsi_9                                     0x599
940 #define XK_Arabic_percent                              0x5a5
941 #define XK_Arabic_superscript_alef                     0x5a6
942 #define XK_Arabic_tteh                                 0x5a7
943 #define XK_Arabic_peh                                  0x5a8
944 #define XK_Arabic_tcheh                                0x5a9
945 #define XK_Arabic_ddal                                 0x5aa
946 #define XK_Arabic_rreh                                 0x5ab
947 #define XK_Arabic_comma                                0x5ac
948 #define XK_Arabic_fullstop                             0x5ae
949 #define XK_Arabic_0                                    0x5b0
950 #define XK_Arabic_1                                    0x5b1
951 #define XK_Arabic_2                                    0x5b2
952 #define XK_Arabic_3                                    0x5b3
953 #define XK_Arabic_4                                    0x5b4
954 #define XK_Arabic_5                                    0x5b5
955 #define XK_Arabic_6                                    0x5b6
956 #define XK_Arabic_7                                    0x5b7
957 #define XK_Arabic_8                                    0x5b8
958 #define XK_Arabic_9                                    0x5b9
959 #define XK_Arabic_semicolon                            0x5bb
960 #define XK_Arabic_question_mark                        0x5bf
961 #define XK_Arabic_hamza                                0x5c1
962 #define XK_Arabic_maddaonalef                          0x5c2
963 #define XK_Arabic_hamzaonalef                          0x5c3
964 #define XK_Arabic_hamzaonwaw                           0x5c4
965 #define XK_Arabic_hamzaunderalef                       0x5c5
966 #define XK_Arabic_hamzaonyeh                           0x5c6
967 #define XK_Arabic_alef                                 0x5c7
968 #define XK_Arabic_beh                                  0x5c8
969 #define XK_Arabic_tehmarbuta                           0x5c9
970 #define XK_Arabic_teh                                  0x5ca
971 #define XK_Arabic_theh                                 0x5cb
972 #define XK_Arabic_jeem                                 0x5cc
973 #define XK_Arabic_hah                                  0x5cd
974 #define XK_Arabic_khah                                 0x5ce
975 #define XK_Arabic_dal                                  0x5cf
976 #define XK_Arabic_thal                                 0x5d0
977 #define XK_Arabic_ra                                   0x5d1
978 #define XK_Arabic_zain                                 0x5d2
979 #define XK_Arabic_seen                                 0x5d3
980 #define XK_Arabic_sheen                                0x5d4
981 #define XK_Arabic_sad                                  0x5d5
982 #define XK_Arabic_dad                                  0x5d6
983 #define XK_Arabic_tah                                  0x5d7
984 #define XK_Arabic_zah                                  0x5d8
985 #define XK_Arabic_ain                                  0x5d9
986 #define XK_Arabic_ghain                                0x5da
987 #define XK_Arabic_tatweel                              0x5e0
988 #define XK_Arabic_feh                                  0x5e1
989 #define XK_Arabic_qaf                                  0x5e2
990 #define XK_Arabic_kaf                                  0x5e3
991 #define XK_Arabic_lam                                  0x5e4
992 #define XK_Arabic_meem                                 0x5e5
993 #define XK_Arabic_noon                                 0x5e6
994 #define XK_Arabic_ha                                   0x5e7
995 #define XK_Arabic_heh                                  0x5e7  /* deprecated */
996 #define XK_Arabic_waw                                  0x5e8
997 #define XK_Arabic_alefmaksura                          0x5e9
998 #define XK_Arabic_yeh                                  0x5ea
999 #define XK_Arabic_fathatan                             0x5eb
1000 #define XK_Arabic_dammatan                             0x5ec
1001 #define XK_Arabic_kasratan                             0x5ed
1002 #define XK_Arabic_fatha                                0x5ee
1003 #define XK_Arabic_damma                                0x5ef
1004 #define XK_Arabic_kasra                                0x5f0
1005 #define XK_Arabic_shadda                               0x5f1
1006 #define XK_Arabic_sukun                                0x5f2
1007 #define XK_Arabic_madda_above                          0x5f3
1008 #define XK_Arabic_hamza_above                          0x5f4
1009 #define XK_Arabic_hamza_below                          0x5f5
1010 #define XK_Arabic_jeh                                  0x5f6
1011 #define XK_Arabic_veh                                  0x5f7
1012 #define XK_Arabic_keheh                                0x5f8
1013 #define XK_Arabic_gaf                                  0x5f9
1014 #define XK_Arabic_noon_ghunna                          0x5fa
1015 #define XK_Arabic_heh_doachashmee                      0x5fb
1016 #define XK_Farsi_yeh                                   0x5fc
1017 #define XK_Arabic_farsi_yeh                     XK_Farsi_yeh
1018 #define XK_Arabic_yeh_baree                            0x5fd
1019 #define XK_Arabic_heh_goal                             0x5fe
1020 #define XK_Arabic_switch        0xFF7E  /* Alias for mode_switch */
1021 #endif /* XK_ARABIC */
1022
1023 /*
1024  * Cyrillic
1025  * Byte 3 = 6
1026  */
1027 #define XK_CYRILLIC
1028 #ifdef XK_CYRILLIC
1029 #define XK_Cyrillic_GHE_bar                                0x680
1030 #define XK_Cyrillic_ghe_bar                                0x690
1031 #define XK_Cyrillic_ZHE_descender                          0x681
1032 #define XK_Cyrillic_zhe_descender                          0x691
1033 #define XK_Cyrillic_KA_descender                           0x682
1034 #define XK_Cyrillic_ka_descender                           0x692
1035 #define XK_Cyrillic_KA_vertstroke                          0x683
1036 #define XK_Cyrillic_ka_vertstroke                          0x693
1037 #define XK_Cyrillic_EN_descender                           0x684
1038 #define XK_Cyrillic_en_descender                           0x694
1039 #define XK_Cyrillic_U_straight                         0x685
1040 #define XK_Cyrillic_u_straight                         0x695
1041 #define XK_Cyrillic_U_straight_bar                         0x686
1042 #define XK_Cyrillic_u_straight_bar                         0x696
1043 #define XK_Cyrillic_HA_descender                           0x687
1044 #define XK_Cyrillic_ha_descender                           0x697
1045 #define XK_Cyrillic_CHE_descender                          0x688
1046 #define XK_Cyrillic_che_descender                          0x698
1047 #define XK_Cyrillic_CHE_vertstroke                         0x689
1048 #define XK_Cyrillic_che_vertstroke                         0x699
1049 #define XK_Cyrillic_SHHA                                   0x68a
1050 #define XK_Cyrillic_shha                                   0x69a
1051
1052 #define XK_Cyrillic_SCHWA                                  0x68c
1053 #define XK_Cyrillic_schwa                                  0x69c
1054 #define XK_Cyrillic_I_macron                               0x68d
1055 #define XK_Cyrillic_i_macron                               0x69d
1056 #define XK_Cyrillic_O_bar                                  0x68e
1057 #define XK_Cyrillic_o_bar                                  0x69e
1058 #define XK_Cyrillic_U_macron                               0x68f
1059 #define XK_Cyrillic_u_macron                               0x69f
1060
1061 #define XK_Serbian_dje                                 0x6a1
1062 #define XK_Macedonia_gje                               0x6a2
1063 #define XK_Cyrillic_io                                 0x6a3
1064 #define XK_Ukrainian_ie                                0x6a4
1065 #define XK_Ukranian_je                                 0x6a4  /* deprecated */
1066 #define XK_Macedonia_dse                               0x6a5
1067 #define XK_Ukrainian_i                                 0x6a6
1068 #define XK_Ukranian_i                                  0x6a6  /* deprecated */
1069 #define XK_Ukrainian_yi                                0x6a7
1070 #define XK_Ukranian_yi                                 0x6a7  /* deprecated */
1071 #define XK_Cyrillic_je                                 0x6a8
1072 #define XK_Serbian_je                                  0x6a8  /* deprecated */
1073 #define XK_Cyrillic_lje                                0x6a9
1074 #define XK_Serbian_lje                                 0x6a9  /* deprecated */
1075 #define XK_Cyrillic_nje                                0x6aa
1076 #define XK_Serbian_nje                                 0x6aa  /* deprecated */
1077 #define XK_Serbian_tshe                                0x6ab
1078 #define XK_Macedonia_kje                               0x6ac
1079 #define XK_Ukrainian_ghe_with_upturn                   0x6ad
1080 #define XK_Byelorussian_shortu                         0x6ae
1081 #define XK_Cyrillic_dzhe                               0x6af
1082 #define XK_Serbian_dze                                 0x6af  /* deprecated */
1083 #define XK_numerosign                                  0x6b0
1084 #define XK_Serbian_DJE                                 0x6b1
1085 #define XK_Macedonia_GJE                               0x6b2
1086 #define XK_Cyrillic_IO                                 0x6b3
1087 #define XK_Ukrainian_IE                                0x6b4
1088 #define XK_Ukranian_JE                                 0x6b4  /* deprecated */
1089 #define XK_Macedonia_DSE                               0x6b5
1090 #define XK_Ukrainian_I                                 0x6b6
1091 #define XK_Ukranian_I                                  0x6b6  /* deprecated */
1092 #define XK_Ukrainian_YI                                0x6b7
1093 #define XK_Ukranian_YI                                 0x6b7  /* deprecated */
1094 #define XK_Cyrillic_JE                                 0x6b8
1095 #define XK_Serbian_JE                                  0x6b8  /* deprecated */
1096 #define XK_Cyrillic_LJE                                0x6b9
1097 #define XK_Serbian_LJE                                 0x6b9  /* deprecated */
1098 #define XK_Cyrillic_NJE                                0x6ba
1099 #define XK_Serbian_NJE                                 0x6ba  /* deprecated */
1100 #define XK_Serbian_TSHE                                0x6bb
1101 #define XK_Macedonia_KJE                               0x6bc
1102 #define XK_Ukrainian_GHE_WITH_UPTURN                   0x6bd
1103 #define XK_Byelorussian_SHORTU                         0x6be
1104 #define XK_Cyrillic_DZHE                               0x6bf
1105 #define XK_Serbian_DZE                                 0x6bf  /* deprecated */
1106 #define XK_Cyrillic_yu                                 0x6c0
1107 #define XK_Cyrillic_a                                  0x6c1
1108 #define XK_Cyrillic_be                                 0x6c2
1109 #define XK_Cyrillic_tse                                0x6c3
1110 #define XK_Cyrillic_de                                 0x6c4
1111 #define XK_Cyrillic_ie                                 0x6c5
1112 #define XK_Cyrillic_ef                                 0x6c6
1113 #define XK_Cyrillic_ghe                                0x6c7
1114 #define XK_Cyrillic_ha                                 0x6c8
1115 #define XK_Cyrillic_i                                  0x6c9
1116 #define XK_Cyrillic_shorti                             0x6ca
1117 #define XK_Cyrillic_ka                                 0x6cb
1118 #define XK_Cyrillic_el                                 0x6cc
1119 #define XK_Cyrillic_em                                 0x6cd
1120 #define XK_Cyrillic_en                                 0x6ce
1121 #define XK_Cyrillic_o                                  0x6cf
1122 #define XK_Cyrillic_pe                                 0x6d0
1123 #define XK_Cyrillic_ya                                 0x6d1
1124 #define XK_Cyrillic_er                                 0x6d2
1125 #define XK_Cyrillic_es                                 0x6d3
1126 #define XK_Cyrillic_te                                 0x6d4
1127 #define XK_Cyrillic_u                                  0x6d5
1128 #define XK_Cyrillic_zhe                                0x6d6
1129 #define XK_Cyrillic_ve                                 0x6d7
1130 #define XK_Cyrillic_softsign                           0x6d8
1131 #define XK_Cyrillic_yeru                               0x6d9
1132 #define XK_Cyrillic_ze                                 0x6da
1133 #define XK_Cyrillic_sha                                0x6db
1134 #define XK_Cyrillic_e                                  0x6dc
1135 #define XK_Cyrillic_shcha                              0x6dd
1136 #define XK_Cyrillic_che                                0x6de
1137 #define XK_Cyrillic_hardsign                           0x6df
1138 #define XK_Cyrillic_YU                                 0x6e0
1139 #define XK_Cyrillic_A                                  0x6e1
1140 #define XK_Cyrillic_BE                                 0x6e2
1141 #define XK_Cyrillic_TSE                                0x6e3
1142 #define XK_Cyrillic_DE                                 0x6e4
1143 #define XK_Cyrillic_IE                                 0x6e5
1144 #define XK_Cyrillic_EF                                 0x6e6
1145 #define XK_Cyrillic_GHE                                0x6e7
1146 #define XK_Cyrillic_HA                                 0x6e8
1147 #define XK_Cyrillic_I                                  0x6e9
1148 #define XK_Cyrillic_SHORTI                             0x6ea
1149 #define XK_Cyrillic_KA                                 0x6eb
1150 #define XK_Cyrillic_EL                                 0x6ec
1151 #define XK_Cyrillic_EM                                 0x6ed
1152 #define XK_Cyrillic_EN                                 0x6ee
1153 #define XK_Cyrillic_O                                  0x6ef
1154 #define XK_Cyrillic_PE                                 0x6f0
1155 #define XK_Cyrillic_YA                                 0x6f1
1156 #define XK_Cyrillic_ER                                 0x6f2
1157 #define XK_Cyrillic_ES                                 0x6f3
1158 #define XK_Cyrillic_TE                                 0x6f4
1159 #define XK_Cyrillic_U                                  0x6f5
1160 #define XK_Cyrillic_ZHE                                0x6f6
1161 #define XK_Cyrillic_VE                                 0x6f7
1162 #define XK_Cyrillic_SOFTSIGN                           0x6f8
1163 #define XK_Cyrillic_YERU                               0x6f9
1164 #define XK_Cyrillic_ZE                                 0x6fa
1165 #define XK_Cyrillic_SHA                                0x6fb
1166 #define XK_Cyrillic_E                                  0x6fc
1167 #define XK_Cyrillic_SHCHA                              0x6fd
1168 #define XK_Cyrillic_CHE                                0x6fe
1169 #define XK_Cyrillic_HARDSIGN                           0x6ff
1170 #endif /* XK_CYRILLIC */
1171
1172 /*
1173  * Greek
1174  * Byte 3 = 7
1175  */
1176
1177 #define XK_GREEK
1178 #ifdef XK_GREEK
1179 #define XK_Greek_ALPHAaccent                           0x7a1
1180 #define XK_Greek_EPSILONaccent                         0x7a2
1181 #define XK_Greek_ETAaccent                             0x7a3
1182 #define XK_Greek_IOTAaccent                            0x7a4
1183 #define XK_Greek_IOTAdieresis                          0x7a5
1184 #define XK_Greek_IOTAdiaeresis         XK_Greek_IOTAdieresis /* old typo */
1185 #define XK_Greek_OMICRONaccent                         0x7a7
1186 #define XK_Greek_UPSILONaccent                         0x7a8
1187 #define XK_Greek_UPSILONdieresis                       0x7a9
1188 #define XK_Greek_OMEGAaccent                           0x7ab
1189 #define XK_Greek_accentdieresis                        0x7ae
1190 #define XK_Greek_horizbar                              0x7af
1191 #define XK_Greek_alphaaccent                           0x7b1
1192 #define XK_Greek_epsilonaccent                         0x7b2
1193 #define XK_Greek_etaaccent                             0x7b3
1194 #define XK_Greek_iotaaccent                            0x7b4
1195 #define XK_Greek_iotadieresis                          0x7b5
1196 #define XK_Greek_iotaaccentdieresis                    0x7b6
1197 #define XK_Greek_omicronaccent                         0x7b7
1198 #define XK_Greek_upsilonaccent                         0x7b8
1199 #define XK_Greek_upsilondieresis                       0x7b9
1200 #define XK_Greek_upsilonaccentdieresis                 0x7ba
1201 #define XK_Greek_omegaaccent                           0x7bb
1202 #define XK_Greek_ALPHA                                 0x7c1
1203 #define XK_Greek_BETA                                  0x7c2
1204 #define XK_Greek_GAMMA                                 0x7c3
1205 #define XK_Greek_DELTA                                 0x7c4
1206 #define XK_Greek_EPSILON                               0x7c5
1207 #define XK_Greek_ZETA                                  0x7c6
1208 #define XK_Greek_ETA                                   0x7c7
1209 #define XK_Greek_THETA                                 0x7c8
1210 #define XK_Greek_IOTA                                  0x7c9
1211 #define XK_Greek_KAPPA                                 0x7ca
1212 #define XK_Greek_LAMDA                                 0x7cb
1213 #define XK_Greek_LAMBDA                                0x7cb
1214 #define XK_Greek_MU                                    0x7cc
1215 #define XK_Greek_NU                                    0x7cd
1216 #define XK_Greek_XI                                    0x7ce
1217 #define XK_Greek_OMICRON                               0x7cf
1218 #define XK_Greek_PI                                    0x7d0
1219 #define XK_Greek_RHO                                   0x7d1
1220 #define XK_Greek_SIGMA                                 0x7d2
1221 #define XK_Greek_TAU                                   0x7d4
1222 #define XK_Greek_UPSILON                               0x7d5
1223 #define XK_Greek_PHI                                   0x7d6
1224 #define XK_Greek_CHI                                   0x7d7
1225 #define XK_Greek_PSI                                   0x7d8
1226 #define XK_Greek_OMEGA                                 0x7d9
1227 #define XK_Greek_alpha                                 0x7e1
1228 #define XK_Greek_beta                                  0x7e2
1229 #define XK_Greek_gamma                                 0x7e3
1230 #define XK_Greek_delta                                 0x7e4
1231 #define XK_Greek_epsilon                               0x7e5
1232 #define XK_Greek_zeta                                  0x7e6
1233 #define XK_Greek_eta                                   0x7e7
1234 #define XK_Greek_theta                                 0x7e8
1235 #define XK_Greek_iota                                  0x7e9
1236 #define XK_Greek_kappa                                 0x7ea
1237 #define XK_Greek_lamda                                 0x7eb
1238 #define XK_Greek_lambda                                0x7eb
1239 #define XK_Greek_mu                                    0x7ec
1240 #define XK_Greek_nu                                    0x7ed
1241 #define XK_Greek_xi                                    0x7ee
1242 #define XK_Greek_omicron                               0x7ef
1243 #define XK_Greek_pi                                    0x7f0
1244 #define XK_Greek_rho                                   0x7f1
1245 #define XK_Greek_sigma                                 0x7f2
1246 #define XK_Greek_finalsmallsigma                       0x7f3
1247 #define XK_Greek_tau                                   0x7f4
1248 #define XK_Greek_upsilon                               0x7f5
1249 #define XK_Greek_phi                                   0x7f6
1250 #define XK_Greek_chi                                   0x7f7
1251 #define XK_Greek_psi                                   0x7f8
1252 #define XK_Greek_omega                                 0x7f9
1253 #define XK_Greek_switch         0xFF7E  /* Alias for mode_switch */
1254 #endif /* XK_GREEK */
1255
1256 /*
1257  * Technical
1258  * Byte 3 = 8
1259  */
1260
1261 #define XK_TECHNICAL
1262 #ifdef XK_TECHNICAL
1263 #define XK_leftradical                                 0x8a1
1264 #define XK_topleftradical                              0x8a2
1265 #define XK_horizconnector                              0x8a3
1266 #define XK_topintegral                                 0x8a4
1267 #define XK_botintegral                                 0x8a5
1268 #define XK_vertconnector                               0x8a6
1269 #define XK_topleftsqbracket                            0x8a7
1270 #define XK_botleftsqbracket                            0x8a8
1271 #define XK_toprightsqbracket                           0x8a9
1272 #define XK_botrightsqbracket                           0x8aa
1273 #define XK_topleftparens                               0x8ab
1274 #define XK_botleftparens                               0x8ac
1275 #define XK_toprightparens                              0x8ad
1276 #define XK_botrightparens                              0x8ae
1277 #define XK_leftmiddlecurlybrace                        0x8af
1278 #define XK_rightmiddlecurlybrace                       0x8b0
1279 #define XK_topleftsummation                            0x8b1
1280 #define XK_botleftsummation                            0x8b2
1281 #define XK_topvertsummationconnector                   0x8b3
1282 #define XK_botvertsummationconnector                   0x8b4
1283 #define XK_toprightsummation                           0x8b5
1284 #define XK_botrightsummation                           0x8b6
1285 #define XK_rightmiddlesummation                        0x8b7
1286 #define XK_lessthanequal                               0x8bc
1287 #define XK_notequal                                    0x8bd
1288 #define XK_greaterthanequal                            0x8be
1289 #define XK_integral                                    0x8bf
1290 #define XK_therefore                                   0x8c0
1291 #define XK_variation                                   0x8c1
1292 #define XK_infinity                                    0x8c2
1293 #define XK_nabla                                       0x8c5
1294 #define XK_approximate                                 0x8c8
1295 #define XK_similarequal                                0x8c9
1296 #define XK_ifonlyif                                    0x8cd
1297 #define XK_implies                                     0x8ce
1298 #define XK_identical                                   0x8cf
1299 #define XK_radical                                     0x8d6
1300 #define XK_includedin                                  0x8da
1301 #define XK_includes                                    0x8db
1302 #define XK_intersection                                0x8dc
1303 #define XK_union                                       0x8dd
1304 #define XK_logicaland                                  0x8de
1305 #define XK_logicalor                                   0x8df
1306 #define XK_partialderivative                           0x8ef
1307 #define XK_function                                    0x8f6
1308 #define XK_leftarrow                                   0x8fb
1309 #define XK_uparrow                                     0x8fc
1310 #define XK_rightarrow                                  0x8fd
1311 #define XK_downarrow                                   0x8fe
1312 #endif /* XK_TECHNICAL */
1313
1314 /*
1315  *  Special
1316  *  Byte 3 = 9
1317  */
1318
1319 #define XK_SPECIAL
1320 #ifdef XK_SPECIAL
1321 #define XK_blank                                       0x9df
1322 #define XK_soliddiamond                                0x9e0
1323 #define XK_checkerboard                                0x9e1
1324 #define XK_ht                                          0x9e2
1325 #define XK_ff                                          0x9e3
1326 #define XK_cr                                          0x9e4
1327 #define XK_lf                                          0x9e5
1328 #define XK_nl                                          0x9e8
1329 #define XK_vt                                          0x9e9
1330 #define XK_lowrightcorner                              0x9ea
1331 #define XK_uprightcorner                               0x9eb
1332 #define XK_upleftcorner                                0x9ec
1333 #define XK_lowleftcorner                               0x9ed
1334 #define XK_crossinglines                               0x9ee
1335 #define XK_horizlinescan1                              0x9ef
1336 #define XK_horizlinescan3                              0x9f0
1337 #define XK_horizlinescan5                              0x9f1
1338 #define XK_horizlinescan7                              0x9f2
1339 #define XK_horizlinescan9                              0x9f3
1340 #define XK_leftt                                       0x9f4
1341 #define XK_rightt                                      0x9f5
1342 #define XK_bott                                        0x9f6
1343 #define XK_topt                                        0x9f7
1344 #define XK_vertbar                                     0x9f8
1345 #endif /* XK_SPECIAL */
1346
1347 /*
1348  *  Publishing
1349  *  Byte 3 = a
1350  */
1351
1352 #define XK_PUBLISHING
1353 #ifdef XK_PUBLISHING
1354 #define XK_emspace                                     0xaa1
1355 #define XK_enspace                                     0xaa2
1356 #define XK_em3space                                    0xaa3
1357 #define XK_em4space                                    0xaa4
1358 #define XK_digitspace                                  0xaa5
1359 #define XK_punctspace                                  0xaa6
1360 #define XK_thinspace                                   0xaa7
1361 #define XK_hairspace                                   0xaa8
1362 #define XK_emdash                                      0xaa9
1363 #define XK_endash                                      0xaaa
1364 #define XK_signifblank                                 0xaac
1365 #define XK_ellipsis                                    0xaae
1366 #define XK_doubbaselinedot                             0xaaf
1367 #define XK_onethird                                    0xab0
1368 #define XK_twothirds                                   0xab1
1369 #define XK_onefifth                                    0xab2
1370 #define XK_twofifths                                   0xab3
1371 #define XK_threefifths                                 0xab4
1372 #define XK_fourfifths                                  0xab5
1373 #define XK_onesixth                                    0xab6
1374 #define XK_fivesixths                                  0xab7
1375 #define XK_careof                                      0xab8
1376 #define XK_figdash                                     0xabb
1377 #define XK_leftanglebracket                            0xabc
1378 #define XK_decimalpoint                                0xabd
1379 #define XK_rightanglebracket                           0xabe
1380 #define XK_marker                                      0xabf
1381 #define XK_oneeighth                                   0xac3
1382 #define XK_threeeighths                                0xac4
1383 #define XK_fiveeighths                                 0xac5
1384 #define XK_seveneighths                                0xac6
1385 #define XK_trademark                                   0xac9
1386 #define XK_signaturemark                               0xaca
1387 #define XK_trademarkincircle                           0xacb
1388 #define XK_leftopentriangle                            0xacc
1389 #define XK_rightopentriangle                           0xacd
1390 #define XK_emopencircle                                0xace
1391 #define XK_emopenrectangle                             0xacf
1392 #define XK_leftsinglequotemark                         0xad0
1393 #define XK_rightsinglequotemark                        0xad1
1394 #define XK_leftdoublequotemark                         0xad2
1395 #define XK_rightdoublequotemark                        0xad3
1396 #define XK_prescription                                0xad4
1397 #define XK_minutes                                     0xad6
1398 #define XK_seconds                                     0xad7
1399 #define XK_latincross                                  0xad9
1400 #define XK_hexagram                                    0xada
1401 #define XK_filledrectbullet                            0xadb
1402 #define XK_filledlefttribullet                         0xadc
1403 #define XK_filledrighttribullet                        0xadd
1404 #define XK_emfilledcircle                              0xade
1405 #define XK_emfilledrect                                0xadf
1406 #define XK_enopencircbullet                            0xae0
1407 #define XK_enopensquarebullet                          0xae1
1408 #define XK_openrectbullet                              0xae2
1409 #define XK_opentribulletup                             0xae3
1410 #define XK_opentribulletdown                           0xae4
1411 #define XK_openstar                                    0xae5
1412 #define XK_enfilledcircbullet                          0xae6
1413 #define XK_enfilledsqbullet                            0xae7
1414 #define XK_filledtribulletup                           0xae8
1415 #define XK_filledtribulletdown                         0xae9
1416 #define XK_leftpointer                                 0xaea
1417 #define XK_rightpointer                                0xaeb
1418 #define XK_club                                        0xaec
1419 #define XK_diamond                                     0xaed
1420 #define XK_heart                                       0xaee
1421 #define XK_maltesecross                                0xaf0
1422 #define XK_dagger                                      0xaf1
1423 #define XK_doubledagger                                0xaf2
1424 #define XK_checkmark                                   0xaf3
1425 #define XK_ballotcross                                 0xaf4
1426 #define XK_musicalsharp                                0xaf5
1427 #define XK_musicalflat                                 0xaf6
1428 #define XK_malesymbol                                  0xaf7
1429 #define XK_femalesymbol                                0xaf8
1430 #define XK_telephone                                   0xaf9
1431 #define XK_telephonerecorder                           0xafa
1432 #define XK_phonographcopyright                         0xafb
1433 #define XK_caret                                       0xafc
1434 #define XK_singlelowquotemark                          0xafd
1435 #define XK_doublelowquotemark                          0xafe
1436 #define XK_cursor                                      0xaff
1437 #endif /* XK_PUBLISHING */
1438
1439 /*
1440  *  APL
1441  *  Byte 3 = b
1442  */
1443
1444 #define XK_APL
1445 #ifdef XK_APL
1446 #define XK_leftcaret                                   0xba3
1447 #define XK_rightcaret                                  0xba6
1448 #define XK_downcaret                                   0xba8
1449 #define XK_upcaret                                     0xba9
1450 #define XK_overbar                                     0xbc0
1451 #define XK_downtack                                    0xbc2
1452 #define XK_upshoe                                      0xbc3
1453 #define XK_downstile                                   0xbc4
1454 #define XK_underbar                                    0xbc6
1455 #define XK_jot                                         0xbca
1456 #define XK_quad                                        0xbcc
1457 #define XK_uptack                                      0xbce
1458 #define XK_circle                                      0xbcf
1459 #define XK_upstile                                     0xbd3
1460 #define XK_downshoe                                    0xbd6
1461 #define XK_rightshoe                                   0xbd8
1462 #define XK_leftshoe                                    0xbda
1463 #define XK_lefttack                                    0xbdc
1464 #define XK_righttack                                   0xbfc
1465 #endif /* XK_APL */
1466
1467 /*
1468  * Hebrew
1469  * Byte 3 = c
1470  */
1471
1472 #define XK_HEBREW
1473 #ifdef XK_HEBREW
1474 #define XK_hebrew_doublelowline                        0xcdf
1475 #define XK_hebrew_aleph                                0xce0
1476 #define XK_hebrew_bet                                  0xce1
1477 #define XK_hebrew_beth                                 0xce1  /* deprecated */
1478 #define XK_hebrew_gimel                                0xce2
1479 #define XK_hebrew_gimmel                               0xce2  /* deprecated */
1480 #define XK_hebrew_dalet                                0xce3
1481 #define XK_hebrew_daleth                               0xce3  /* deprecated */
1482 #define XK_hebrew_he                                   0xce4
1483 #define XK_hebrew_waw                                  0xce5
1484 #define XK_hebrew_zain                                 0xce6
1485 #define XK_hebrew_zayin                                0xce6  /* deprecated */
1486 #define XK_hebrew_chet                                 0xce7
1487 #define XK_hebrew_het                                  0xce7  /* deprecated */
1488 #define XK_hebrew_tet                                  0xce8
1489 #define XK_hebrew_teth                                 0xce8  /* deprecated */
1490 #define XK_hebrew_yod                                  0xce9
1491 #define XK_hebrew_finalkaph                            0xcea
1492 #define XK_hebrew_kaph                                 0xceb
1493 #define XK_hebrew_lamed                                0xcec
1494 #define XK_hebrew_finalmem                             0xced
1495 #define XK_hebrew_mem                                  0xcee
1496 #define XK_hebrew_finalnun                             0xcef
1497 #define XK_hebrew_nun                                  0xcf0
1498 #define XK_hebrew_samech                               0xcf1
1499 #define XK_hebrew_samekh                               0xcf1  /* deprecated */
1500 #define XK_hebrew_ayin                                 0xcf2
1501 #define XK_hebrew_finalpe                              0xcf3
1502 #define XK_hebrew_pe                                   0xcf4
1503 #define XK_hebrew_finalzade                            0xcf5
1504 #define XK_hebrew_finalzadi                            0xcf5  /* deprecated */
1505 #define XK_hebrew_zade                                 0xcf6
1506 #define XK_hebrew_zadi                                 0xcf6  /* deprecated */
1507 #define XK_hebrew_qoph                                 0xcf7
1508 #define XK_hebrew_kuf                                  0xcf7  /* deprecated */
1509 #define XK_hebrew_resh                                 0xcf8
1510 #define XK_hebrew_shin                                 0xcf9
1511 #define XK_hebrew_taw                                  0xcfa
1512 #define XK_hebrew_taf                                  0xcfa  /* deprecated */
1513 #define XK_Hebrew_switch        0xFF7E  /* Alias for mode_switch */
1514 #endif /* XK_HEBREW */
1515
1516 /*
1517  * Thai
1518  * Byte 3 = d
1519  */
1520
1521 #define XK_THAI
1522 #ifdef XK_THAI
1523 #define XK_Thai_kokai                                   0xda1
1524 #define XK_Thai_khokhai                                 0xda2
1525 #define XK_Thai_khokhuat                                0xda3
1526 #define XK_Thai_khokhwai                                0xda4
1527 #define XK_Thai_khokhon                                 0xda5
1528 #define XK_Thai_khorakhang                              0xda6  
1529 #define XK_Thai_ngongu                                  0xda7  
1530 #define XK_Thai_chochan                                 0xda8  
1531 #define XK_Thai_choching                                0xda9   
1532 #define XK_Thai_chochang                                0xdaa  
1533 #define XK_Thai_soso                                    0xdab
1534 #define XK_Thai_chochoe                                 0xdac
1535 #define XK_Thai_yoying                                  0xdad
1536 #define XK_Thai_dochada                                 0xdae
1537 #define XK_Thai_topatak                                 0xdaf
1538 #define XK_Thai_thothan                                 0xdb0
1539 #define XK_Thai_thonangmontho                           0xdb1
1540 #define XK_Thai_thophuthao                              0xdb2
1541 #define XK_Thai_nonen                                   0xdb3
1542 #define XK_Thai_dodek                                   0xdb4
1543 #define XK_Thai_totao                                   0xdb5
1544 #define XK_Thai_thothung                                0xdb6
1545 #define XK_Thai_thothahan                               0xdb7
1546 #define XK_Thai_thothong                                0xdb8
1547 #define XK_Thai_nonu                                    0xdb9
1548 #define XK_Thai_bobaimai                                0xdba
1549 #define XK_Thai_popla                                   0xdbb
1550 #define XK_Thai_phophung                                0xdbc
1551 #define XK_Thai_fofa                                    0xdbd
1552 #define XK_Thai_phophan                                 0xdbe
1553 #define XK_Thai_fofan                                   0xdbf
1554 #define XK_Thai_phosamphao                              0xdc0
1555 #define XK_Thai_moma                                    0xdc1
1556 #define XK_Thai_yoyak                                   0xdc2
1557 #define XK_Thai_rorua                                   0xdc3
1558 #define XK_Thai_ru                                      0xdc4
1559 #define XK_Thai_loling                                  0xdc5
1560 #define XK_Thai_lu                                      0xdc6
1561 #define XK_Thai_wowaen                                  0xdc7
1562 #define XK_Thai_sosala                                  0xdc8
1563 #define XK_Thai_sorusi                                  0xdc9
1564 #define XK_Thai_sosua                                   0xdca
1565 #define XK_Thai_hohip                                   0xdcb
1566 #define XK_Thai_lochula                                 0xdcc
1567 #define XK_Thai_oang                                    0xdcd
1568 #define XK_Thai_honokhuk                                0xdce
1569 #define XK_Thai_paiyannoi                               0xdcf
1570 #define XK_Thai_saraa                                   0xdd0
1571 #define XK_Thai_maihanakat                              0xdd1
1572 #define XK_Thai_saraaa                                  0xdd2
1573 #define XK_Thai_saraam                                  0xdd3
1574 #define XK_Thai_sarai                                   0xdd4   
1575 #define XK_Thai_saraii                                  0xdd5   
1576 #define XK_Thai_saraue                                  0xdd6    
1577 #define XK_Thai_sarauee                                 0xdd7    
1578 #define XK_Thai_sarau                                   0xdd8    
1579 #define XK_Thai_sarauu                                  0xdd9   
1580 #define XK_Thai_phinthu                                 0xdda
1581 #define XK_Thai_maihanakat_maitho                       0xdde
1582 #define XK_Thai_baht                                    0xddf
1583 #define XK_Thai_sarae                                   0xde0    
1584 #define XK_Thai_saraae                                  0xde1
1585 #define XK_Thai_sarao                                   0xde2
1586 #define XK_Thai_saraaimaimuan                           0xde3   
1587 #define XK_Thai_saraaimaimalai                          0xde4  
1588 #define XK_Thai_lakkhangyao                             0xde5
1589 #define XK_Thai_maiyamok                                0xde6
1590 #define XK_Thai_maitaikhu                               0xde7
1591 #define XK_Thai_maiek                                   0xde8   
1592 #define XK_Thai_maitho                                  0xde9
1593 #define XK_Thai_maitri                                  0xdea
1594 #define XK_Thai_maichattawa                             0xdeb
1595 #define XK_Thai_thanthakhat                             0xdec
1596 #define XK_Thai_nikhahit                                0xded
1597 #define XK_Thai_leksun                                  0xdf0 
1598 #define XK_Thai_leknung                                 0xdf1  
1599 #define XK_Thai_leksong                                 0xdf2 
1600 #define XK_Thai_leksam                                  0xdf3
1601 #define XK_Thai_leksi                                   0xdf4  
1602 #define XK_Thai_lekha                                   0xdf5  
1603 #define XK_Thai_lekhok                                  0xdf6  
1604 #define XK_Thai_lekchet                                 0xdf7  
1605 #define XK_Thai_lekpaet                                 0xdf8  
1606 #define XK_Thai_lekkao                                  0xdf9 
1607 #endif /* XK_THAI */
1608
1609 /*
1610  *   Korean
1611  *   Byte 3 = e
1612  */
1613
1614 #define XK_KOREAN
1615 #ifdef XK_KOREAN
1616
1617 #define XK_Hangul               0xff31    /* Hangul start/stop(toggle) */
1618 #define XK_Hangul_Start         0xff32    /* Hangul start */
1619 #define XK_Hangul_End           0xff33    /* Hangul end, English start */
1620 #define XK_Hangul_Hanja         0xff34    /* Start Hangul->Hanja Conversion */
1621 #define XK_Hangul_Jamo          0xff35    /* Hangul Jamo mode */
1622 #define XK_Hangul_Romaja        0xff36    /* Hangul Romaja mode */
1623 #define XK_Hangul_Codeinput     0xff37    /* Hangul code input mode */
1624 #define XK_Hangul_Jeonja        0xff38    /* Jeonja mode */
1625 #define XK_Hangul_Banja         0xff39    /* Banja mode */
1626 #define XK_Hangul_PreHanja      0xff3a    /* Pre Hanja conversion */
1627 #define XK_Hangul_PostHanja     0xff3b    /* Post Hanja conversion */
1628 #define XK_Hangul_SingleCandidate       0xff3c    /* Single candidate */
1629 #define XK_Hangul_MultipleCandidate     0xff3d    /* Multiple candidate */
1630 #define XK_Hangul_PreviousCandidate     0xff3e    /* Previous candidate */
1631 #define XK_Hangul_Special       0xff3f    /* Special symbols */
1632 #define XK_Hangul_switch        0xFF7E    /* Alias for mode_switch */
1633
1634 /* Hangul Consonant Characters */
1635 #define XK_Hangul_Kiyeog                                0xea1
1636 #define XK_Hangul_SsangKiyeog                           0xea2
1637 #define XK_Hangul_KiyeogSios                            0xea3
1638 #define XK_Hangul_Nieun                                 0xea4
1639 #define XK_Hangul_NieunJieuj                            0xea5
1640 #define XK_Hangul_NieunHieuh                            0xea6
1641 #define XK_Hangul_Dikeud                                0xea7
1642 #define XK_Hangul_SsangDikeud                           0xea8
1643 #define XK_Hangul_Rieul                                 0xea9
1644 #define XK_Hangul_RieulKiyeog                           0xeaa
1645 #define XK_Hangul_RieulMieum                            0xeab
1646 #define XK_Hangul_RieulPieub                            0xeac
1647 #define XK_Hangul_RieulSios                             0xead
1648 #define XK_Hangul_RieulTieut                            0xeae
1649 #define XK_Hangul_RieulPhieuf                           0xeaf
1650 #define XK_Hangul_RieulHieuh                            0xeb0
1651 #define XK_Hangul_Mieum                                 0xeb1
1652 #define XK_Hangul_Pieub                                 0xeb2
1653 #define XK_Hangul_SsangPieub                            0xeb3
1654 #define XK_Hangul_PieubSios                             0xeb4
1655 #define XK_Hangul_Sios                                  0xeb5
1656 #define XK_Hangul_SsangSios                             0xeb6
1657 #define XK_Hangul_Ieung                                 0xeb7
1658 #define XK_Hangul_Jieuj                                 0xeb8
1659 #define XK_Hangul_SsangJieuj                            0xeb9
1660 #define XK_Hangul_Cieuc                                 0xeba
1661 #define XK_Hangul_Khieuq                                0xebb
1662 #define XK_Hangul_Tieut                                 0xebc
1663 #define XK_Hangul_Phieuf                                0xebd
1664 #define XK_Hangul_Hieuh                                 0xebe
1665
1666 /* Hangul Vowel Characters */
1667 #define XK_Hangul_A                                     0xebf
1668 #define XK_Hangul_AE                                    0xec0
1669 #define XK_Hangul_YA                                    0xec1
1670 #define XK_Hangul_YAE                                   0xec2
1671 #define XK_Hangul_EO                                    0xec3
1672 #define XK_Hangul_E                                     0xec4
1673 #define XK_Hangul_YEO                                   0xec5
1674 #define XK_Hangul_YE                                    0xec6
1675 #define XK_Hangul_O                                     0xec7
1676 #define XK_Hangul_WA                                    0xec8
1677 #define XK_Hangul_WAE                                   0xec9
1678 #define XK_Hangul_OE                                    0xeca
1679 #define XK_Hangul_YO                                    0xecb
1680 #define XK_Hangul_U                                     0xecc
1681 #define XK_Hangul_WEO                                   0xecd
1682 #define XK_Hangul_WE                                    0xece
1683 #define XK_Hangul_WI                                    0xecf
1684 #define XK_Hangul_YU                                    0xed0
1685 #define XK_Hangul_EU                                    0xed1
1686 #define XK_Hangul_YI                                    0xed2
1687 #define XK_Hangul_I                                     0xed3
1688
1689 /* Hangul syllable-final (JongSeong) Characters */
1690 #define XK_Hangul_J_Kiyeog                              0xed4
1691 #define XK_Hangul_J_SsangKiyeog                         0xed5
1692 #define XK_Hangul_J_KiyeogSios                          0xed6
1693 #define XK_Hangul_J_Nieun                               0xed7
1694 #define XK_Hangul_J_NieunJieuj                          0xed8
1695 #define XK_Hangul_J_NieunHieuh                          0xed9
1696 #define XK_Hangul_J_Dikeud                              0xeda
1697 #define XK_Hangul_J_Rieul                               0xedb
1698 #define XK_Hangul_J_RieulKiyeog                         0xedc
1699 #define XK_Hangul_J_RieulMieum                          0xedd
1700 #define XK_Hangul_J_RieulPieub                          0xede
1701 #define XK_Hangul_J_RieulSios                           0xedf
1702 #define XK_Hangul_J_RieulTieut                          0xee0
1703 #define XK_Hangul_J_RieulPhieuf                         0xee1
1704 #define XK_Hangul_J_RieulHieuh                          0xee2
1705 #define XK_Hangul_J_Mieum                               0xee3
1706 #define XK_Hangul_J_Pieub                               0xee4
1707 #define XK_Hangul_J_PieubSios                           0xee5
1708 #define XK_Hangul_J_Sios                                0xee6
1709 #define XK_Hangul_J_SsangSios                           0xee7
1710 #define XK_Hangul_J_Ieung                               0xee8
1711 #define XK_Hangul_J_Jieuj                               0xee9
1712 #define XK_Hangul_J_Cieuc                               0xeea
1713 #define XK_Hangul_J_Khieuq                              0xeeb
1714 #define XK_Hangul_J_Tieut                               0xeec
1715 #define XK_Hangul_J_Phieuf                              0xeed
1716 #define XK_Hangul_J_Hieuh                               0xeee
1717
1718 /* Ancient Hangul Consonant Characters */
1719 #define XK_Hangul_RieulYeorinHieuh                      0xeef
1720 #define XK_Hangul_SunkyeongeumMieum                     0xef0
1721 #define XK_Hangul_SunkyeongeumPieub                     0xef1
1722 #define XK_Hangul_PanSios                               0xef2
1723 #define XK_Hangul_KkogjiDalrinIeung                     0xef3
1724 #define XK_Hangul_SunkyeongeumPhieuf                    0xef4
1725 #define XK_Hangul_YeorinHieuh                           0xef5
1726
1727 /* Ancient Hangul Vowel Characters */
1728 #define XK_Hangul_AraeA                                 0xef6
1729 #define XK_Hangul_AraeAE                                0xef7
1730
1731 /* Ancient Hangul syllable-final (JongSeong) Characters */
1732 #define XK_Hangul_J_PanSios                             0xef8
1733 #define XK_Hangul_J_KkogjiDalrinIeung                   0xef9
1734 #define XK_Hangul_J_YeorinHieuh                         0xefa
1735
1736 /* Korean currency symbol */
1737 #define XK_Korean_Won                                   0xeff
1738
1739 #endif /* XK_KOREAN */
1740
1741 /*
1742  *   Armenian
1743  *   Byte 3 = 0x14
1744  */
1745
1746 #define XK_ARMENIAN
1747 #ifdef XK_ARMENIAN
1748 #define XK_Armenian_eternity                            0x14a1
1749 #define XK_Armenian_ligature_ew                         0x14a2
1750 #define XK_Armenian_full_stop                           0x14a3
1751 #define XK_Armenian_verjaket                            0x14a3
1752 #define XK_Armenian_parenright                          0x14a4
1753 #define XK_Armenian_parenleft                           0x14a5
1754 #define XK_Armenian_guillemotright                      0x14a6
1755 #define XK_Armenian_guillemotleft                       0x14a7
1756 #define XK_Armenian_em_dash                             0x14a8
1757 #define XK_Armenian_dot                                 0x14a9
1758 #define XK_Armenian_mijaket                             0x14a9
1759 #define XK_Armenian_separation_mark                     0x14aa
1760 #define XK_Armenian_but                                 0x14aa
1761 #define XK_Armenian_comma                               0x14ab
1762 #define XK_Armenian_en_dash                             0x14ac
1763 #define XK_Armenian_hyphen                              0x14ad
1764 #define XK_Armenian_yentamna                            0x14ad
1765 #define XK_Armenian_ellipsis                            0x14ae
1766 #define XK_Armenian_exclam                              0x14af
1767 #define XK_Armenian_amanak                              0x14af
1768 #define XK_Armenian_accent                              0x14b0
1769 #define XK_Armenian_shesht                              0x14b0
1770 #define XK_Armenian_question                            0x14b1
1771 #define XK_Armenian_paruyk                              0x14b1
1772 #define XK_Armenian_AYB                                 0x14b2
1773 #define XK_Armenian_ayb                                 0x14b3
1774 #define XK_Armenian_BEN                                 0x14b4
1775 #define XK_Armenian_ben                                 0x14b5
1776 #define XK_Armenian_GIM                                 0x14b6
1777 #define XK_Armenian_gim                                 0x14b7
1778 #define XK_Armenian_DA                                  0x14b8
1779 #define XK_Armenian_da                                  0x14b9
1780 #define XK_Armenian_YECH                                0x14ba
1781 #define XK_Armenian_yech                                0x14bb
1782 #define XK_Armenian_ZA                                  0x14bc
1783 #define XK_Armenian_za                                  0x14bd
1784 #define XK_Armenian_E                                   0x14be
1785 #define XK_Armenian_e                                   0x14bf
1786 #define XK_Armenian_AT                                  0x14c0
1787 #define XK_Armenian_at                                  0x14c1
1788 #define XK_Armenian_TO                                  0x14c2
1789 #define XK_Armenian_to                                  0x14c3
1790 #define XK_Armenian_ZHE                                 0x14c4
1791 #define XK_Armenian_zhe                                 0x14c5
1792 #define XK_Armenian_INI                                 0x14c6
1793 #define XK_Armenian_ini                                 0x14c7
1794 #define XK_Armenian_LYUN                                0x14c8
1795 #define XK_Armenian_lyun                                0x14c9
1796 #define XK_Armenian_KHE                                 0x14ca
1797 #define XK_Armenian_khe                                 0x14cb
1798 #define XK_Armenian_TSA                                 0x14cc
1799 #define XK_Armenian_tsa                                 0x14cd
1800 #define XK_Armenian_KEN                                 0x14ce
1801 #define XK_Armenian_ken                                 0x14cf
1802 #define XK_Armenian_HO                                  0x14d0
1803 #define XK_Armenian_ho                                  0x14d1
1804 #define XK_Armenian_DZA                                 0x14d2
1805 #define XK_Armenian_dza                                 0x14d3
1806 #define XK_Armenian_GHAT                                0x14d4
1807 #define XK_Armenian_ghat                                0x14d5
1808 #define XK_Armenian_TCHE                                0x14d6
1809 #define XK_Armenian_tche                                0x14d7
1810 #define XK_Armenian_MEN                                 0x14d8
1811 #define XK_Armenian_men                                 0x14d9
1812 #define XK_Armenian_HI                                  0x14da
1813 #define XK_Armenian_hi                                  0x14db
1814 #define XK_Armenian_NU                                  0x14dc
1815 #define XK_Armenian_nu                                  0x14dd
1816 #define XK_Armenian_SHA                                 0x14de
1817 #define XK_Armenian_sha                                 0x14df
1818 #define XK_Armenian_VO                                  0x14e0
1819 #define XK_Armenian_vo                                  0x14e1
1820 #define XK_Armenian_CHA                                 0x14e2
1821 #define XK_Armenian_cha                                 0x14e3
1822 #define XK_Armenian_PE                                  0x14e4
1823 #define XK_Armenian_pe                                  0x14e5
1824 #define XK_Armenian_JE                                  0x14e6
1825 #define XK_Armenian_je                                  0x14e7
1826 #define XK_Armenian_RA                                  0x14e8
1827 #define XK_Armenian_ra                                  0x14e9
1828 #define XK_Armenian_SE                                  0x14ea
1829 #define XK_Armenian_se                                  0x14eb
1830 #define XK_Armenian_VEV                                 0x14ec
1831 #define XK_Armenian_vev                                 0x14ed
1832 #define XK_Armenian_TYUN                                0x14ee
1833 #define XK_Armenian_tyun                                0x14ef
1834 #define XK_Armenian_RE                                  0x14f0
1835 #define XK_Armenian_re                                  0x14f1
1836 #define XK_Armenian_TSO                                 0x14f2
1837 #define XK_Armenian_tso                                 0x14f3
1838 #define XK_Armenian_VYUN                                0x14f4
1839 #define XK_Armenian_vyun                                0x14f5
1840 #define XK_Armenian_PYUR                                0x14f6
1841 #define XK_Armenian_pyur                                0x14f7
1842 #define XK_Armenian_KE                                  0x14f8
1843 #define XK_Armenian_ke                                  0x14f9
1844 #define XK_Armenian_O                                   0x14fa
1845 #define XK_Armenian_o                                   0x14fb
1846 #define XK_Armenian_FE                                  0x14fc
1847 #define XK_Armenian_fe                                  0x14fd
1848 #define XK_Armenian_apostrophe                          0x14fe
1849 #define XK_Armenian_section_sign                        0x14ff
1850 #endif /* XK_ARMENIAN */
1851
1852 /*
1853  *   Georgian
1854  *   Byte 3 = 0x15
1855  */
1856
1857 #define XK_GEORGIAN
1858 #ifdef XK_GEORGIAN
1859 #define XK_Georgian_an                                  0x15d0
1860 #define XK_Georgian_ban                                 0x15d1
1861 #define XK_Georgian_gan                                 0x15d2
1862 #define XK_Georgian_don                                 0x15d3
1863 #define XK_Georgian_en                                  0x15d4
1864 #define XK_Georgian_vin                                 0x15d5
1865 #define XK_Georgian_zen                                 0x15d6
1866 #define XK_Georgian_tan                                 0x15d7
1867 #define XK_Georgian_in                                  0x15d8
1868 #define XK_Georgian_kan                                 0x15d9
1869 #define XK_Georgian_las                                 0x15da
1870 #define XK_Georgian_man                                 0x15db
1871 #define XK_Georgian_nar                                 0x15dc
1872 #define XK_Georgian_on                                  0x15dd
1873 #define XK_Georgian_par                                 0x15de
1874 #define XK_Georgian_zhar                                0x15df
1875 #define XK_Georgian_rae                                 0x15e0
1876 #define XK_Georgian_san                                 0x15e1
1877 #define XK_Georgian_tar                                 0x15e2
1878 #define XK_Georgian_un                                  0x15e3
1879 #define XK_Georgian_phar                                0x15e4
1880 #define XK_Georgian_khar                                0x15e5
1881 #define XK_Georgian_ghan                                0x15e6
1882 #define XK_Georgian_qar                                 0x15e7
1883 #define XK_Georgian_shin                                0x15e8
1884 #define XK_Georgian_chin                                0x15e9
1885 #define XK_Georgian_can                                 0x15ea
1886 #define XK_Georgian_jil                                 0x15eb
1887 #define XK_Georgian_cil                                 0x15ec
1888 #define XK_Georgian_char                                0x15ed
1889 #define XK_Georgian_xan                                 0x15ee
1890 #define XK_Georgian_jhan                                0x15ef
1891 #define XK_Georgian_hae                                 0x15f0
1892 #define XK_Georgian_he                                  0x15f1
1893 #define XK_Georgian_hie                                 0x15f2
1894 #define XK_Georgian_we                                  0x15f3
1895 #define XK_Georgian_har                                 0x15f4
1896 #define XK_Georgian_hoe                                 0x15f5
1897 #define XK_Georgian_fi                                  0x15f6
1898 #endif /* XK_GEORGIAN */
1899
1900 /*
1901  * Azeri (and other Turkic or Caucasian languages of ex-USSR)
1902  * Byte 3 = 0x16
1903  */
1904
1905 #define XK_CAUCASUS
1906 #ifdef XK_CAUCASUS
1907 /* latin */
1908 #define XK_Ccedillaabovedot     0x16a2
1909 #define XK_Xabovedot            0x16a3
1910 #define XK_Qabovedot            0x16a5
1911 #define XK_Ibreve               0x16a6
1912 #define XK_IE                   0x16a7
1913 #define XK_UO                   0x16a8
1914 #define XK_Zstroke              0x16a9
1915 #define XK_Gcaron               0x16aa
1916 #define XK_Obarred              0x16af
1917 #define XK_ccedillaabovedot     0x16b2
1918 #define XK_xabovedot            0x16b3
1919 #define XK_Ocaron               0x16b4
1920 #define XK_qabovedot            0x16b5
1921 #define XK_ibreve               0x16b6
1922 #define XK_ie                   0x16b7
1923 #define XK_uo                   0x16b8
1924 #define XK_zstroke              0x16b9
1925 #define XK_gcaron               0x16ba
1926 #define XK_ocaron               0x16bd
1927 #define XK_obarred              0x16bf
1928 #define XK_SCHWA                0x16c6
1929 #define XK_schwa                0x16f6
1930 /* those are not really Caucasus, but I put them here for now */
1931 /* For Inupiak */
1932 #define XK_Lbelowdot            0x16d1
1933 #define XK_Lstrokebelowdot      0x16d2
1934 #define XK_lbelowdot            0x16e1
1935 #define XK_lstrokebelowdot      0x16e2
1936 /* For Guarani */
1937 #define XK_Gtilde               0x16d3
1938 #define XK_gtilde               0x16e3
1939 #endif /* XK_CAUCASUS */
1940
1941 /*
1942  *   Vietnamese
1943  *   Byte 3 = 0x1e
1944  */
1945  
1946 #define XK_VIETNAMESE
1947 #ifdef XK_VIETNAMESE
1948 #define XK_Abelowdot                                    0x1ea0
1949 #define XK_abelowdot                                    0x1ea1
1950 #define XK_Ahook                                        0x1ea2
1951 #define XK_ahook                                        0x1ea3
1952 #define XK_Acircumflexacute                             0x1ea4
1953 #define XK_acircumflexacute                             0x1ea5
1954 #define XK_Acircumflexgrave                             0x1ea6
1955 #define XK_acircumflexgrave                             0x1ea7
1956 #define XK_Acircumflexhook                              0x1ea8
1957 #define XK_acircumflexhook                              0x1ea9
1958 #define XK_Acircumflextilde                             0x1eaa
1959 #define XK_acircumflextilde                             0x1eab
1960 #define XK_Acircumflexbelowdot                          0x1eac
1961 #define XK_acircumflexbelowdot                          0x1ead
1962 #define XK_Abreveacute                                  0x1eae
1963 #define XK_abreveacute                                  0x1eaf
1964 #define XK_Abrevegrave                                  0x1eb0
1965 #define XK_abrevegrave                                  0x1eb1
1966 #define XK_Abrevehook                                   0x1eb2
1967 #define XK_abrevehook                                   0x1eb3
1968 #define XK_Abrevetilde                                  0x1eb4
1969 #define XK_abrevetilde                                  0x1eb5
1970 #define XK_Abrevebelowdot                               0x1eb6
1971 #define XK_abrevebelowdot                               0x1eb7
1972 #define XK_Ebelowdot                                    0x1eb8
1973 #define XK_ebelowdot                                    0x1eb9
1974 #define XK_Ehook                                        0x1eba
1975 #define XK_ehook                                        0x1ebb
1976 #define XK_Etilde                                       0x1ebc
1977 #define XK_etilde                                       0x1ebd
1978 #define XK_Ecircumflexacute                             0x1ebe
1979 #define XK_ecircumflexacute                             0x1ebf
1980 #define XK_Ecircumflexgrave                             0x1ec0
1981 #define XK_ecircumflexgrave                             0x1ec1
1982 #define XK_Ecircumflexhook                              0x1ec2
1983 #define XK_ecircumflexhook                              0x1ec3
1984 #define XK_Ecircumflextilde                             0x1ec4
1985 #define XK_ecircumflextilde                             0x1ec5
1986 #define XK_Ecircumflexbelowdot                          0x1ec6
1987 #define XK_ecircumflexbelowdot                          0x1ec7
1988 #define XK_Ihook                                        0x1ec8
1989 #define XK_ihook                                        0x1ec9
1990 #define XK_Ibelowdot                                    0x1eca
1991 #define XK_ibelowdot                                    0x1ecb
1992 #define XK_Obelowdot                                    0x1ecc
1993 #define XK_obelowdot                                    0x1ecd
1994 #define XK_Ohook                                        0x1ece
1995 #define XK_ohook                                        0x1ecf
1996 #define XK_Ocircumflexacute                             0x1ed0
1997 #define XK_ocircumflexacute                             0x1ed1
1998 #define XK_Ocircumflexgrave                             0x1ed2
1999 #define XK_ocircumflexgrave                             0x1ed3
2000 #define XK_Ocircumflexhook                              0x1ed4
2001 #define XK_ocircumflexhook                              0x1ed5
2002 #define XK_Ocircumflextilde                             0x1ed6
2003 #define XK_ocircumflextilde                             0x1ed7
2004 #define XK_Ocircumflexbelowdot                          0x1ed8
2005 #define XK_ocircumflexbelowdot                          0x1ed9
2006 #define XK_Ohornacute                                   0x1eda
2007 #define XK_ohornacute                                   0x1edb
2008 #define XK_Ohorngrave                                   0x1edc
2009 #define XK_ohorngrave                                   0x1edd
2010 #define XK_Ohornhook                                    0x1ede
2011 #define XK_ohornhook                                    0x1edf
2012 #define XK_Ohorntilde                                   0x1ee0
2013 #define XK_ohorntilde                                   0x1ee1
2014 #define XK_Ohornbelowdot                                0x1ee2
2015 #define XK_ohornbelowdot                                0x1ee3
2016 #define XK_Ubelowdot                                    0x1ee4
2017 #define XK_ubelowdot                                    0x1ee5
2018 #define XK_Uhook                                        0x1ee6
2019 #define XK_uhook                                        0x1ee7
2020 #define XK_Uhornacute                                   0x1ee8
2021 #define XK_uhornacute                                   0x1ee9
2022 #define XK_Uhorngrave                                   0x1eea
2023 #define XK_uhorngrave                                   0x1eeb
2024 #define XK_Uhornhook                                    0x1eec
2025 #define XK_uhornhook                                    0x1eed
2026 #define XK_Uhorntilde                                   0x1eee
2027 #define XK_uhorntilde                                   0x1eef
2028 #define XK_Uhornbelowdot                                0x1ef0
2029 #define XK_uhornbelowdot                                0x1ef1
2030 #define XK_Ybelowdot                                    0x1ef4
2031 #define XK_ybelowdot                                    0x1ef5
2032 #define XK_Yhook                                        0x1ef6
2033 #define XK_yhook                                        0x1ef7
2034 #define XK_Ytilde                                       0x1ef8
2035 #define XK_ytilde                                       0x1ef9
2036 #define XK_Ohorn                                        0x1efa /* U+01a0 */
2037 #define XK_ohorn                                        0x1efb /* U+01a1 */
2038 #define XK_Uhorn                                        0x1efc /* U+01af */
2039 #define XK_uhorn                                        0x1efd /* U+01b0 */
2040
2041 #define XK_combining_tilde                              0x1e9f /* U+0303 */
2042 #define XK_combining_grave                              0x1ef2 /* U+0300 */
2043 #define XK_combining_acute                              0x1ef3 /* U+0301 */
2044 #define XK_combining_hook                               0x1efe /* U+0309 */
2045 #define XK_combining_belowdot                           0x1eff /* U+0323 */
2046 #endif /* XK_VIETNAMESE */
2047
2048 #define XK_CURRENCY
2049 #ifdef XK_CURRENCY
2050 #define XK_EcuSign                                      0x20a0
2051 #define XK_ColonSign                                    0x20a1
2052 #define XK_CruzeiroSign                                 0x20a2
2053 #define XK_FFrancSign                                   0x20a3
2054 #define XK_LiraSign                                     0x20a4
2055 #define XK_MillSign                                     0x20a5
2056 #define XK_NairaSign                                    0x20a6
2057 #define XK_PesetaSign                                   0x20a7
2058 #define XK_RupeeSign                                    0x20a8
2059 #define XK_WonSign                                      0x20a9
2060 #define XK_NewSheqelSign                                0x20aa
2061 #define XK_DongSign                                     0x20ab
2062 #define XK_EuroSign                                     0x20ac
2063 #endif