1 # Kernel keymap for Macintoshes. This uses 7 modifier combinations.
5 keycode 0x69 = Print_Screen
7 keycode 0x37 = Window_R
12 altgr keycode 0x00 = Hex_A
15 altgr keycode 0x02 = Hex_D
17 altgr keycode 0x03 = Hex_F
23 altgr keycode 0x08 = Hex_C
27 altgr keycode 0x0b = Hex_B
31 altgr keycode 0x0e = Hex_E
35 keycode 0x12 = one exclam
36 alt keycode 0x12 = Meta_one
37 keycode 0x13 = two at at
38 control keycode 0x13 = nul
39 shift control keycode 0x13 = nul
40 alt keycode 0x13 = Meta_two
41 keycode 0x14 = three numbersign
42 control keycode 0x14 = Escape
43 alt keycode 0x14 = Meta_three
44 keycode 0x15 = four dollar dollar
45 control keycode 0x15 = Control_backslash
46 alt keycode 0x15 = Meta_four
47 keycode 0x16 = six asciicircum
48 control keycode 0x16 = Control_asciicircum
49 alt keycode 0x16 = Meta_six
50 keycode 0x17 = five percent
51 control keycode 0x17 = Control_bracketright
52 alt keycode 0x17 = Meta_five
53 keycode 0x18 = equal plus
54 alt keycode 0x18 = Meta_equal
55 keycode 0x19 = nine parenleft bracketright
56 alt keycode 0x19 = Meta_nine
57 keycode 0x1a = seven ampersand braceleft
58 control keycode 0x1a = Control_underscore
59 alt keycode 0x1a = Meta_seven
60 keycode 0x1b = minus underscore backslash
61 control keycode 0x1b = Control_underscore
62 shift control keycode 0x1b = Control_underscore
63 alt keycode 0x1b = Meta_minus
64 keycode 0x1c = eight asterisk bracketleft
65 control keycode 0x1c = Delete
66 alt keycode 0x1c = Meta_eight
67 keycode 0x1d = zero parenright braceright
68 alt keycode 0x1d = Meta_zero
69 keycode 0x1e = bracketright braceright asciitilde
70 control keycode 0x1e = Control_bracketright
71 alt keycode 0x1e = Meta_bracketright
74 keycode 0x21 = bracketleft braceleft
75 control keycode 0x21 = Escape
76 alt keycode 0x21 = Meta_bracketleft
80 alt keycode 0x24 = Meta_Control_m
83 keycode 0x27 = apostrophe quotedbl
84 control keycode 0x27 = Control_g
85 alt keycode 0x27 = Meta_apostrophe
87 keycode 0x29 = semicolon colon
88 alt keycode 0x29 = Meta_semicolon
89 keycode 0x2a = backslash bar
90 control keycode 0x2a = Control_backslash
91 alt keycode 0x2a = Meta_backslash
92 keycode 0x2b = comma less
93 alt keycode 0x2b = Meta_comma
94 keycode 0x2c = slash question
95 control keycode 0x2c = Delete
96 alt keycode 0x2c = Meta_slash
99 keycode 0x2f = period greater
100 control keycode 0x2f = Compose
101 alt keycode 0x2f = Meta_period
102 keycode 0x30 = Tab Tab
103 alt keycode 0x30 = Meta_Tab
104 keycode 0x31 = space space
105 control keycode 0x31 = nul
106 alt keycode 0x31 = Meta_space
107 keycode 0x32 = grave asciitilde
108 control keycode 0x32 = nul
109 alt keycode 0x32 = Meta_grave
110 keycode 0x33 = Delete Delete
111 control keycode 0x33 = BackSpace
112 alt keycode 0x33 = Meta_Delete
114 keycode 0x35 = Escape Escape
115 alt keycode 0x35 = Meta_Escape
116 keycode 0x36 = Control
117 keycode 0x37 = Window
119 keycode 0x39 = Caps_Lock
122 alt keycode 0x3b = Decr_Console
124 alt keycode 0x3c = Incr_Console
129 keycode 0x41 = KP_Period
131 keycode 0x43 = KP_Multiply
133 keycode 0x45 = KP_Add
135 keycode 0x47 = Num_Lock
136 # shift keycode 0x47 = Bare_Num_Lock
140 keycode 0x4b = KP_Divide
141 keycode 0x4c = KP_Enter
143 keycode 0x4e = KP_Subtract
147 #keycode 0x51 = KP_Equals
149 alt keycode 0x52 = Ascii_0
150 altgr keycode 0x52 = Hex_0
152 alt keycode 0x53 = Ascii_1
153 altgr keycode 0x53 = Hex_1
155 alt keycode 0x54 = Ascii_2
156 altgr keycode 0x54 = Hex_2
158 alt keycode 0x55 = Ascii_3
159 altgr keycode 0x55 = Hex_3
161 alt keycode 0x56 = Ascii_4
162 altgr keycode 0x56 = Hex_4
164 alt keycode 0x57 = Ascii_5
165 altgr keycode 0x57 = Hex_5
167 alt keycode 0x58 = Ascii_6
168 altgr keycode 0x58 = Hex_6
170 alt keycode 0x59 = Ascii_7
171 altgr keycode 0x59 = Hex_7
173 alt keycode 0x5b = Ascii_8
174 altgr keycode 0x5b = Hex_8
176 alt keycode 0x5c = Ascii_9
177 altgr keycode 0x5c = Hex_9
181 keycode 0x60 = F5 F15 Console_17
182 control keycode 0x60 = F5
183 alt keycode 0x60 = Console_5
184 control alt keycode 0x60 = Console_5
185 keycode 0x61 = F6 F16 Console_18
186 control keycode 0x61 = F6
187 alt keycode 0x61 = Console_6
188 control alt keycode 0x61 = Console_6
189 keycode 0x62 = F7 F17 Console_19
190 control keycode 0x62 = F7
191 alt keycode 0x62 = Console_7
192 control alt keycode 0x62 = Console_7
193 keycode 0x63 = F3 F13 Console_15
194 control keycode 0x63 = F3
195 alt keycode 0x63 = Console_3
196 control alt keycode 0x63 = Console_3
197 keycode 0x64 = F8 F18 Console_20
198 control keycode 0x64 = F8
199 alt keycode 0x64 = Console_8
200 control alt keycode 0x64 = Console_8
201 keycode 0x65 = F9 F19 Console_21
202 control keycode 0x65 = F9
203 alt keycode 0x65 = Console_9
204 control alt keycode 0x65 = Console_9
206 keycode 0x67 = F11 F11 Console_23
207 control keycode 0x67 = F11
208 alt keycode 0x67 = Console_11
209 control alt keycode 0x67 = Console_11
213 keycode 0x6b = Scroll_Lock Show_Memory Show_Registers
214 control keycode 0x6b = Show_State
215 alt keycode 0x6b = Scroll_Lock
217 keycode 0x6d = F10 F20 Console_22
218 control keycode 0x6d = F10
219 alt keycode 0x6d = Console_10
220 control alt keycode 0x6d = Console_10
222 keycode 0x6f = F12 F12 Console_24
223 control keycode 0x6f = F12
224 alt keycode 0x6f = Console_12
225 control alt keycode 0x6f = Console_12
228 keycode 0x72 = Insert
231 shift keycode 0x74 = Scroll_Backward
232 keycode 0x75 = Remove
233 keycode 0x76 = F4 F14 Console_16
234 control keycode 0x76 = F4
235 alt keycode 0x76 = Console_4
236 control alt keycode 0x76 = Console_4
238 keycode 0x78 = F2 F12 Console_14
239 control keycode 0x78 = F2
240 alt keycode 0x78 = Console_2
241 control alt keycode 0x78 = Console_2
243 shift keycode 0x79 = Scroll_Forward
244 keycode 0x7a = F1 F11 Console_13
245 control keycode 0x7a = F1
246 alt keycode 0x7a = Console_1
247 control alt keycode 0x7a = Console_1
248 keycode 0x7b = Shift_R
250 keycode 0x7d = Control_R
253 #keycode 0x7f = Power
254 control shift keycode 0x7f = Boot
255 string F1 = "\033[[A"
256 string F2 = "\033[[B"
257 string F3 = "\033[[C"
258 string F4 = "\033[[D"
259 string F5 = "\033[[E"
260 string F6 = "\033[17~"
261 string F7 = "\033[18~"
262 string F8 = "\033[19~"
263 string F9 = "\033[20~"
264 string F10 = "\033[21~"
265 string F11 = "\033[23~"
266 string F12 = "\033[24~"
267 string F13 = "\033[25~"
268 string F14 = "\033[26~"
269 string F15 = "\033[28~"
270 string F16 = "\033[29~"
271 string F17 = "\033[31~"
272 string F18 = "\033[32~"
273 string F19 = "\033[33~"
274 string F20 = "\033[34~"
275 string Find = "\033[1~"
276 string Insert = "\033[2~"
277 string Remove = "\033[3~"
278 string Select = "\033[4~"
279 string Prior = "\033[5~"
280 string Next = "\033[6~"
281 string Macro = "\033[M"
282 string Pause = "\033[P"
283 compose '`' 'A' to 'À'
284 compose '`' 'a' to 'à'
285 compose '\'' 'A' to 'Á'
286 compose '\'' 'a' to 'á'
287 compose '^' 'A' to 'Â'
288 compose '^' 'a' to 'â'
289 compose '~' 'A' to 'Ã'
290 compose '~' 'a' to 'ã'
291 compose '"' 'A' to 'Ä'
292 compose '"' 'a' to 'ä'
293 compose 'O' 'A' to 'Å'
294 compose 'o' 'a' to 'å'
295 compose '0' 'A' to 'Å'
296 compose '0' 'a' to 'å'
297 compose 'A' 'A' to 'Å'
298 compose 'a' 'a' to 'å'
299 compose 'A' 'E' to 'Æ'
300 compose 'a' 'e' to 'æ'
301 compose ',' 'C' to 'Ç'
302 compose ',' 'c' to 'ç'
303 compose '`' 'E' to 'È'
304 compose '`' 'e' to 'è'
305 compose '\'' 'E' to 'É'
306 compose '\'' 'e' to 'é'
307 compose '^' 'E' to 'Ê'
308 compose '^' 'e' to 'ê'
309 compose '"' 'E' to 'Ë'
310 compose '"' 'e' to 'ë'
311 compose '`' 'I' to 'Ì'
312 compose '`' 'i' to 'ì'
313 compose '\'' 'I' to 'Í'
314 compose '\'' 'i' to 'í'
315 compose '^' 'I' to 'Î'
316 compose '^' 'i' to 'î'
317 compose '"' 'I' to 'Ï'
318 compose '"' 'i' to 'ï'
319 compose '-' 'D' to 'Ð'
320 compose '-' 'd' to 'ð'
321 compose '~' 'N' to 'Ñ'
322 compose '~' 'n' to 'ñ'
323 compose '`' 'O' to 'Ò'
324 compose '`' 'o' to 'ò'
325 compose '\'' 'O' to 'Ó'
326 compose '\'' 'o' to 'ó'
327 compose '^' 'O' to 'Ô'
328 compose '^' 'o' to 'ô'
329 compose '~' 'O' to 'Õ'
330 compose '~' 'o' to 'õ'
331 compose '"' 'O' to 'Ö'
332 compose '"' 'o' to 'ö'
333 compose '/' 'O' to 'Ø'
334 compose '/' 'o' to 'ø'
335 compose '`' 'U' to 'Ù'
336 compose '`' 'u' to 'ù'
337 compose '\'' 'U' to 'Ú'
338 compose '\'' 'u' to 'ú'
339 compose '^' 'U' to 'Û'
340 compose '^' 'u' to 'û'
341 compose '"' 'U' to 'Ü'
342 compose '"' 'u' to 'ü'
343 compose '\'' 'Y' to 'Ý'
344 compose '\'' 'y' to 'ý'
345 compose 'T' 'H' to 'Þ'
346 compose 't' 'h' to 'þ'
347 compose 's' 's' to 'ß'
348 compose '"' 'y' to 'ÿ'
349 compose 's' 'z' to 'ß'
350 compose 'i' 'j' to 'ÿ'