]> gitweb.factorcode.org Git - factor.git/blob - basis/x11/keysymdef/keysymdef.factor
Switch to https urls
[factor.git] / basis / x11 / keysymdef / keysymdef.factor
1 ! Copyright (C) 2016 Björn Lindqvist
2 ! See https://factorcode.org/license.txt for BSD license.
3
4 ! Selected parts of /usr/include/X11/keysymdef.h
5 IN: x11.keysymdef
6
7 ! TTY function keys, cleverly chosen to map to ASCII, for convenience
8 ! of programming, but could have been arbitrary (at the cost of lookup
9 ! tables in client code).
10 CONSTANT: XK_BackSpace      0xff08  ! Back space, back char
11 CONSTANT: XK_Tab            0xff09
12 CONSTANT: XK_Linefeed       0xff0a  ! Linefeed, LF
13 CONSTANT: XK_Clear          0xff0b
14 CONSTANT: XK_Return         0xff0d  ! Return, enter
15 CONSTANT: XK_Pause          0xff13  ! Pause, hold
16 CONSTANT: XK_Scroll_Lock    0xff14
17 CONSTANT: XK_Sys_Req        0xff15
18 CONSTANT: XK_Escape         0xff1b
19 CONSTANT: XK_Delete         0xffff  ! Delete, rubout
20
21 ! Cursor control & motion
22 CONSTANT: XK_Home           0xff50
23 CONSTANT: XK_Left           0xff51  ! Move left, left arrow
24 CONSTANT: XK_Up             0xff52  ! Move up, up arrow
25 CONSTANT: XK_Right          0xff53  ! Move right, right arrow
26 CONSTANT: XK_Down           0xff54  ! Move down, down arrow
27 CONSTANT: XK_Prior          0xff55  ! Prior, previous
28 CONSTANT: XK_Page_Up        0xff55
29 CONSTANT: XK_Next           0xff56  ! Next
30 CONSTANT: XK_Page_Down      0xff56
31 CONSTANT: XK_End            0xff57  ! EOL
32 CONSTANT: XK_Begin          0xff58  ! BOL
33
34 ! Misc functions
35 CONSTANT: XK_Select         0xff60  ! Select, mark
36 CONSTANT: XK_Print          0xff61
37 CONSTANT: XK_Execute        0xff62  ! Execute, run, do
38 CONSTANT: XK_Insert         0xff63  ! Insert, insert here
39 CONSTANT: XK_Undo           0xff65
40 CONSTANT: XK_Redo           0xff66  ! Redo, again
41 CONSTANT: XK_Menu           0xff67
42 CONSTANT: XK_Find           0xff68  ! Find, search
43 CONSTANT: XK_Cancel         0xff69  ! Cancel, stop, abort, exit
44 CONSTANT: XK_Help           0xff6a  ! Help
45 CONSTANT: XK_Break          0xff6b
46 CONSTANT: XK_Mode_switch    0xff7e  ! Character set switch
47 CONSTANT: XK_script_switch  0xff7e  ! Alias for mode_switch
48 CONSTANT: XK_Num_Lock       0xff7f
49
50 ! Keypad functions, keypad numbers cleverly chosen to map to ASCII
51 CONSTANT: XK_KP_Space       0xff80  ! Space
52 CONSTANT: XK_KP_Tab         0xff89
53 CONSTANT: XK_KP_Enter       0xff8d  ! Enter
54 CONSTANT: XK_KP_F1          0xff91  ! PF1, KP_A, ...
55 CONSTANT: XK_KP_F2          0xff92
56 CONSTANT: XK_KP_F3          0xff93
57 CONSTANT: XK_KP_F4          0xff94
58 CONSTANT: XK_KP_Home        0xff95
59 CONSTANT: XK_KP_Left        0xff96
60 CONSTANT: XK_KP_Up          0xff97
61 CONSTANT: XK_KP_Right       0xff98
62 CONSTANT: XK_KP_Down        0xff99
63 CONSTANT: XK_KP_Prior       0xff9a
64 CONSTANT: XK_KP_Page_Up     0xff9a
65 CONSTANT: XK_KP_Next        0xff9b
66 CONSTANT: XK_KP_Page_Down   0xff9b
67 CONSTANT: XK_KP_End         0xff9c
68 CONSTANT: XK_KP_Begin       0xff9d
69 CONSTANT: XK_KP_Insert      0xff9e
70 CONSTANT: XK_KP_Delete      0xff9f
71 CONSTANT: XK_KP_Equal       0xffbd  ! Equals
72 CONSTANT: XK_KP_Multiply    0xffaa
73 CONSTANT: XK_KP_Add         0xffab
74 CONSTANT: XK_KP_Separator   0xffac  ! Separator, often comma
75 CONSTANT: XK_KP_Subtract    0xffad
76 CONSTANT: XK_KP_Decimal     0xffae
77 CONSTANT: XK_KP_Divide      0xffaf
78
79 CONSTANT: XK_KP_0           0xffb0
80 CONSTANT: XK_KP_1           0xffb1
81 CONSTANT: XK_KP_2           0xffb2
82 CONSTANT: XK_KP_3           0xffb3
83 CONSTANT: XK_KP_4           0xffb4
84 CONSTANT: XK_KP_5           0xffb5
85 CONSTANT: XK_KP_6           0xffb6
86 CONSTANT: XK_KP_7           0xffb7
87 CONSTANT: XK_KP_8           0xffb8
88 CONSTANT: XK_KP_9           0xffb9
89
90 ! Auxiliary functions; note the duplicate definitions for left and
91 ! right function keys; Sun keyboards and a few other manufacturers
92 ! have such function key groups on the left and/or right sides of the
93 ! keyboard. We've not found a keyboard with more than 35 function keys
94 ! total.
95 CONSTANT: XK_F1             0xffbe
96 CONSTANT: XK_F2             0xffbf
97 CONSTANT: XK_F3             0xffc0
98 CONSTANT: XK_F4             0xffc1
99 CONSTANT: XK_F5             0xffc2
100 CONSTANT: XK_F6             0xffc3
101 CONSTANT: XK_F7             0xffc4
102 CONSTANT: XK_F8             0xffc5
103 CONSTANT: XK_F9             0xffc6
104 CONSTANT: XK_F10            0xffc7
105 CONSTANT: XK_F11            0xffc8
106 CONSTANT: XK_L1             0xffc8
107 CONSTANT: XK_F12            0xffc9
108 CONSTANT: XK_L2             0xffc9
109 CONSTANT: XK_F13            0xffca
110 CONSTANT: XK_L3             0xffca
111 CONSTANT: XK_F14            0xffcb
112 CONSTANT: XK_L4             0xffcb
113 CONSTANT: XK_F15            0xffcc
114 CONSTANT: XK_L5             0xffcc
115 CONSTANT: XK_F16            0xffcd
116 CONSTANT: XK_L6             0xffcd
117 CONSTANT: XK_F17            0xffce
118 CONSTANT: XK_L7             0xffce
119 CONSTANT: XK_F18            0xffcf
120 CONSTANT: XK_L8             0xffcf
121 CONSTANT: XK_F19            0xffd0
122 CONSTANT: XK_L9             0xffd0
123 CONSTANT: XK_F20            0xffd1
124 CONSTANT: XK_L10            0xffd1
125 CONSTANT: XK_F21            0xffd2
126 CONSTANT: XK_R1             0xffd2
127 CONSTANT: XK_F22            0xffd3
128 CONSTANT: XK_R2             0xffd3
129 CONSTANT: XK_F23            0xffd4
130 CONSTANT: XK_R3             0xffd4
131 CONSTANT: XK_F24            0xffd5
132 CONSTANT: XK_R4             0xffd5
133 CONSTANT: XK_F25            0xffd6
134 CONSTANT: XK_R5             0xffd6
135 CONSTANT: XK_F26            0xffd7
136 CONSTANT: XK_R6             0xffd7
137 CONSTANT: XK_F27            0xffd8
138 CONSTANT: XK_R7             0xffd8
139 CONSTANT: XK_F28            0xffd9
140 CONSTANT: XK_R8             0xffd9
141 CONSTANT: XK_F29            0xffda
142 CONSTANT: XK_R9             0xffda
143 CONSTANT: XK_F30            0xffdb
144 CONSTANT: XK_R10            0xffdb
145 CONSTANT: XK_F31            0xffdc
146 CONSTANT: XK_R11            0xffdc
147 CONSTANT: XK_F32            0xffdd
148 CONSTANT: XK_R12            0xffdd
149 CONSTANT: XK_F33            0xffde
150 CONSTANT: XK_R13            0xffde
151 CONSTANT: XK_F34            0xffdf
152 CONSTANT: XK_R14            0xffdf
153 CONSTANT: XK_F35            0xffe0
154 CONSTANT: XK_R15            0xffe0
155
156 CONSTANT: XK_Shift_L        0xffe1  ! Left shift
157 CONSTANT: XK_Shift_R        0xffe2  ! Right shift
158 CONSTANT: XK_Control_L      0xffe3  ! Left control
159 CONSTANT: XK_Control_R      0xffe4  ! Right control
160 CONSTANT: XK_Caps_Lock      0xffe5  ! Caps lock
161 CONSTANT: XK_Shift_Lock     0xffe6  ! Shift lock
162
163 CONSTANT: XK_Meta_L         0xffe7  ! Left meta
164 CONSTANT: XK_Meta_R         0xffe8  ! Right meta
165 CONSTANT: XK_Alt_L          0xffe9  ! Left alt
166 CONSTANT: XK_Alt_R          0xffea  ! Right alt
167 CONSTANT: XK_Super_L        0xffeb  ! Left super
168 CONSTANT: XK_Super_R        0xffec  ! Right super
169 CONSTANT: XK_Hyper_L        0xffed  ! Left hyper
170 CONSTANT: XK_Hyper_R        0xffee  ! Right hyper
171
172 ! Keyboard (XKB) Extension function and modifier keys (from Appendix C
173 ! of "The X Keyboard Extension: Protocol Specification")
174 ! Byte 3 = 0xfe
175 CONSTANT: XK_ISO_Lock                      0xfe01
176 CONSTANT: XK_ISO_Level2_Latch              0xfe02
177 CONSTANT: XK_ISO_Level3_Shift              0xfe03
178 CONSTANT: XK_ISO_Level3_Latch              0xfe04
179 CONSTANT: XK_ISO_Level3_Lock               0xfe05
180 CONSTANT: XK_ISO_Level5_Shift              0xfe11
181 CONSTANT: XK_ISO_Level5_Latch              0xfe12
182 CONSTANT: XK_ISO_Level5_Lock               0xfe13
183 CONSTANT: XK_ISO_Group_Shift               0xff7e  ! Alias for mode_switch
184 CONSTANT: XK_ISO_Group_Latch               0xfe06
185 CONSTANT: XK_ISO_Group_Lock                0xfe07
186 CONSTANT: XK_ISO_Next_Group                0xfe08
187 CONSTANT: XK_ISO_Next_Group_Lock           0xfe09
188 CONSTANT: XK_ISO_Prev_Group                0xfe0a
189 CONSTANT: XK_ISO_Prev_Group_Lock           0xfe0b
190 CONSTANT: XK_ISO_First_Group               0xfe0c
191 CONSTANT: XK_ISO_First_Group_Lock          0xfe0d
192 CONSTANT: XK_ISO_Last_Group                0xfe0e
193 CONSTANT: XK_ISO_Last_Group_Lock           0xfe0f
194
195 CONSTANT: XK_ISO_Left_Tab                  0xfe20
196 CONSTANT: XK_ISO_Move_Line_Up              0xfe21
197 CONSTANT: XK_ISO_Move_Line_Down            0xfe22
198 CONSTANT: XK_ISO_Partial_Line_Up           0xfe23
199 CONSTANT: XK_ISO_Partial_Line_Down         0xfe24
200 CONSTANT: XK_ISO_Partial_Space_Left        0xfe25
201 CONSTANT: XK_ISO_Partial_Space_Right       0xfe26
202 CONSTANT: XK_ISO_Set_Margin_Left           0xfe27
203 CONSTANT: XK_ISO_Set_Margin_Right          0xfe28
204 CONSTANT: XK_ISO_Release_Margin_Left       0xfe29
205 CONSTANT: XK_ISO_Release_Margin_Right      0xfe2a
206 CONSTANT: XK_ISO_Release_Both_Margins      0xfe2b
207 CONSTANT: XK_ISO_Fast_Cursor_Left          0xfe2c
208 CONSTANT: XK_ISO_Fast_Cursor_Right         0xfe2d
209 CONSTANT: XK_ISO_Fast_Cursor_Up            0xfe2e
210 CONSTANT: XK_ISO_Fast_Cursor_Down          0xfe2f
211 CONSTANT: XK_ISO_Continuous_Underline      0xfe30
212 CONSTANT: XK_ISO_Discontinuous_Underline   0xfe31
213 CONSTANT: XK_ISO_Emphasize                 0xfe32
214 CONSTANT: XK_ISO_Center_Object             0xfe33
215 CONSTANT: XK_ISO_Enter                     0xfe34