aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan <fauxpark@gmail.com>2020-03-18 11:09:12 +1100
committerGitHub <noreply@github.com>2020-03-17 17:09:12 -0700
commitc670240503b0af720f0fb729dfa1d07a993e63e7 (patch)
treebd1f7d32564e77d2192a05a7560ec1f666e2f4ad
parent59d6b0faab108cc49ca5b3b83d9d169d445f50bd (diff)
downloadqmk_firmware-c670240503b0af720f0fb729dfa1d07a993e63e7.tar.gz
qmk_firmware-c670240503b0af720f0fb729dfa1d07a993e63e7.zip
Update UK keymap and sendstring LUT (#8458)
-rw-r--r--quantum/keymap_extras/keymap_uk.h339
-rw-r--r--quantum/keymap_extras/sendstring_uk.h4
2 files changed, 196 insertions, 147 deletions
diff --git a/quantum/keymap_extras/keymap_uk.h b/quantum/keymap_extras/keymap_uk.h
index d4329e547..589fb4ea1 100644
--- a/quantum/keymap_extras/keymap_uk.h
+++ b/quantum/keymap_extras/keymap_uk.h
@@ -13,165 +13,214 @@
13 * You should have received a copy of the GNU General Public License 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/>. 14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */ 15 */
16#ifndef KEYMAP_UK_H
17#define KEYMAP_UK_H
18 16
19#include "keymap.h" 17#pragma once
20
21// Normal characters
22#define UK_HASH KC_NUHS
23#define UK_BSLS KC_NUBS
24
25// Shifted characters
26#define UK_NOT LSFT(KC_GRV)
27#define UK_DQUO LSFT(KC_2)
28#define UK_PND LSFT(KC_3)
29#define UK_AT LSFT(KC_QUOT)
30#define UK_TILD LSFT(KC_NUHS)
31#define UK_PIPE LSFT(KC_NUBS)
32 18
33// Alt Gr-ed characters 19#include "keymap.h"
34#define UK_BRKP ALGR(KC_GRV)
35#define UK_EURO ALGR(KC_4)
36#define UK_EACT ALGR(KC_E)
37#define UK_UACT ALGR(KC_U)
38#define UK_IACT ALGR(KC_I)
39#define UK_OACT ALGR(KC_O)
40#define UK_AACT ALGR(KC_A)
41
42// Duplicate US keyboard so that we don't have to use it
43#define UK_A KC_A
44#define UK_B KC_B
45#define UK_C KC_C
46#define UK_D KC_D
47#define UK_E KC_E
48#define UK_F KC_F
49#define UK_G KC_G
50#define UK_H KC_H
51#define UK_I KC_I
52#define UK_J KC_J
53#define UK_K KC_K
54#define UK_L KC_L
55#define UK_M KC_M
56#define UK_N KC_N
57#define UK_O KC_O
58#define UK_P KC_P
59#define UK_Q KC_Q
60#define UK_R KC_R
61#define UK_S KC_S
62#define UK_T KC_T
63#define UK_U KC_U
64#define UK_V KC_V
65#define UK_W KC_W
66#define UK_X KC_X
67#define UK_Y KC_Y
68#define UK_Z KC_Z
69 20
70#define UK_1 KC_1 21// clang-format off
71#define UK_2 KC_2
72#define UK_3 KC_3
73#define UK_4 KC_4
74#define UK_5 KC_5
75#define UK_6 KC_6
76#define UK_7 KC_7
77#define UK_8 KC_8
78#define UK_9 KC_9
79#define UK_0 KC_0
80 22
81#define UK_F1 KC_F1 23/*
82#define UK_F2 KC_F2 24 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
83#define UK_F3 KC_F3 25 * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │       │
84#define UK_F4 KC_F4 26 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
85#define UK_F5 KC_F5 27 * │     │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │     │
86#define UK_F6 KC_F6 28 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
87#define UK_F7 KC_F7 29 * │      │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ # │    │
88#define UK_F8 KC_F8 30 * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
89#define UK_F9 KC_F9 31 * │    │ \ │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │          │
90#define UK_F10 KC_F10 32 * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
91#define UK_F11 KC_F11 33 * │    │    │    │                        │    │    │    │    │
92#define UK_F12 KC_F12 34 * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
93#define UK_F13 KC_F13 35 */
94#define UK_F14 KC_F14 36// Row 1
95#define UK_F15 KC_F15 37#define UK_GRV KC_GRV // `
96#define UK_F16 KC_F16 38#define UK_1 KC_1 // 1
97#define UK_F17 KC_F17 39#define UK_2 KC_2 // 2
98#define UK_F18 KC_F18 40#define UK_3 KC_3 // 3
99#define UK_F19 KC_F19 41#define UK_4 KC_4 // 4
100#define UK_F20 KC_F20 42#define UK_5 KC_5 // 5
101#define UK_F21 KC_F21 43#define UK_6 KC_6 // 6
102#define UK_F22 KC_F22 44#define UK_7 KC_7 // 7
103#define UK_F23 KC_F23 45#define UK_8 KC_8 // 8
104#define UK_F24 KC_F24 46#define UK_9 KC_9 // 9
47#define UK_0 KC_0 // 0
48#define UK_MINS KC_MINS // -
49#define UK_EQL KC_EQL // =
50// Row 2
51#define UK_Q KC_Q // Q
52#define UK_W KC_W // W
53#define UK_E KC_E // E
54#define UK_R KC_R // R
55#define UK_T KC_T // T
56#define UK_Y KC_Y // Y
57#define UK_U KC_U // U
58#define UK_I KC_I // I
59#define UK_O KC_O // O
60#define UK_P KC_P // P
61#define UK_LBRC KC_LBRC // [
62#define UK_RBRC KC_RBRC // ]
63// Row 3
64#define UK_A KC_A // A
65#define UK_S KC_S // S
66#define UK_D KC_D // D
67#define UK_F KC_F // F
68#define UK_G KC_G // G
69#define UK_H KC_H // H
70#define UK_J KC_J // J
71#define UK_K KC_K // K
72#define UK_L KC_L // L
73#define UK_SCLN KC_SCLN // ;
74#define UK_QUOT KC_QUOT // '
75#define UK_HASH KC_NUHS // #
76// Row 4
77#define UK_BSLS KC_NUBS // (backslash)
78#define UK_Z KC_Z // Z
79#define UK_X KC_X // X
80#define UK_C KC_C // C
81#define UK_V KC_V // V
82#define UK_B KC_B // B
83#define UK_N KC_N // N
84#define UK_M KC_M // M
85#define UK_COMM KC_COMM // ,
86#define UK_DOT KC_DOT // .
87#define UK_SLSH KC_SLSH // /
105 88
106#define UK_SCLN KC_SCLN 89/* Shifted symbols
107#define UK_COMM KC_COMM 90 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
108#define UK_DOT KC_DOT 91 * │ ¬ │ ! │ " │ £ │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │       │
109#define UK_SLSH KC_SLSH 92 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
110#define UK_EXLM KC_EXLM 93 * │     │   │   │   │   │   │   │   │   │   │   │ { │ } │     │
111#define UK_UNDS KC_UNDS 94 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
112#define UK_MINS KC_MINS 95 * │      │   │   │   │   │   │   │   │   │   │ : │ @ │ ~ │    │
113#define UK_LCBR KC_LCBR 96 * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
114#define UK_RCBR KC_RCBR 97 * │    │ | │   │   │   │   │   │   │   │ < │ > │ ? │          │
115#define UK_DLR KC_DLR 98 * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
116#define UK_PERC KC_PERC 99 * │    │    │    │                        │    │    │    │    │
117#define UK_PLUS KC_PLUS 100 * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
118#define UK_EQL KC_EQL 101 */
119#define UK_LPRN KC_LPRN 102// Row 1
120#define UK_RPRN KC_RPRN 103#define UK_NOT S(UK_GRV) // ¬
121#define UK_CIRC KC_CIRC 104#define UK_EXLM S(UK_1) // !
122#define UK_AMPR KC_AMPR 105#define UK_DQUO S(UK_2) // "
123#define UK_LABK KC_LABK 106#define UK_PND S(UK_3) // £
124#define UK_LBRC KC_LBRC 107#define UK_DLR S(UK_4) // $
125#define UK_RBRC KC_RBRC 108#define UK_PERC S(UK_5) // %
126#define UK_RABK KC_RABK 109#define UK_CIRC S(UK_6) // ^
127#define UK_GRV KC_GRV 110#define UK_AMPR S(UK_7) // &
128#define UK_ASTR KC_ASTR 111#define UK_ASTR S(UK_8) // *
129#define UK_QUOT KC_QUOT 112#define UK_LPRN S(UK_9) // (
113#define UK_RPRN S(UK_0) // )
114#define UK_UNDS S(UK_MINS) // _
115#define UK_PLUS S(UK_EQL) // +
116// Row 2
117#define UK_LCBR S(UK_LBRC) // {
118#define UK_RCBR S(UK_RBRC) // }
119// Row 3
120#define UK_COLN S(UK_SCLN) // :
121#define UK_AT S(UK_QUOT) // @
122#define UK_TILD S(UK_HASH) // ~
123// Row 4
124#define UK_PIPE S(UK_BSLS) // |
125#define UK_LABK S(UK_COMM) // <
126#define UK_RABK S(UK_DOT) // >
127#define UK_QUES S(UK_SLSH) // ?
130 128
131#define UK_P1 KC_P1 129/* AltGr symbols
132#define UK_P2 KC_P2 130 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
133#define UK_P3 KC_P3 131 * │ ¦ │   │   │   │ € │   │   │   │   │   │   │   │   │       │
134#define UK_P4 KC_P4 132 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
135#define UK_P5 KC_P5 133 * │     │   │   │ É │   │   │   │ Ú │ Í │ Ó │   │   │   │     │
136#define UK_P6 KC_P6 134 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
137#define UK_P7 KC_P7 135 * │      │ Á │   │   │   │   │   │   │   │   │   │   │   │    │
138#define UK_P8 KC_P8 136 * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
139#define UK_P9 KC_P9 137 * │    │   │   │   │   │   │   │   │   │   │   │   │          │
140#define UK_P0 KC_P0 138 * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
141#define UK_PDOT KC_PDOT 139 * │    │    │    │                        │    │    │    │    │
142#define UK_PCMM KC_PCMM 140 * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
143#define UK_PSLS KC_PSLS 141 */
144#define UK_PAST KC_PAST 142// Row 1
145#define UK_PMNS KC_PMNS 143#define UK_BRKP ALGR(UK_GRV) // ¦
146#define UK_PPLS KC_PPLS 144#define UK_EURO ALGR(UK_4) // €
147#define UK_PEQL KC_PEQL 145// Row 2
148#define UK_PENT KC_PENT 146#define UK_EACU ALGR(KC_E) // É
147#define UK_UACU ALGR(KC_U) // Ú
148#define UK_IACU ALGR(KC_I) // Í
149#define UK_OACU ALGR(KC_O) // Ó
150// Row 3
151#define UK_AACU ALGR(KC_A) // Á
149 152
150#define UK_TAB KC_TAB 153// DEPRECATED
151#define UK_ENT KC_ENT 154#define UK_ESC KC_ESC
155#define UK_F1 KC_F1
156#define UK_F2 KC_F2
157#define UK_F3 KC_F3
158#define UK_F4 KC_F4
159#define UK_F5 KC_F5
160#define UK_F6 KC_F6
161#define UK_F7 KC_F7
162#define UK_F8 KC_F8
163#define UK_F9 KC_F9
164#define UK_F10 KC_F10
165#define UK_F11 KC_F11
166#define UK_F12 KC_F12
167#define UK_PSCR KC_PSCR
168#define UK_SLCK KC_SLCK
169#define UK_PAUS KC_PAUS
170#define UK_BSPC KC_BSPC
171#define UK_TAB KC_TAB
172#define UK_ENT KC_ENT
152#define UK_LSFT KC_LSFT 173#define UK_LSFT KC_LSFT
174#define UK_RSFT KC_RSFT
153#define UK_LCTL KC_LCTL 175#define UK_LCTL KC_LCTL
154#define UK_LALT KC_LALT
155#define UK_LGUI KC_LGUI 176#define UK_LGUI KC_LGUI
156#define UK_SPC KC_SPC 177#define UK_LALT KC_LALT
157#define UK_DEL KC_DEL 178#define UK_SPC KC_SPC
158#define UK_BSPC KC_BSPC
159#define UK_RSFT KC_RSFT
160#define UK_RCTL KC_RCTL
161#define UK_RALT KC_RALT 179#define UK_RALT KC_RALT
162#define UK_RGUI KC_RGUI 180#define UK_RGUI KC_RGUI
163#define UK_ESC KC_ESC 181#define UK_RCTL KC_RCTL
164#define UK_PSCR KC_PSCR 182#define UK_INS KC_INS
165#define UK_SLCK KC_SLCK 183#define UK_DEL KC_DEL
166#define UK_PAUS KC_PAUS
167#define UK_INS KC_INS
168#define UK_HOME KC_HOME 184#define UK_HOME KC_HOME
185#define UK_END KC_END
169#define UK_PGUP KC_PGUP 186#define UK_PGUP KC_PGUP
170#define UK_END KC_END
171#define UK_PGDN KC_PGDN 187#define UK_PGDN KC_PGDN
188#define UK_UP KC_UP
172#define UK_LEFT KC_LEFT 189#define UK_LEFT KC_LEFT
173#define UK_RGHT KC_RGHT
174#define UK_UP KC_UP
175#define UK_DOWN KC_DOWN 190#define UK_DOWN KC_DOWN
176 191#define UK_RGHT KC_RGHT
177#endif 192#define UK_PSLS KC_PSLS
193#define UK_PAST KC_PAST
194#define UK_PMNS KC_PMNS
195#define UK_PPLS KC_PPLS
196#define UK_PENT KC_PENT
197#define UK_P1 KC_P1
198#define UK_P2 KC_P2
199#define UK_P3 KC_P3
200#define UK_P4 KC_P4
201#define UK_P5 KC_P5
202#define UK_P6 KC_P6
203#define UK_P7 KC_P7
204#define UK_P8 KC_P8
205#define UK_P9 KC_P9
206#define UK_P0 KC_P0
207#define UK_PDOT KC_PDOT
208#define UK_PEQL KC_PEQL
209#define UK_PCMM KC_PCMM
210#define UK_F13 KC_F13
211#define UK_F14 KC_F14
212#define UK_F15 KC_F15
213#define UK_F16 KC_F16
214#define UK_F17 KC_F17
215#define UK_F18 KC_F18
216#define UK_F19 KC_F19
217#define UK_F20 KC_F20
218#define UK_F21 KC_F21
219#define UK_F22 KC_F22
220#define UK_F23 KC_F23
221#define UK_F24 KC_F24
222#define UK_EACT UK_EACU
223#define UK_UACT UK_UACU
224#define UK_IACT UK_IACU
225#define UK_OACT UK_OACU
226#define UK_AACT UK_OACU
diff --git a/quantum/keymap_extras/sendstring_uk.h b/quantum/keymap_extras/sendstring_uk.h
index 733c5f860..bbd30769b 100644
--- a/quantum/keymap_extras/sendstring_uk.h
+++ b/quantum/keymap_extras/sendstring_uk.h
@@ -40,7 +40,7 @@ const uint8_t ascii_to_shift_lut[16] PROGMEM = {
40 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), 40 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
41 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), 42 KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
43 KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0), 43 KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0)
44}; 44};
45 45
46const uint8_t ascii_to_keycode_lut[128] PROGMEM = { 46const uint8_t ascii_to_keycode_lut[128] PROGMEM = {
@@ -54,7 +54,7 @@ const uint8_t ascii_to_keycode_lut[128] PROGMEM = {
54 XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, 54 XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
55 55
56 // ! " # $ % & ' 56 // ! " # $ % & '
57 UK_SPC, UK_1, UK_2, UK_HASH, UK_4, UK_5, UK_7, UK_QUOT, 57 KC_SPC, UK_1, UK_2, UK_HASH, UK_4, UK_5, UK_7, UK_QUOT,
58 // ( ) * + , - . / 58 // ( ) * + , - . /
59 UK_9, UK_0, UK_8, UK_EQL, UK_COMM, UK_MINS, UK_DOT, UK_SLSH, 59 UK_9, UK_0, UK_8, UK_EQL, UK_COMM, UK_MINS, UK_DOT, UK_SLSH,
60 // 0 1 2 3 4 5 6 7 60 // 0 1 2 3 4 5 6 7