| 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 |
| 34 | Version = 3 |
| 35 | CapsLock = 0x3b |
| 36 | ScrollLock = 0x0f |
| 37 | NumLock = 0x22 |
| 38 | LShift = 0x4b |
| 39 | RShift = 0x56 |
| 40 | LCommand = 0x66 |
| 41 | RCommand = 0x67 |
| 42 | LControl = 0x5c |
| 43 | RControl = 0x60 |
| 44 | LOption = 0x5d |
| 45 | ROption = 0x5f |
| 46 | Menu = 0x68 |
| 47 | |
| 48 | # |
| 49 | # Lock settings |
| 50 | # To set NumLock, do the following: |
| 51 | # LockSettings = NumLock |
| 52 | # |
| 53 | # To set everything, do the following: |
| 54 | # LockSettings = CapsLock NumLock ScrollLock |
| 55 | # |
| 56 | LockSettings = |
| 57 | # Legend: |
| 58 | # n = Normal |
| 59 | # s = Shift |
| 60 | # c = Control |
| 61 | # C = CapsLock |
| 62 | # o = Option |
| 63 | # Key n s c o os C Cs Co Cos |
| 64 | Key 0x00 = '' '' '' '' '' '' '' '' '' |
| 65 | Key 0x01 = 0x1b 0x1b 0x1b 0x1b 0x1b 0x1b 0x1b 0x1b 0x1b |
| 66 | Key 0x02 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 67 | Key 0x03 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 68 | Key 0x04 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 69 | Key 0x05 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 70 | Key 0x06 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 71 | Key 0x07 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 72 | Key 0x08 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 73 | Key 0x09 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 74 | Key 0x0a = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 75 | Key 0x0b = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 76 | Key 0x0c = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 77 | Key 0x0d = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 78 | Key 0x0e = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 79 | Key 0x0f = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 80 | Key 0x10 = 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 0x10 |
| 81 | Key 0x11 = '<' '>' '' '' '' '<' '>' '' '' |
| 82 | Key 0x12 = '+' '1' '' '`' '' '+' '1' '`' '' |
| 83 | Key 0x13 = 0xc49b '2' '' '@' '' 0xc49b '2' '@' '' |
| 84 | Key 0x14 = 0xc5a1 '3' '' '#' '' 0xc5a1 '3' '#' '' |
| 85 | Key 0x15 = 0xc48d '4' '' '$' '' 0xc48d '4' '$' '' |
| 86 | Key 0x16 = 0xc599 '5' '' '~' '' 0xc599 '5' '~' '' |
| 87 | Key 0x17 = 0xc5be '6' '' '^' '' 0xc5be '6' '^' '' |
| 88 | Key 0x18 = 0xc3bd '7' '' '&' '' 0xc3bd '7' '&' '' |
| 89 | Key 0x19 = 0xc3a1 '8' '' '*' '' 0xc3a1 '8' '*' '' |
| 90 | Key 0x1a = 0xc3ad '9' '' '{' '' 0xc3ad '9' '{' '' |
| 91 | Key 0x1b = 0xc3a9 '0' '' '}' '' 0xc3a9 '0' '}' '' |
| 92 | Key 0x1c = '=' '%' '' 0xcb9a ',' '=' '%' 0xcb9a ',' |
| 93 | Key 0x1d = 0xc2b4 0xcb87 '' '^' '-' 0xc2b4 0xcb87 '^' '-' |
| 94 | Key 0x1e = 0x08 0x08 0x7f 0x08 0x08 0x08 0x08 0x08 0x08 |
| 95 | Key 0x1f = 0x05 0x05 0x05 0x05 0x05 0x05 0x05 0x05 0x05 |
| 96 | Key 0x20 = 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 |
| 97 | Key 0x21 = 0x0b 0x0b 0x0b 0x0b 0x0b 0x0b 0x0b 0x0b 0x0b |
| 98 | Key 0x22 = '' '' '' '' '' '' '' '' '' |
| 99 | Key 0x23 = '/' '/' '/' '/' '/' '/' '/' '/' '/' |
| 100 | Key 0x24 = '*' '*' '*' '*' '*' '*' '*' '*' '*' |
| 101 | Key 0x25 = '-' '-' '-' '-' '-' '-' '-' '-' '-' |
| 102 | Key 0x26 = 0x09 0x09 0x09 0x09 0x09 0x09 0x09 0x09 0x09 |
| 103 | Key 0x27 = 'q' 'Q' 0x11 '' '' 'Q' 'q' '' '' |
| 104 | Key 0x28 = 'w' 'W' 0x17 '' '' 'W' 'w' '' '' |
| 105 | Key 0x29 = 'e' 'E' 0x05 '' '' 'E' 'e' '' '' |
| 106 | Key 0x2a = 'r' 'R' 0x12 '' '' 'R' 'r' '' '' |
| 107 | Key 0x2b = 't' 'T' 0x14 '' '' 'T' 't' '' '' |
| 108 | Key 0x2c = 'z' 'Z' 0x1a '' '' 'Z' 'z' '' '' |
| 109 | Key 0x2d = 'u' 'U' 0x15 '' '' 'U' 'u' '' '' |
| 110 | Key 0x2e = 'i' 'I' 0x09 '' '' 'I' 'i' '' '' |
| 111 | Key 0x2f = 'o' 'O' 0x0f '' '' 'O' 'o' '' '' |
| 112 | Key 0x30 = 'p' 'P' 0x10 '' '' 'P' 'p' '' '' |
| 113 | Key 0x31 = 0xc3ba '/' 0x1b '[' '' 0xc39a '/' '[' '' |
| 114 | Key 0x32 = ')' '(' 0x1d ']' '' ')' '(' ']' '' |
| 115 | Key 0x33 = 0xc2a8 '`' 0x1c 0xc2a8 '"' 0xc2a8 '`' 0xc2a8 '"' |
| 116 | Key 0x34 = 0x7f 0x7f 0x7f 0x7f 0x7f 0x7f 0x7f 0x7f 0x7f |
| 117 | Key 0x35 = 0x04 0x04 0x04 0x04 0x04 0x04 0x04 0x04 0x04 |
| 118 | Key 0x36 = 0x0c 0x0c 0x0c 0x0c 0x0c 0x0c 0x0c 0x0c 0x0c |
| 119 | Key 0x37 = 0x01 '7' 0x01 0x01 '7' 0x01 '7' 0x01 '7' |
| 120 | Key 0x38 = 0x1e '8' 0x1e 0x1e '8' 0x1e '8' 0x1e '8' |
| 121 | Key 0x39 = 0x0b '9' 0x0b 0x0b '9' 0x0b '9' 0x0b '9' |
| 122 | Key 0x3a = '+' '+' '+' '+' '+' '+' '+' '+' '+' |
| 123 | Key 0x3b = '' '' '' '' '' '' '' '' '' |
| 124 | Key 0x3c = 'a' 'A' 0x01 '' '' 'A' 'a' '' '' |
| 125 | Key 0x3d = 's' 'S' 0x13 '' '' 'S' 's' '' '' |
| 126 | Key 0x3e = 'd' 'D' 0x04 '' '' 'D' 'd' '' '' |
| 127 | Key 0x3f = 'f' 'F' 0x06 '' '' 'F' 'f' '' '' |
| 128 | Key 0x40 = 'g' 'G' 0x07 '' '' 'G' 'g' '' '' |
| 129 | Key 0x41 = 'h' 'H' 0x08 '' '' 'H' 'h' '' '' |
| 130 | Key 0x42 = 'j' 'J' 0x0a '' '' 'J' 'j' '' '' |
| 131 | Key 0x43 = 'k' 'K' 0x0b '' '' 'K' 'k' '' '' |
| 132 | Key 0x44 = 'l' 'L' 0x0c 0xc582 0xc581 'L' 'l' 0xc581 0xc582 |
| 133 | Key 0x45 = 0xc5af '"' '' ';' 0xe280a6 0xc5ae '"' ';' 0xe280a6 |
| 134 | Key 0x46 = 0xc2a7 '!' '' '\'' '~' 0xc2a7 '!' '\'' '~' |
| 135 | Key 0x47 = 0x0a 0x0a 0x0a 0x0a 0x0a 0x0a 0x0a 0x0a 0x0a |
| 136 | Key 0x48 = 0x1c '4' 0x1c 0x1c '4' 0x1c '4' 0x1c '4' |
| 137 | Key 0x49 = '' '5' '' '' '5' '' '5' '' '5' |
| 138 | Key 0x4a = 0x1d '6' 0x1d 0x1d '6' 0x1d '6' 0x1d '6' |
| 139 | Key 0x4b = '' '' '' '' '' '' '' '' '' |
| 140 | Key 0x4c = 'y' 'Y' 0x19 '' '' 'Y' 'y' '' '' |
| 141 | Key 0x4d = 'x' 'X' 0x18 '' '' 'X' 'x' '' '' |
| 142 | Key 0x4e = 'c' 'C' 0x03 '' '' 'C' 'c' '' '' |
| 143 | Key 0x4f = 'v' 'V' 0x16 '' '' 'V' 'v' '' '' |
| 144 | Key 0x50 = 'b' 'B' 0x02 '' '' 'B' 'b' '' '' |
| 145 | Key 0x51 = 'n' 'N' 0x0e '' '' 'N' 'n' '' '' |
| 146 | Key 0x52 = 'm' 'M' 0x0d '' '' 'M' 'm' '' '' |
| 147 | Key 0x53 = ',' '?' '' '<' 0xe289a4 ',' '?' '<' 0xe289a4 |
| 148 | Key 0x54 = '.' ':' '' '>' 0xe289a5 '.' ':' '>' 0xe289a5 |
| 149 | Key 0x55 = '-' '_' 0x1f '-' 0xe28094 '-' '_' '-' 0xe28094 |
| 150 | Key 0x56 = '' '' '' '' '' '' '' '' '' |
| 151 | Key 0x57 = 0x1e 0x1e 0x1e 0x1e 0x1e 0x1e 0x1e 0x1e 0x1e |
| 152 | Key 0x58 = 0x04 '1' 0x04 0x04 '1' 0x04 '1' 0x04 '1' |
| 153 | Key 0x59 = 0x1f '2' 0x1f 0x1f '2' 0x1f '2' 0x1f '2' |
| 154 | Key 0x5a = 0x0c '3' 0x0c 0x0c '3' 0x0c '3' 0x0c '3' |
| 155 | Key 0x5b = 0x0a 0x0a 0x0a 0x0a 0x0a 0x0a 0x0a 0x0a 0x0a |
| 156 | Key 0x5c = '' '' '' '' '' '' '' '' '' |
| 157 | Key 0x5d = '' '' '' '' '' '' '' '' '' |
| 158 | Key 0x5e = ' ' ' ' 0x00 ' ' ' ' ' ' ' ' ' ' ' ' |
| 159 | Key 0x5f = '' '' '' '' '' '' '' '' '' |
| 160 | Key 0x60 = '' '' '' '' '' '' '' '' '' |
| 161 | Key 0x61 = 0x1c 0x1c 0x1c 0x1c 0x1c 0x1c 0x1c 0x1c 0x1c |
| 162 | Key 0x62 = 0x1f 0x1f 0x1f 0x1f 0x1f 0x1f 0x1f 0x1f 0x1f |
| 163 | Key 0x63 = 0x1d 0x1d 0x1d 0x1d 0x1d 0x1d 0x1d 0x1d 0x1d |
| 164 | Key 0x64 = 0x05 '0' 0x05 0x05 '0' 0x05 '0' 0x05 '0' |
| 165 | Key 0x65 = 0x7f ',' 0x7f 0x7f ',' 0x7f ',' 0x7f ',' |
| 166 | Key 0x66 = '' '' '' '' '' '' '' '' '' |
| 167 | Key 0x67 = '' '' '' '' '' '' '' '' '' |
| 168 | Key 0x68 = '' '' '' '' '' '' '' '' '' |
| 169 | Key 0x69 = '\\' '|' '' '' '' '\\' '|' '' '' |
| 170 | Key 0x6a = '' '' '' '' '' '' '' '' '' |
| 171 | Key 0x6b = '' '' '' '' '' '' '' '' '' |
| 172 | Key 0x6c = '' '' '' '' '' '' '' '' '' |
| 173 | Key 0x6d = '' '' '' '' '' '' '' '' '' |
| 174 | Key 0x6e = '' '' '' '' '' '' '' '' '' |
| 175 | Key 0x6f = '' '' '' '' '' '' '' '' '' |
| 176 | Key 0x70 = '' '' '' '' '' '' '' '' '' |
| 177 | Key 0x71 = '' '' '' '' '' '' '' '' '' |
| 178 | Key 0x72 = '' '' '' '' '' '' '' '' '' |
| 179 | Key 0x73 = '' '' '' '' '' '' '' '' '' |
| 180 | Key 0x74 = '' '' '' '' '' '' '' '' '' |
| 181 | Key 0x75 = '' '' '' '' '' '' '' '' '' |
| 182 | Key 0x76 = '' '' '' '' '' '' '' '' '' |
| 183 | Key 0x77 = '' '' '' '' '' '' '' '' '' |
| 184 | Key 0x78 = '' '' '' '' '' '' '' '' '' |
| 185 | Key 0x79 = '' '' '' '' '' '' '' '' '' |
| 186 | Key 0x7a = '' '' '' '' '' '' '' '' '' |
| 187 | Key 0x7b = '' '' '' '' '' '' '' '' '' |
| 188 | Key 0x7c = '' '' '' '' '' '' '' '' '' |
| 189 | Key 0x7d = '' '' '' '' '' '' '' '' '' |
| 190 | Key 0x7e = 0xc2bb 0xc2bb 0xc2bb 0xc2bb 0xc2bb 0xc2bb 0xc2bb 0xc2bb 0xc2bb |
| 191 | Key 0x7f = 0xc2a0 0xc2a0 0xc2a0 0xc2a0 0xc2a0 0xc2a0 0xc2a0 0xc2a0 0xc2a0 |
| 192 | |
| 193 | Acute ' ' = 0xc2b4 |
| 194 | Acute 'A' = 0xc381 |
| 195 | Acute 'E' = 0xc389 |
| 196 | Acute 'I' = 0xc38d |
| 197 | Acute 'O' = 0xc393 |
| 198 | Acute 'U' = 0xc39a |
| 199 | Acute 'Y' = 0xc39d |
| 200 | Acute 'a' = 0xc3a1 |
| 201 | Acute 'e' = 0xc3a9 |
| 202 | Acute 'i' = 0xc3ad |
| 203 | Acute 'o' = 0xc3b3 |
| 204 | Acute 'u' = 0xc3ba |
| 205 | Acute 'y' = 0xc3bd |
| 206 | AcuteTab = Normal Shift CapsLock CapsLock-Shift |
| 207 | |
| 208 | # until Haiku supports ring natively, |
| 209 | # use it in place of grave. |
| 210 | Grave ' ' = 0xcb9a |
| 211 | Grave 'U' = 0xc5ae |
| 212 | Grave 'u' = 0xc5af |
| 213 | GraveTab = Normal Shift Option Shift-Option CapsLock CapsLock-Shift CapsLock-Option CapsLock-Shift-Option |
| 214 | |
| 215 | # TODO |
| 216 | # none of these work as intended... |
| 217 | # at the position of key 0x1d (let 0x17 be!) |
| 218 | # CIRCUMFLEX ACCENT - '^' |
| 219 | # MODIFIER LETTER CIRCUMFLEX ACCENT - 0xcb86 |
| 220 | # COMBINING CIRCUMFLEX ACCENT - 0xcc82 |
| 221 | Circumflex ' ' = '^' |
| 222 | Circumflex 'A' = 0xc382 |
| 223 | Circumflex 'E' = 0xc38a |
| 224 | Circumflex 'I' = 0xc38e |
| 225 | Circumflex 'O' = 0xc394 |
| 226 | Circumflex 'U' = 0xc39b |
| 227 | Circumflex 'a' = 0xc3a2 |
| 228 | Circumflex 'e' = 0xc3aa |
| 229 | Circumflex 'i' = 0xc3ae |
| 230 | Circumflex 'o' = 0xc3b4 |
| 231 | Circumflex 'u' = 0xc3bb |
| 232 | GraveTab = Normal Shift Option Shift-Option CapsLock CapsLock-Shift CapsLock-Option CapsLock-Shift-Option |
| 233 | |
| 234 | Diaeresis ' ' = 0xc2a8 |
| 235 | Diaeresis 'A' = 0xc384 |
| 236 | Diaeresis 'E' = 0xc38b |
| 237 | Diaeresis 'I' = 0xc38f |
| 238 | Diaeresis 'O' = 0xc396 |
| 239 | Diaeresis 'U' = 0xc39c |
| 240 | Diaeresis 'Y' = 0xc5b8 |
| 241 | Diaeresis 'a' = 0xc3a4 |
| 242 | Diaeresis 'e' = 0xc3ab |
| 243 | Diaeresis 'i' = 0xc3af |
| 244 | Diaeresis 'o' = 0xc3b6 |
| 245 | Diaeresis 'u' = 0xc3bc |
| 246 | Diaeresis 'y' = 0xc3bf |
| 247 | DiaeresisTab = Normal Shift CapsLock CapsLock-Shift |
| 248 | |
| 249 | # until Haiku supports caron natively, |
| 250 | # use it in place of tilde. |
| 251 | Tilde ' ' = 0xcb87 |
| 252 | Tilde 'C' = 0xc48c |
| 253 | Tilde 'D' = 0xc48e |
| 254 | Tilde 'N' = 0xc587 |
| 255 | Tilde 'R' = 0xc598 |
| 256 | Tilde 'S' = 0xc5a0 |
| 257 | Tilde 'T' = 0xc5a4 |
| 258 | Tilde 'Z' = 0xc5bd |
| 259 | Tilde 'c' = 0xc48d |
| 260 | Tilde 'd' = 0xc48f |
| 261 | Tilde 'e' = 0xc49b |
| 262 | Tilde 'n' = 0xc588 |
| 263 | Tilde 'r' = 0xc599 |
| 264 | Tilde 's' = 0xc5a1 |
| 265 | Tilde 't' = 0xc5a5 |
| 266 | Tilde 'z' = 0xc5be |
| 267 | TildeTab = Normal Shift CapsLock CapsLock-Shift |