1#!/bin/keymap -s
2#
3#	Raw key numbering for 102-key keyboard...
4#                                                                                          [sys]       [brk]
5#                                                                                           0x7e        0x7f
6# [esc]   [ f1] [ f2] [ f3] [ f4]    [ f5] [ f6] [ f7] [ f8]    [ f9] [f10] [f11] [f12]    [prn] [scr] [pau]
7#  0x01    0x02  0x03  0x04  0x05     0x06  0x07  0x08  0x09     0x0a  0x0b  0x0c  0x0d     0x0e  0x0f  0x10     K E Y P A D   K E Y S
8#
9# [ ` ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 0 ] [ - ] [ = ] [ bck ]    [ins] [hme] [pup]    [num] [ / ] [ * ] [ - ]
10#  0x11  0x12  0x13  0x14  0x15  0x16  0x17  0x18  0x19  0x1a  0x1b  0x1c  0x1d   0x1e      0x1f  0x20  0x21     0x22  0x23  0x24  0x25
11#
12# [ tab ] [ q ] [ w ] [ e ] [ r ] [ t ] [ y ] [ u ] [ i ] [ o ] [ p ] [ [ ] [ ] ] [ \ ]    [del] [end] [pdn]    [ 7 ] [ 8 ] [ 9 ] [ + ]
13#   0x26   0x27  0x28  0x29  0x2a  0x2b  0x2c  0x2d  0x2e  0x2f  0x30  0x31  0x32  0x33     0x34  0x35  0x36     0x37  0x38  0x39  0x3a
14#
15# [ caps ] [ a ] [ s ] [ d ] [ f ] [ g ] [ h ] [ j ] [ k ] [ l ] [ ; ] [ ' ]  [ enter ]                         [ 4 ] [ 5 ] [ 6 ]
16#   0x3b    0x3c  0x3d  0x3e  0x3f  0x40  0x41  0x42  0x43  0x44  0x45  0x46     0x47                            0x48  0x49  0x4a
17#
18# [shft] [ \ ] [ z ] [ x ] [ c ] [ v ] [ b ] [ n ] [ m ] [ , ] [ . ] [ / ]    [ shift ]          [ up]          [ 1 ] [ 2 ] [ 3 ] [ent]
19#  0x4b   0x69  0x4c  0x4d  0x4e  0x4f  0x50  0x51  0x52  0x53  0x54  0x55       0x56             0x57           0x58  0x59  0x5a  0x5b
20#
21# [ ctrl ]          [ cmd ]             [ space ]             [ cmd ]          [ ctrl ]    [lft] [dwn] [rgt]    [ 0 ] [ . ]
22#   0x5c              0x5d                 0x5e                 0x5f             0x60       0x61  0x62  0x63     0x64  0x65
23#
24#	NOTE: Key 0x69 does not exist on US keyboards
25#	NOTE: On a Microsoft Natural Keyboard:
26#			left option  = 0x66
27#			right option = 0x67
28#			menu key     = 0x68
29#	NOTE: On an Apple Extended Keyboard:
30#			left option  = 0x66
31#			right option = 0x67
32#			keypad '='   = 0x6a
33#			power key    = 0x6b
34Version = 3
35CapsLock = 0x3b
36ScrollLock = 0x0f
37NumLock = 0x22
38LShift = 0x4b
39RShift = 0x56
40LCommand = 0x5d
41RCommand = 0x67
42LControl = 0x5c
43RControl = 0x60
44LOption = 0x66
45ROption = 0x5f
46Menu = 0x68
47#
48# Lock settings
49# To set NumLock, do the following:
50#   LockSettings = NumLock
51#
52# To set everything, do the following:
53#   LockSettings = CapsLock NumLock ScrollLock
54#
55LockSettings = 
56# Legend:
57#   n = Normal
58#   s = Shift
59#   c = Control
60#   C = CapsLock
61#   o = Option
62# Key      n        s        c        o        os       C        Cs       Co       Cos     
63Key 0x00 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
64Key 0x01 = 0x1b     0x1b     0x1b     0x1b     0x1b     0x1b     0x1b     0x1b     0x1b     
65Key 0x02 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
66Key 0x03 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
67Key 0x04 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
68Key 0x05 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
69Key 0x06 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
70Key 0x07 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
71Key 0x08 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
72Key 0x09 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
73Key 0x0a = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
74Key 0x0b = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
75Key 0x0c = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
76Key 0x0d = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
77Key 0x0e = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
78Key 0x0f = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
79Key 0x10 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
80Key 0x11 = 0xe0b98f 0xe0b99b ''       0xe0b98f 0xe0b99b 0xe0b99b 0xe0b98f 0xe0b99b 0xe0b98f 
81Key 0x12 = 0xe0b8bf 0xe0b985 ''       0xc2a1   0xc2b9   0xe0b985 0xe0b8bf 0xc2b9   0xc2a1   
82Key 0x13 = '/'      0xe0b991 0x00     0xc2b2   0xc2ba   0xe0b991 '/'      0xc2ba   0xc2b2   
83Key 0x14 = '-'      0xe0b992 ''       0xc2b3   0xc2aa   0xe0b992 '-'      0xc2aa   0xc2b3   
84Key 0x15 = 0xe0b8a0 0xe0b993 ''       0xc2a4   0xc2a3   0xe0b993 0xe0b8a0 0xc2a3   0xc2a4   
85Key 0x16 = 0xe0b896 0xe0b994 ''       0xe282ac ''       0xe0b994 0xe0b896 ''       0xe282ac 
86Key 0x17 = 0xe0b8b8 0xe0b8b9 0x1e     0xc2bc   0xe0b8b9 0xe0b8b9 0xe0b8b8 0xc2bc   0xe0b8b9 
87Key 0x18 = 0xe0b8b6 0xe0b98e ''       0xc2bd   ''       0xe0b98e 0xe0b8b6 ''       0xc2bd   
88Key 0x19 = 0xe0b884 0xe0b995 ''       0xc2be   ''       0xe0b995 0xe0b884 ''       0xc2be   
89Key 0x1a = 0xe0b895 0xe0b996 ''       0xe28098 ''       0xe0b996 0xe0b895 ''       0xe28098 
90Key 0x1b = 0xe0b888 0xe0b997 ''       0xe28099 0xc2b1   0xe0b997 0xe0b888 0xc2b1   0xe28099 
91Key 0x1c = 0xe0b882 0xe0b998 0x1f     0xc2a5   0xc2af   0xe0b998 0xe0b882 0xc2af   0xc2a5   
92Key 0x1d = 0xe0b88a 0xe0b999 ''       0xc397   0xc3b7   0xe0b999 0xe0b88a 0xc3b7   0xc397   
93Key 0x1e = 0x08     0x08     0x7f     0x08     0x08     0x08     0x08     0x08     0x08     
94Key 0x1f = 0x05     0x05     0x05     0x05     0x05     0x05     0x05     0x05     0x05     
95Key 0x20 = 0x01     0x01     0x01     0x01     0x01     0x01     0x01     0x01     0x01     
96Key 0x21 = 0x0b     0x0b     0x0b     0x0b     0x0b     0x0b     0x0b     0x0b     0x0b     
97Key 0x22 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
98Key 0x23 = '/'      '/'      '/'      '/'      '/'      '/'      '/'      '/'      '/'      
99Key 0x24 = '*'      '*'      '*'      '*'      '*'      '*'      '*'      '*'      '*'      
100Key 0x25 = '-'      '-'      '-'      '-'      '-'      '-'      '-'      '-'      '-'      
101Key 0x26 = 0x09     0x09     0x09     0x09     0x09     0x09     0x09     0x09     0x09     
102Key 0x27 = 0xe0b986 0xe0b990 0x11     0xc3a4   0xc384   0xe0b990 0xe0b986 0xc384   0xc3a4   
103Key 0x28 = 0xe0b984 '"'      0x17     0xc3a5   0xc385   '"'      0xe0b984 0xc385   0xc3a5   
104Key 0x29 = 0xe0b8b3 0xe0b88e 0x05     0xc3a9   0xc389   0xe0b88e 0xe0b8b3 0xc389   0xc3a9   
105Key 0x2a = 0xe0b89e 0xe0b891 0x12     0xc2ae   ''       0xe0b891 0xe0b89e ''       0xc2ae   
106Key 0x2b = 0xe0b8b0 0xe0b898 0x14     0xc3be   0xc39e   0xe0b898 0xe0b8b0 0xc39e   0xc3be   
107Key 0x2c = 0xe0b8b1 0xe0b98d 0x19     0xc3bc   0xc39c   0xe0b98d 0xe0b8b1 0xc39c   0xc3bc   
108Key 0x2d = 0xe0b8b5 0xe0b98a 0x15     0xc3ba   0xc39a   0xe0b98a 0xe0b8b5 0xc39a   0xc3ba   
109Key 0x2e = 0xe0b8a3 0xe0b893 0x09     0xc3ad   0xc38d   0xe0b893 0xe0b8a3 0xc38d   0xc3ad   
110Key 0x2f = 0xe0b899 0xe0b8af 0x0f     0xc3b3   0xc393   0xe0b8af 0xe0b899 0xc393   0xc3b3   
111Key 0x30 = 0xe0b8a2 0xe0b88d 0x10     0xc3b6   0xc396   0xe0b88d 0xe0b8a2 0xc396   0xc3b6   
112Key 0x31 = 0xe0b89a 0xe0b890 0x1b     0xc2ab   ''       0xe0b89a 0xe0b890 ''       0xc2ab   
113Key 0x32 = 0xe0b8a5 ','      0x1d     0xc2bb   ''       0xe0b8a5 ','      ''       0xc2bb   
114Key 0x33 = 0xe0b885 0xe0b883 0x1c     0xc2ac   0xc2a6   0xe0b885 0xe0b883 0xc2a6   0xc2ac   
115Key 0x34 = 0x7f     0x7f     0x7f     0x7f     0x7f     0x7f     0x7f     0x7f     0x7f     
116Key 0x35 = 0x04     0x04     0x04     0x04     0x04     0x04     0x04     0x04     0x04     
117Key 0x36 = 0x0c     0x0c     0x0c     0x0c     0x0c     0x0c     0x0c     0x0c     0x0c     
118Key 0x37 = 0x01     '7'      0x01     0x01     '7'      0x01     '7'      '7'      0x01     
119Key 0x38 = 0x1e     '8'      0x1e     0x1e     '8'      0x1e     '8'      '8'      0x1e     
120Key 0x39 = 0x0b     '9'      0x0b     0x0b     '9'      0x0b     '9'      '9'      0x0b     
121Key 0x3a = '+'      '+'      '+'      '+'      '+'      '+'      '+'      '+'      '+'      
122Key 0x3b = ''       ''       ''       ''       ''       ''       ''       ''       ''       
123Key 0x3c = 0xe0b89f 0xe0b8a4 0x01     0xc3a1   0xc381   0xe0b8a4 0xe0b89f 0xc381   0xc3a1   
124Key 0x3d = 0xe0b8ab 0xe0b886 0x13     0xc39f   0xc2a7   0xe0b886 0xe0b8ab 0xc2a7   0xc39f   
125Key 0x3e = 0xe0b881 0xe0b88f 0x04     0xc3b0   0xc390   0xe0b88f 0xe0b881 0xc390   0xc3b0   
126Key 0x3f = 0xe0b894 0xe0b982 0x06     ''       ''       0xe0b982 0xe0b894 ''       ''       
127Key 0x40 = 0xe0b980 0xe0b88c 0x07     ''       ''       0xe0b88c 0xe0b980 ''       ''       
128Key 0x41 = 0xe0b989 0xe0b987 0x08     ''       ''       0xe0b987 0xe0b989 ''       ''       
129Key 0x42 = 0xe0b988 0xe0b98b 0x0a     ''       ''       0xe0b98b 0xe0b988 ''       ''       
130Key 0x43 = 0xe0b8b2 0xe0b8a9 0x0b     ''       ''       0xe0b8a9 0xe0b8b2 ''       ''       
131Key 0x44 = 0xe0b8aa 0xe0b8a8 0x0c     0xc3b8   0xc398   0xe0b8a8 0xe0b8aa 0xc398   0xc3b8   
132Key 0x45 = 0xe0b8a7 0xe0b88b ''       0xc2b6   0xc2b0   0xe0b8a7 0xe0b88b 0xc2b0   0xc2b6   
133Key 0x46 = 0xe0b887 '.'      ''       0xc2b4   0xc2a8   0xe0b887 '.'      0xc2b4   0xc2a8   
134Key 0x47 = 0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     
135Key 0x48 = 0x1c     '4'      0x1c     0x1c     '4'      0x1c     '4'      '4'      0x1c     
136Key 0x49 = ''       '5'      ''       ''       '5'      ''       '5'      '5'      ''       
137Key 0x4a = 0x1d     '6'      0x1d     0x1d     '6'      0x1d     '6'      '6'      0x1d     
138Key 0x4b = ''       ''       ''       ''       ''       ''       ''       ''       ''       
139Key 0x4c = 0xe0b89c '('      0x1a     0xc3a6   0xc386   '('      0xe0b89c 0xc386   0xc3a6   
140Key 0x4d = 0xe0b89b ')'      0x18     ''       ''       ')'      0xe0b89b ''       ''       
141Key 0x4e = 0xe0b981 0xe0b889 0x03     0xc2a9   0xc2a2   0xe0b889 0xe0b981 0xc2a9   0xc2a2   
142Key 0x4f = 0xe0b8ad 0xe0b8ae 0x16     0xe2889a ''       0xe0b8ae 0xe0b8ad ''       0xe2889a 
143Key 0x50 = 0xe0b8b4 0xe0b8ba 0x02     ''       ''       0xe0b8ba 0xe0b8b4 ''       ''       
144Key 0x51 = 0xe0b8b7 0xe0b98c 0x0e     0xc3b1   0xc391   0xe0b98c 0xe0b8b7 0xc391   0xc3b1   
145Key 0x52 = 0xe0b897 '?'      0x0d     0xc2b5   ''       '?'      0xe0b897 ''       0xc2b5   
146Key 0x53 = 0xe0b8a1 0xe0b892 ''       0xc3a7   0xc387   0xe0b8a1 0xe0b892 0xc387   0xc3a7   
147Key 0x54 = 0xe0b983 0xe0b8ac ''       0xc2b7   0xc2b8   0xe0b983 0xe0b8ac 0xc2b8   0xc2b7   
148Key 0x55 = 0xe0b89d 0xe0b8a6 ''       ''       ''       0xe0b89d 0xe0b8a6 ''       ''       
149Key 0x56 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
150Key 0x57 = 0x1e     0x1e     0x1e     0x1e     0x1e     0x1e     0x1e     0x1e     0x1e     
151Key 0x58 = 0x04     '1'      0x04     0x04     '1'      0x04     '1'      '1'      0x04     
152Key 0x59 = 0x1f     '2'      0x1f     0x1f     '2'      0x1f     '2'      '2'      0x1f     
153Key 0x5a = 0x0c     '3'      0x0c     0x0c     '3'      0x0c     '3'      '3'      0x0c     
154Key 0x5b = 0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     
155Key 0x5c = ''       ''       ''       ''       ''       ''       ''       ''       ''       
156Key 0x5d = ''       ''       ''       ''       ''       ''       ''       ''       ''       
157Key 0x5e = ' '      ' '      0x00     ' '      ''       ' '      ' '      ''       ' '      
158Key 0x5f = ''       ''       ''       ''       ''       ''       ''       ''       ''       
159Key 0x60 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
160Key 0x61 = 0x1c     0x1c     0x1c     0x1c     0x1c     0x1c     0x1c     0x1c     0x1c     
161Key 0x62 = 0x1f     0x1f     0x1f     0x1f     0x1f     0x1f     0x1f     0x1f     0x1f     
162Key 0x63 = 0x1d     0x1d     0x1d     0x1d     0x1d     0x1d     0x1d     0x1d     0x1d     
163Key 0x64 = 0x05     '0'      0x05     0x05     '0'      0x05     '0'      '0'      0x05     
164Key 0x65 = 0x7f     '.'      0x7f     0x7f     '.'      0x7f     '.'      '.'      0x7f     
165Key 0x66 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
166Key 0x67 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
167Key 0x68 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
168Key 0x69 = '\\'     '|'      0x1c     0xc2ac   0xc2a6   '\\'     '|'      0xc2a6   0xc2ac   
169Key 0x6a = ''       ''       ''       ''       ''       ''       ''       ''       ''       
170Key 0x6b = ''       ''       ''       ''       ''       ''       ''       ''       ''       
171Key 0x6c = ''       ''       ''       ''       ''       ''       ''       ''       ''       
172Key 0x6d = ''       ''       ''       ''       ''       ''       ''       ''       ''       
173Key 0x6e = ''       ''       ''       ''       ''       ''       ''       ''       ''       
174Key 0x6f = ''       ''       ''       ''       ''       ''       ''       ''       ''       
175Key 0x70 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
176Key 0x71 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
177Key 0x72 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
178Key 0x73 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
179Key 0x74 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
180Key 0x75 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
181Key 0x76 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
182Key 0x77 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
183Key 0x78 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
184Key 0x79 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
185Key 0x7a = ''       ''       ''       ''       ''       ''       ''       ''       ''       
186Key 0x7b = ''       ''       ''       ''       ''       ''       ''       ''       ''       
187Key 0x7c = ''       ''       ''       ''       ''       ''       ''       ''       ''       
188Key 0x7d = ''       ''       ''       ''       ''       ''       ''       ''       ''       
189Key 0x7e = ''       ''       ''       ''       ''       ''       ''       ''       ''       
190Key 0x7f = ''       ''       ''       ''       ''       ''       ''       ''       ''       
191Acute ' '       = 0xc2b4   
192Acute 'A'       = 0xc381   
193Acute 'C'       = 0xc387   
194Acute 'E'       = 0xc389   
195Acute 'I'       = 0xc38d   
196Acute 'O'       = 0xc393   
197Acute 'U'       = 0xc39a   
198Acute 'Y'       = 0xc39d   
199Acute 'a'       = 0xc3a1   
200Acute 'c'       = 0xc3a7   
201Acute 'e'       = 0xc3a9   
202Acute 'i'       = 0xc3ad   
203Acute 'o'       = 0xc3b3   
204Acute 'u'       = 0xc3ba   
205Acute 'y'       = 0xc3bd   
206AcuteTab = Option CapsLock-Option 
207Grave ' '       = '`'      
208Grave 'A'       = 0xc380   
209Grave 'E'       = 0xc388   
210Grave 'I'       = 0xc38c   
211Grave 'O'       = 0xc392   
212Grave 'U'       = 0xc399   
213Grave 'a'       = 0xc3a0   
214Grave 'e'       = 0xc3a8   
215Grave 'i'       = 0xc3ac   
216Grave 'o'       = 0xc3b2   
217Grave 'u'       = 0xc3b9   
218GraveTab = Option CapsLock-Option 
219Circumflex ' '       = '^'      
220Circumflex 'A'       = 0xc382   
221Circumflex 'E'       = 0xc38a   
222Circumflex 'I'       = 0xc38e   
223Circumflex 'O'       = 0xc394   
224Circumflex 'U'       = 0xc39b   
225Circumflex 'a'       = 0xc3a2   
226Circumflex 'e'       = 0xc3aa   
227Circumflex 'i'       = 0xc3ae   
228Circumflex 'o'       = 0xc3b4   
229Circumflex 'u'       = 0xc3bb   
230CircumflexTab = Option-Shift 
231Diaeresis ' '       = 0xc2a8   
232Diaeresis 'A'       = 0xc384   
233Diaeresis 'E'       = 0xc38b   
234Diaeresis 'I'       = 0xc38f   
235Diaeresis 'O'       = 0xc396   
236Diaeresis 'U'       = 0xc39c   
237Diaeresis 'Y'       = 0xc5b8   
238Diaeresis 'a'       = 0xc3a4   
239Diaeresis 'e'       = 0xc3ab   
240Diaeresis 'i'       = 0xc3af   
241Diaeresis 'o'       = 0xc3b6   
242Diaeresis 'u'       = 0xc3bc   
243Diaeresis 'y'       = 0xc3bf   
244DiaeresisTab = Option-Shift 
245Tilde ' '       = '~'      
246Tilde 'A'       = 0xc383   
247Tilde 'O'       = 0xc395   
248Tilde 'N'       = 0xc391   
249Tilde 'a'       = 0xc3a3   
250Tilde 'o'       = 0xc3b5   
251Tilde 'n'       = 0xc3b1   
252TildeTab = Option-Shift 
253