-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcomp.klc
566 lines (452 loc) · 25.4 KB
/
comp.klc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
KBD Comp01 "US Keyboard with AltGr-based APL compositions"
COPYRIGHT "(c) 2020 Adam Brudzevski"
COMPANY "Adam Brudzevski"
LOCALENAME "en-US"
LOCALEID "00000409"
VERSION 1.0
SHIFTSTATE
0 //Column 4
1 //Column 5 : Shft
2 //Column 6 : Ctrl
6 //Column 7 : Ctrl Alt
7 //Column 8 : Shft Ctrl Alt
LAYOUT ;an extra '@' at the end is a dead key
//SC VK_ Cap 0 1 2 6 7
//-- ---- ---- ---- ---- ---- ---- ----
02 1 0 1 0021 -1 -1 -1 // DIGIT ONE, EXCLAMATION MARK, <none>, <none>, <none>
03 2 0 2 0040 -1 -1 -1 // DIGIT TWO, COMMERCIAL AT, <none>, <none>, <none>
04 3 0 3 0023 -1 -1 -1 // DIGIT THREE, NUMBER SIGN, <none>, <none>, <none>
05 4 0 4 0024 -1 -1 -1 // DIGIT FOUR, DOLLAR SIGN, <none>, <none>, <none>
06 5 0 5 0025 -1 -1 -1 // DIGIT FIVE, PERCENT SIGN, <none>, <none>, <none>
07 6 0 6 005e -1 -1 005e@ // DIGIT SIX, CIRCUMFLEX ACCENT, <none>, <none>, CIRCUMFLEX ACCENT
08 7 0 7 0026 -1 7@ -1 // DIGIT SEVEN, AMPERSAND, <none>, DIGIT SEVEN, <none>
09 8 0 8 002a -1 -1 002a@ // DIGIT EIGHT, ASTERISK, <none>, <none>, ASTERISK
0a 9 0 9 0028 -1 -1 0028@ // DIGIT NINE, LEFT PARENTHESIS, <none>, <none>, LEFT PARENTHESIS
0b 0 0 0 0029 -1 0@ 0029@ // DIGIT ZERO, RIGHT PARENTHESIS, <none>, DIGIT ZERO, RIGHT PARENTHESIS
0c OEM_MINUS 0 002d 005f -1 002d@ 005f@ // HYPHEN-MINUS, LOW LINE, <none>, HYPHEN-MINUS, LOW LINE
0d OEM_PLUS 0 003d 002b -1 003d@ -1 // EQUALS SIGN, PLUS SIGN, <none>, EQUALS SIGN, <none>
10 Q 1 q Q -1 -1 -1 // LATIN SMALL LETTER Q, LATIN CAPITAL LETTER Q, <none>, <none>, <none>
11 W 1 w W -1 w@ -1 // LATIN SMALL LETTER W, LATIN CAPITAL LETTER W, <none>, LATIN SMALL LETTER W, <none>
12 E 1 e E -1 e@ -1 // LATIN SMALL LETTER E, LATIN CAPITAL LETTER E, <none>, LATIN SMALL LETTER E, <none>
13 R 1 r R -1 r@ -1 // LATIN SMALL LETTER R, LATIN CAPITAL LETTER R, <none>, LATIN SMALL LETTER R, <none>
14 T 1 t T -1 t@ T@ // LATIN SMALL LETTER T, LATIN CAPITAL LETTER T, <none>, LATIN SMALL LETTER T, LATIN CAPITAL LETTER T
15 Y 1 y Y -1 -1 -1 // LATIN SMALL LETTER Y, LATIN CAPITAL LETTER Y, <none>, <none>, <none>
16 U 1 u U -1 u@ U@ // LATIN SMALL LETTER U, LATIN CAPITAL LETTER U, <none>, LATIN SMALL LETTER U, LATIN CAPITAL LETTER U
17 I 1 i I -1 i@ I@ // LATIN SMALL LETTER I, LATIN CAPITAL LETTER I, <none>, LATIN SMALL LETTER I, LATIN CAPITAL LETTER I
18 O 1 o O -1 o@ O@ // LATIN SMALL LETTER O, LATIN CAPITAL LETTER O, <none>, LATIN SMALL LETTER O, LATIN CAPITAL LETTER O
19 P 1 p P -1 p@ -1 // LATIN SMALL LETTER P, LATIN CAPITAL LETTER P, <none>, LATIN SMALL LETTER P, <none>
1a OEM_4 0 005b 007b 001b 005b@ -1 // LEFT SQUARE BRACKET, LEFT CURLY BRACKET, ESCAPE, LEFT SQUARE BRACKET, <none>
1b OEM_6 0 005d 007d 001d 005d@ -1 // RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET, INFORMATION SEPARATOR THREE, RIGHT SQUARE BRACKET, <none>
1e A 1 a A -1 a@ A@ // LATIN SMALL LETTER A, LATIN CAPITAL LETTER A, <none>, LATIN SMALL LETTER A, LATIN CAPITAL LETTER A
1f S 1 s S -1 -1 -1 // LATIN SMALL LETTER S, LATIN CAPITAL LETTER S, <none>, <none>, <none>
20 D 1 d D -1 -1 -1 // LATIN SMALL LETTER D, LATIN CAPITAL LETTER D, <none>, <none>, <none>
21 F 1 f F -1 -1 F@ // LATIN SMALL LETTER F, LATIN CAPITAL LETTER F, <none>, <none>, LATIN CAPITAL LETTER F
22 G 1 g G -1 -1 -1 // LATIN SMALL LETTER G, LATIN CAPITAL LETTER G, <none>, <none>, <none>
23 H 1 h H -1 -1 -1 // LATIN SMALL LETTER H, LATIN CAPITAL LETTER H, <none>, <none>, <none>
24 J 1 j J -1 -1 -1 // LATIN SMALL LETTER J, LATIN CAPITAL LETTER J, <none>, <none>, <none>
25 K 1 k K -1 -1 -1 // LATIN SMALL LETTER K, LATIN CAPITAL LETTER K, <none>, <none>, <none>
26 L 1 l L -1 l@ L@ // LATIN SMALL LETTER L, LATIN CAPITAL LETTER L, <none>, LATIN SMALL LETTER L, LATIN CAPITAL LETTER L
27 OEM_1 0 003b 003a -1 -1 003a@ // SEMICOLON, COLON, <none>, <none>, COLON
28 OEM_7 0 0027 0022 -1 0027@ 0022@ // APOSTROPHE, QUOTATION MARK, <none>, APOSTROPHE, QUOTATION MARK
29 OEM_3 0 0060 007e -1 -1 007e@ // GRAVE ACCENT, TILDE, <none>, <none>, TILDE
2b OEM_5 0 005c 007c 001c 005c@ 007c@ // REVERSE SOLIDUS, VERTICAL LINE, INFORMATION SEPARATOR FOUR, REVERSE SOLIDUS, VERTICAL LINE
2c Z 1 z Z -1 -1 Z@ // LATIN SMALL LETTER Z, LATIN CAPITAL LETTER Z, <none>, <none>, LATIN CAPITAL LETTER Z
2d X 1 x X -1 x@ -1 // LATIN SMALL LETTER X, LATIN CAPITAL LETTER X, <none>, LATIN SMALL LETTER X, <none>
2e C 1 c C -1 c@ -1 // LATIN SMALL LETTER C, LATIN CAPITAL LETTER C, <none>, LATIN SMALL LETTER C, <none>
2f V 1 v V -1 v@ V@ // LATIN SMALL LETTER V, LATIN CAPITAL LETTER V, <none>, LATIN SMALL LETTER V, LATIN CAPITAL LETTER V
30 B 1 b B -1 -1 -1 // LATIN SMALL LETTER B, LATIN CAPITAL LETTER B, <none>, <none>, <none>
31 N 1 n N -1 n@ -1 // LATIN SMALL LETTER N, LATIN CAPITAL LETTER N, <none>, LATIN SMALL LETTER N, <none>
32 M 1 m M -1 -1 -1 // LATIN SMALL LETTER M, LATIN CAPITAL LETTER M, <none>, <none>, <none>
33 OEM_COMMA 0 002c 003c -1 002c@ 003c@ // COMMA, LESS-THAN SIGN, <none>, COMMA, LESS-THAN SIGN
34 OEM_PERIOD 0 002e 003e -1 -1 003e@ // FULL STOP, GREATER-THAN SIGN, <none>, <none>, GREATER-THAN SIGN
35 OEM_2 0 002f 003f -1 002f@ -1 // SOLIDUS, QUESTION MARK, <none>, SOLIDUS, <none>
39 SPACE 0 0020 0020 0020 -1 -1 // SPACE, SPACE, SPACE, <none>, <none>
56 OEM_102 0 005c 007c 001c 005c@ 007c@ // REVERSE SOLIDUS, VERTICAL LINE, INFORMATION SEPARATOR FOUR, REVERSE SOLIDUS, VERTICAL LINE
53 DECIMAL 0 002e 002e -1 -1 -1 // FULL STOP, FULL STOP, , ,
DEADKEY 005e
005e 2227 // ^ -> ∧
007e 2372 // ~ -> ⍲
007c 2191 // | -> ↑
0076 22c4 // v -> ⋄
002d 2206 // - -> ∆
003d 2359 // = -> ⍙
0020 005e // -> ^
DEADKEY 0037
0037 2308 // 7 -> ⌈
002d 2260 // - -> ≠
003d 2262 // = -> ≢
0020 0037 // -> 7
DEADKEY 002a
004f 235f // O -> ⍟
003a 2363 // : -> ⍣
0022 2363 // " -> ⍣
0020 002a // -> *
DEADKEY 0028
0028 2282 // ( -> ⊂
005f 2286 // _ -> ⊆
0020 0028 // -> (
DEADKEY 0030
007e 236c // ~ -> ⍬
0020 0030 // -> 0
DEADKEY 0029
0029 2283 // ) -> ⊃
0020 0029 // -> )
DEADKEY 002d
003c 2190 // < -> ←
003a 00f7 // : -> ÷
005b 2339 // [ -> ⌹
005d 2339 // ] -> ⌹
007c 22a3 // | -> ⊣
002f 233f // / -> ⌿
005c 2340 // \ -> ⍀
002c 236a // , -> ⍪
004f 2296 // O -> ⊖
006f 2355 // o -> ⍕
003e 2192 // > -> →
0076 2207 // v -> ∇
002d 00af // - -> ¯
005e 2206 // ^ -> ∆
004c 2260 // L -> ≠
0037 2260 // 7 -> ≠
005a 2262 // Z -> ≢
0020 002d // -> -
DEADKEY 005f
007c 22a5 // | -> ⊥
003c 2264 // < -> ≤
003e 2265 // > -> ≥
003d 2261 // = -> ≡
0028 2286 // ( -> ⊆
0069 2378 // i -> ⍸
0065 2377 // e -> ⍷
0054 2336 // T -> ⌶
006f 234e // o -> ⍎
0041 2359 // A -> ⍙
0020 005f // -> _
DEADKEY 003d
002f 2260 // / -> ≠
003d 2261 // = -> ≡
005f 2261 // _ -> ≡
0037 2262 // 7 -> ≢
005b 2338 // [ -> ⌸
005d 2338 // ] -> ⌸
005e 2359 // ^ -> ⍙
0020 003d // -> =
DEADKEY 0077
0077 2375 // w -> ⍵
005f 2379 // _ -> ⍹
0020 0077 // -> w
DEADKEY 0065
0065 220a // e -> ∊
005f 2377 // _ -> ⍷
0020 0065 // -> e
DEADKEY 0072
0072 2374 // r -> ⍴
0020 0072 // -> r
DEADKEY 0074
0074 22a4 // t -> ⊤
005f 2336 // _ -> ⌶
006f 2355 // o -> ⍕
0020 0074 // -> t
DEADKEY 0054
0054 22a4 // T -> ⊤
006f 2355 // o -> ⍕
0020 0054 // -> T
DEADKEY 0075
0075 222a // u -> ∪
0020 0075 // -> u
DEADKEY 0055
0055 222a // U -> ∪
0020 0055 // -> U
DEADKEY 0069
0069 2373 // i -> ⍳
005f 2378 // _ -> ⍸
0020 0069 // -> i
DEADKEY 0049
0049 2336 // I -> ⌶
0020 0049 // -> I
DEADKEY 006f
006f 2218 // o -> ∘
003a 2364 // : -> ⍤
0022 2364 // " -> ⍤
005f 234e // _ -> ⍎
002d 2355 // - -> ⍕
006e 235d // n -> ⍝
0054 2355 // T -> ⍕
0020 006f // -> o
DEADKEY 004f
002a 235f // * -> ⍟
004f 25cb // O -> ○
003a 2365 // : -> ⍥
0022 2365 // " -> ⍥
007c 233d // | -> ⌽
005c 2349 // \ -> ⍉
002d 2296 // - -> ⊖
0020 004f // -> O
DEADKEY 0070
0070 2374 // p -> ⍴
0020 0070 // -> p
DEADKEY 005b
002d 2339 // - -> ⌹
007c 2337 // | -> ⌷
0027 235e // ' -> ⍞
005d 2395 // ] -> ⎕
003a 2360 // : -> ⍠
003d 2338 // = -> ⌸
003c 233a // < -> ⌺
0020 005b // -> [
DEADKEY 005d
007c 2337 // | -> ⌷
0027 235e // ' -> ⍞
005b 2395 // [ -> ⎕
003a 2360 // : -> ⍠
003d 2338 // = -> ⌸
003e 233a // > -> ⌺
0020 005d // -> ]
DEADKEY 0061
0061 237a // a -> ⍺
005f 2376 // _ -> ⍶
0020 0061 // -> a
DEADKEY 0041
007c 234b // | -> ⍋
0041 2206 // A -> ∆
005f 2359 // _ -> ⍙
0020 0041 // -> A
DEADKEY 0046
0046 2308 // F -> ⌈
0020 0046 // -> F
DEADKEY 006c
006c 230a // l -> ⌊
0020 006c // -> l
DEADKEY 004c
004c 230a // L -> ⌊
002d 2260 // - -> ≠
003d 2262 // = -> ≢
0020 004c // -> L
DEADKEY 003a
002d 00f7 // - -> ÷
003a 00a8 // : -> ¨
007e 2368 // ~ -> ⍨
002a 2363 // * -> ⍣
006f 2364 // o -> ⍤
004f 2365 // O -> ⍥
005b 2360 // [ -> ⍠
005d 2360 // ] -> ⍠
0020 003a // -> :
DEADKEY 0027
005b 235e // [ -> ⍞
005d 235e // ] -> ⍞
0020 0027 // -> '
DEADKEY 0022
0022 00a8 // " -> ¨
007e 2368 // ~ -> ⍨
002a 2363 // * -> ⍣
006f 2364 // o -> ⍤
004f 2365 // O -> ⍥
0020 0022 // -> "
DEADKEY 007e
005e 2372 // ^ -> ⍲
0076 2371 // v -> ⍱
003a 2368 // : -> ⍨
0022 2368 // " -> ⍨
0030 236c // 0 -> ⍬
0020 007e // -> ~
DEADKEY 005c
002f 00d7 // / -> ×
002d 2340 // - -> ⍀
0020 005c // -> \
DEADKEY 007c
005f 22a5 // _ -> ⊥
002d 22a2 // - -> ⊢
005b 2337 // [ -> ⌷
005d 2337 // ] -> ⌷
004f 233d // O -> ⌽
005e 2191 // ^ -> ↑
0076 2193 // v -> ↓
0020 007c // -> |
DEADKEY 005a
002d 2262 // - -> ≢
0020 005a // -> Z
DEADKEY 0078
0078 00d7 // x -> ×
0020 0078 // -> x
DEADKEY 0063
0063 2282 // c -> ⊂
005f 2286 // _ -> ⊆
0020 0063 // -> c
DEADKEY 0076
0076 2228 // v -> ∨
007e 2371 // ~ -> ⍱
005e 22c4 // ^ -> ⋄
002d 2207 // - -> ∇
007c 2193 // | -> ↓
0020 0076 // -> v
DEADKEY 0056
007c 2352 // | -> ⍒
0056 2207 // V -> ∇
0020 0056 // -> V
DEADKEY 006e
006e 2229 // n -> ∩
006f 235d // o -> ⍝
0020 006e // -> n
DEADKEY 002c
002d 236a // - -> ⍪
0020 002c // -> ,
DEADKEY 003c
002d 2190 // - -> ←
003d 2264 // = -> ≤
005f 2264 // _ -> ≤
005b 233a // [ -> ⌺
003e 22c4 // > -> ⋄
0020 003c // -> <
DEADKEY 003e
005f 2265 // _ -> ≥
005d 233a // ] -> ⌺
003c 22c4 // < -> ⋄
002d 2192 // - -> →
0020 003e // -> >
DEADKEY 002f
003d 2260 // = -> ≠
002d 233f // - -> ⌿
005c 2340 // \ -> ⍀
005c 00d7 // \ -> ×
0020 002f // -> /
DEADKEY 005c
002f 00d7 // / -> ×
002d 233f // - -> ⌿
0020 005c // -> \
DEADKEY 007c
005f 22a5 // _ -> ⊥
002d 22a2 // - -> ⊢
005b 2337 // [ -> ⌷
005d 2337 // ] -> ⌷
004f 233d // O -> ⌽
005e 2191 // ^ -> ↑
0076 2193 // v -> ↓
0020 007c // -> |
KEYNAME
01 Esc
0e Backspace
0f Tab
1c Enter
1d Ctrl
2a Shift
36 "Right Shift"
37 "Num *"
38 Alt
39 Space
3a "Caps Lock"
3b F1
3c F2
3d F3
3e F4
3f F5
40 F6
41 F7
42 F8
43 F9
44 F10
45 Pause
46 "Scroll Lock"
47 "Num 7"
48 "Num 8"
49 "Num 9"
4a "Num -"
4b "Num 4"
4c "Num 5"
4d "Num 6"
4e "Num +"
4f "Num 1"
50 "Num 2"
51 "Num 3"
52 "Num 0"
53 "Num Del"
54 "Sys Req"
57 F11
58 F12
7c F13
7d F14
7e F15
7f F16
80 F17
81 F18
82 F19
83 F20
84 F21
85 F22
86 F23
87 F24
KEYNAME_EXT
1c "Num Enter"
1d "Right Ctrl"
35 "Num /"
37 "Prnt Scrn"
38 "Right Alt"
45 "Num Lock"
46 Break
47 Home
48 Up
49 "Page Up"
4b Left
4d Right
4f End
50 Down
51 "Page Down"
52 Insert
53 Delete
54 <00>
56 Help
5b "Left Windows"
5c "Right Windows"
5d Application
KEYNAME_DEAD
005e "CIRCUMFLEX ACCENT"
0037 "DIGIT SEVEN"
002a "ASTERISK"
0028 "LEFT PARENTHESIS"
0030 "DIGIT ZERO"
0029 "RIGHT PARENTHESIS"
002d "HYPHEN-MINUS"
005f "LOW LINE"
003d "EQUALS SIGN"
0077 "LATIN SMALL LETTER W"
0065 "LATIN SMALL LETTER E"
0072 "LATIN SMALL LETTER R"
0074 "LATIN SMALL LETTER T"
0054 "LATIN CAPITAL LETTER T"
0075 "LATIN SMALL LETTER U"
0055 "LATIN CAPITAL LETTER U"
0069 "LATIN SMALL LETTER I"
0049 "LATIN CAPITAL LETTER I"
006f "LATIN SMALL LETTER O"
004f "LATIN CAPITAL LETTER O"
0070 "LATIN SMALL LETTER P"
005b "LEFT SQUARE BRACKET"
005d "RIGHT SQUARE BRACKET"
0061 "LATIN SMALL LETTER A"
0041 "LATIN CAPITAL LETTER A"
0046 "LATIN CAPITAL LETTER F"
006c "LATIN SMALL LETTER L"
004c "LATIN CAPITAL LETTER L"
003a "COLON"
0027 "APOSTROPHE"
0022 "QUOTATION MARK"
007e "TILDE"
005c "REVERSE SOLIDUS"
007c "VERTICAL LINE"
005a "LATIN CAPITAL LETTER Z"
0078 "LATIN SMALL LETTER X"
0063 "LATIN SMALL LETTER C"
0076 "LATIN SMALL LETTER V"
0056 "LATIN CAPITAL LETTER V"
006e "LATIN SMALL LETTER N"
002c "COMMA"
003c "LESS-THAN SIGN"
003e "GREATER-THAN SIGN"
002f "SOLIDUS"
005c "REVERSE SOLIDUS"
007c "VERTICAL LINE"
DESCRIPTIONS
0409 US Keyboard with AltGr-based APL compositions
LANGUAGENAMES
0409 English (United States)
ENDKBD