1 /* Copyright 2019 Rys Sommefeldt
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 // Sendstring lookup tables for UK layouts
21 #include "keymap_uk.h"
26 const uint8_t ascii_to_shift_lut
[16] PROGMEM
= {
27 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
28 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
29 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
30 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
32 KCLUT_ENTRY(0, 1, 1, 0, 1, 1, 1, 0),
33 KCLUT_ENTRY(1, 1, 1, 1, 0, 0, 0, 0),
34 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
35 KCLUT_ENTRY(0, 0, 1, 0, 1, 0, 1, 1),
36 KCLUT_ENTRY(1, 1, 1, 1, 1, 1, 1, 1),
37 KCLUT_ENTRY(1, 1, 1, 1, 1, 1, 1, 1),
38 KCLUT_ENTRY(1, 1, 1, 1, 1, 1, 1, 1),
39 KCLUT_ENTRY(1, 1, 1, 0, 0, 0, 1, 1),
40 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
41 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
42 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
43 KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0),
46 const uint8_t ascii_to_keycode_lut
[128] PROGMEM
= {
47 // NUL SOH STX ETX EOT ENQ ACK BEL
48 XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
,
49 // BS TAB LF VT FF CR SO SI
50 KC_BSPC
, KC_TAB
, KC_ENT
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
,
51 // DLE DC1 DC2 DC3 DC4 NAK SYN ETB
52 XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
,
53 // CAN EM SUB ESC FS GS RS US
54 XXXXXXX
, XXXXXXX
, XXXXXXX
, KC_ESC
, XXXXXXX
, XXXXXXX
, XXXXXXX
, XXXXXXX
,
57 UK_SPC
, UK_1
, UK_2
, UK_HASH
, UK_4
, UK_5
, UK_7
, UK_QUOT
,
59 UK_9
, UK_0
, UK_8
, UK_EQL
, UK_COMM
, UK_MINS
, UK_DOT
, UK_SLSH
,
61 UK_0
, UK_1
, UK_2
, UK_3
, UK_4
, UK_5
, UK_6
, UK_7
,
63 UK_8
, UK_9
, UK_SCLN
, UK_SCLN
, UK_COMM
, UK_EQL
, UK_DOT
, UK_SLSH
,
65 UK_QUOT
, UK_A
, UK_B
, UK_C
, UK_D
, UK_E
, UK_F
, UK_G
,
67 UK_H
, UK_I
, UK_J
, UK_K
, UK_L
, UK_M
, UK_N
, UK_O
,
69 UK_P
, UK_Q
, UK_R
, UK_S
, UK_T
, UK_U
, UK_V
, UK_W
,
71 UK_X
, UK_Y
, UK_Z
, UK_LBRC
, UK_BSLS
, UK_RBRC
, UK_6
, UK_MINS
,
73 UK_GRV
, UK_A
, UK_B
, UK_C
, UK_D
, UK_E
, UK_F
, UK_G
,
75 UK_H
, UK_I
, UK_J
, UK_K
, UK_L
, UK_M
, UK_N
, UK_O
,
77 UK_P
, UK_Q
, UK_R
, UK_S
, UK_T
, UK_U
, UK_V
, UK_W
,
79 UK_X
, UK_Y
, UK_Z
, UK_LBRC
, UK_BSLS
, UK_RBRC
, UK_HASH
, KC_DEL