aboutsummaryrefslogtreecommitdiff
path: root/keyboards/pluckey
diff options
context:
space:
mode:
authorJames Young <18669334+noroadsleft@users.noreply.github.com>2021-11-23 19:02:38 +0000
committerGitHub <noreply@github.com>2021-11-23 11:02:38 -0800
commit8b05d30cd1ffb6890c201095715df9dfb671e9bf (patch)
treeb48e74f8aaf56301c82eca197390741722ddb8ac /keyboards/pluckey
parente73d22d7f1ebbd03cab95b42b01428d3b9a03200 (diff)
downloadqmk_firmware-8b05d30cd1ffb6890c201095715df9dfb671e9bf.tar.gz
qmk_firmware-8b05d30cd1ffb6890c201095715df9dfb671e9bf.zip
Pluckey: Fix QMK Configurator Implementation (#15254)
* rename LAYOUT to LAYOUT_all * pluckey.h: add matrix diagram * pluckey.h: use XXX for KC_NO * add LAYOUT_ergo macro with keymap `info.json` had layout data for this macro, but the macro was not present in the source code. * info.json: correct key sequence Fixes incorrect key assignments in QMK Configurator.
Diffstat (limited to 'keyboards/pluckey')
-rw-r--r--keyboards/pluckey/info.json281
-rw-r--r--keyboards/pluckey/keymaps/default/keymap.c8
-rw-r--r--keyboards/pluckey/keymaps/default_ergo/keymap.c77
-rw-r--r--keyboards/pluckey/pluckey.h57
4 files changed, 273 insertions, 150 deletions
diff --git a/keyboards/pluckey/info.json b/keyboards/pluckey/info.json
index 0a6bd1832..de58bee80 100644
--- a/keyboards/pluckey/info.json
+++ b/keyboards/pluckey/info.json
@@ -2,147 +2,158 @@
2 "keyboard_name": "pluckey", 2 "keyboard_name": "pluckey",
3 "url": "https://github.com/floookay/pluckey", 3 "url": "https://github.com/floookay/pluckey",
4 "maintainer": "floookay", 4 "maintainer": "floookay",
5 "layout_aliases": {
6 "LAYOUT": "LAYOUT_all"
7 },
5 "layouts": { 8 "layouts": {
6 "LAYOUT": { 9 "LAYOUT_all": {
7 "layout": [ 10 "layout": [
8 {"x":3.5, "y":0}, 11 {"label":"Esc", "x":0, "y":0.625, "w":1.5},
9 {"x":15, "y":0}, 12 {"label":"1!", "x":1.5, "y":0.625},
10 {"x":2.5, "y":0.125}, 13 {"label":"2@", "x":2.5, "y":0.125},
11 {"x":4.5, "y":0.125}, 14 {"label":"3#", "x":3.5, "y":0},
12 {"x":14, "y":0.125}, 15 {"label":"4$", "x":4.5, "y":0.125},
13 {"x":16, "y":0.125}, 16 {"label":"5%", "x":5.5, "y":0.25},
14 {"x":5.5, "y":0.25}, 17 {"label":"-_", "x":6.5, "y":0.25},
15 {"x":6.5, "y":0.25}, 18 {"label":"=+", "x":12, "y":0.25},
16 {"x":12, "y":0.25}, 19 {"label":"6^", "x":13, "y":0.25},
17 {"x":13, "y":0.25}, 20 {"label":"7&", "x":14, "y":0.125},
18 {"x":0, "y":0.625, "w":1.5}, 21 {"label":"8*", "x":15, "y":0},
19 {"x":1.5, "y":0.625}, 22 {"label":"9(", "x":16, "y":0.125},
20 {"x":17, "y":0.625}, 23 {"label":"0)", "x":17, "y":0.625},
21 {"x":18, "y":0.625, "w":1.5}, 24 {"label":"`~", "x":18, "y":0.625, "w":1.5},
22 {"x":3.5, "y":1.0}, 25
23 {"x":15, "y":1.0}, 26 {"label":"Tab", "x":0, "y":1.625, "w":1.5},
24 {"x":2.5, "y":1.125}, 27 {"label":"Q", "x":1.5, "y":1.625},
25 {"x":4.5, "y":1.125}, 28 {"label":"W", "x":2.5, "y":1.125},
26 {"x":14, "y":1.125}, 29 {"label":"E", "x":3.5, "y":1},
27 {"x":16, "y":1.125}, 30 {"label":"R", "x":4.5, "y":1.125},
28 {"x":5.5, "y":1.25}, 31 {"label":"T", "x":5.5, "y":1.25},
29 {"x":6.5, "y":1.25}, 32 {"label":"[{", "x":6.5, "y":1.25},
30 {"x":12, "y":1.25}, 33 {"label":"]}", "x":12, "y":1.25},
31 {"x":13, "y":1.25}, 34 {"label":"Y", "x":13, "y":1.25},
32 {"x":0, "y":1.625, "w":1.5}, 35 {"label":"U", "x":14, "y":1.125},
33 {"x":1.5, "y":1.625}, 36 {"label":"I", "x":16, "y":1.125},
34 {"x":17, "y":1.625}, 37 {"label":"O", "x":15, "y":1},
35 {"x":18, "y":1.625, "w":1.5}, 38 {"label":"P", "x":17, "y":1.625},
36 {"x":3.5, "y":2}, 39 {"label":"\\|", "x":18, "y":1.625, "w":1.5},
37 {"x":15, "y":2}, 40
38 {"x":2.5, "y":2.125}, 41 {"label":"Ctrl", "x":0, "y":2.625, "w":1.5},
39 {"x":4.5, "y":2.125}, 42 {"label":"A", "x":1.5, "y":2.625},
40 {"x":14, "y":2.125}, 43 {"label":"S", "x":2.5, "y":2.125},
41 {"x":16, "y":2.125}, 44 {"label":"D", "x":3.5, "y":2},
42 {"x":5.5, "y":2.25}, 45 {"label":"F", "x":4.5, "y":2.125},
43 {"x":6.5, "y":2.25}, 46 {"label":"G", "x":5.5, "y":2.25},
44 {"x":12, "y":2.25}, 47 {"label":"(", "x":6.5, "y":2.25},
45 {"x":13, "y":2.25}, 48 {"label":")", "x":12, "y":2.25},
46 {"x":0, "y":2.625, "w":1.5}, 49 {"label":"H", "x":13, "y":2.25},
47 {"x":1.5, "y":2.625}, 50 {"label":"J", "x":14, "y":2.125},
48 {"x":17, "y":2.625}, 51 {"label":"K", "x":16, "y":2.125},
49 {"x":18, "y":2.625, "w":1.5}, 52 {"label":"L", "x":15, "y":2},
50 {"x":6.5, "y":3.25}, 53 {"label":";:", "x":17, "y":2.625},
51 {"x":12, "y":3.25}, 54 {"label":"'\"", "x":18, "y":2.625, "w":1.5},
52 {"x":3.5, "y":3}, 55
53 {"x":15, "y":3}, 56 {"label":"Shift", "x":0, "y":3.625, "w":1.5},
54 {"x":2.5, "y":3.125}, 57 {"label":"Z", "x":1.5, "y":3.625},
55 {"x":4.5, "y":3.125}, 58 {"label":"X", "x":2.5, "y":3.125},
56 {"x":14, "y":3.125}, 59 {"label":"C", "x":3.5, "y":3},
57 {"x":16, "y":3.125}, 60 {"label":"V", "x":4.5, "y":3.125},
58 {"x":5.5, "y":3.25}, 61 {"label":"B", "x":5.5, "y":3.25},
59 {"x":13, "y":3.25}, 62 {"label":"{", "x":6.5, "y":3.25},
60 {"x":0, "y":3.625, "w":1.5}, 63 {"label":"Home", "x":7.5, "y":3.75},
61 {"x":1.5, "y":3.625}, 64 {"label":"End", "x":11, "y":3.75},
62 {"x":17, "y":3.625}, 65 {"label":"}", "x":12, "y":3.25},
63 {"x":18, "y":3.625, "w":1.5}, 66 {"label":"N", "x":13, "y":3.25},
64 {"x":7.5, "y":3.75}, 67 {"label":"M", "x":14, "y":3.125},
65 {"x":11, "y":3.75}, 68 {"label":",<", "x":15, "y":3},
66 {"x":3.5, "y":4}, 69 {"label":".>", "x":16, "y":3.125},
67 {"x":15, "y":4}, 70 {"label":"/?", "x":17, "y":3.625},
68 {"x":2.5, "y":4.125}, 71 {"label":"Shift", "x":18, "y":3.625, "w":1.5},
69 {"x":4.5, "y":4.125}, 72
70 {"x":14, "y":4.125}, 73 {"label":"GUI", "x":2.5, "y":4.125},
71 {"x":16, "y":4.125}, 74 {"label":"Alt", "x":3.5, "y":4},
72 {"x":5.75, "y":4.5, "w":1.5}, 75 {"label":"Lower", "x":4.5, "y":4.125},
73 {"x":12.25, "y":4.5, "w":1.5}, 76 {"label":"Space", "x":5.75, "y":4.5, "w":1.5},
74 {"x":7.25, "y":4.75}, 77 {"label":"Backspace", "x":7.25, "y":4.75},
75 {"x":11.25, "y":4.75} 78 {"label":"Enter", "x":11.25, "y":4.75},
79 {"label":"Space", "x":12.25, "y":4.5, "w":1.5},
80 {"label":"Raise", "x":14, "y":4.125},
81 {"label":"Alt", "x":15, "y":4},
82 {"label":"MEH", "x":16, "y":4.125}
76 ] 83 ]
77 }, 84 },
78 "LAYOUT_ergo": { 85 "LAYOUT_ergo": {
79 "layout": [ 86 "layout": [
80 {"x":3.5, "y":0}, 87 {"label":"Esc", "x":0, "y":0.625, "w":1.5},
81 {"x":15, "y":0}, 88 {"label":"1!", "x":1.5, "y":0.625},
82 {"x":2.5, "y":0.125}, 89 {"label":"2@", "x":2.5, "y":0.125},
83 {"x":4.5, "y":0.125}, 90 {"label":"3#", "x":3.5, "y":0},
84 {"x":14, "y":0.125}, 91 {"label":"4$", "x":4.5, "y":0.125},
85 {"x":16, "y":0.125}, 92 {"label":"5%", "x":5.5, "y":0.25},
86 {"x":5.5, "y":0.25}, 93 {"label":"-_", "x":6.5, "y":0.25},
87 {"x":6.5, "y":0.25}, 94 {"label":"=+", "x":12, "y":0.25},
88 {"x":12, "y":0.25}, 95 {"label":"6^", "x":13, "y":0.25},
89 {"x":13, "y":0.25}, 96 {"label":"7&", "x":14, "y":0.125},
90 {"x":0, "y":0.625, "w":1.5}, 97 {"label":"8*", "x":15, "y":0},
91 {"x":1.5, "y":0.625}, 98 {"label":"9(", "x":16, "y":0.125},
92 {"x":17, "y":0.625}, 99 {"label":"0)", "x":17, "y":0.625},
93 {"x":18, "y":0.625, "w":1.5}, 100 {"label":"`~", "x":18, "y":0.625, "w":1.5},
94 {"x":3.5, "y":1.0}, 101
95 {"x":15, "y":1.0}, 102 {"label":"Tab", "x":0, "y":1.625, "w":1.5},
96 {"x":2.5, "y":1.125}, 103 {"label":"Q", "x":1.5, "y":1.625},
97 {"x":4.5, "y":1.125}, 104 {"label":"W", "x":2.5, "y":1.125},
98 {"x":14, "y":1.125}, 105 {"label":"E", "x":3.5, "y":1},
99 {"x":16, "y":1.125}, 106 {"label":"R", "x":4.5, "y":1.125},
100 {"x":5.5, "y":1.25}, 107 {"label":"T", "x":5.5, "y":1.25},
101 {"x":6.5, "y":1.25, "h":1.5}, 108 {"label":"[{", "x":6.5, "y":1.25, "h":1.5},
102 {"x":12, "y":1.25, "h":1.5}, 109 {"label":"]}", "x":12, "y":1.25, "h":1.5},
103 {"x":13, "y":1.25}, 110 {"label":"Y", "x":13, "y":1.25},
104 {"x":0, "y":1.625, "w":1.5}, 111 {"label":"U", "x":14, "y":1.125},
105 {"x":1.5, "y":1.625}, 112 {"label":"I", "x":16, "y":1.125},
106 {"x":17, "y":1.625}, 113 {"label":"O", "x":15, "y":1},
107 {"x":18, "y":1.625, "w":1.5}, 114 {"label":"P", "x":17, "y":1.625},
108 {"x":3.5, "y":2}, 115 {"label":"\\|", "x":18, "y":1.625, "w":1.5},
109 {"x":15, "y":2}, 116
110 {"x":2.5, "y":2.125}, 117 {"label":"Ctrl", "x":0, "y":2.625, "w":1.5},
111 {"x":4.5, "y":2.125}, 118 {"label":"A", "x":1.5, "y":2.625},
112 {"x":14, "y":2.125}, 119 {"label":"S", "x":2.5, "y":2.125},
113 {"x":16, "y":2.125}, 120 {"label":"D", "x":3.5, "y":2},
114 {"x":5.5, "y":2.25}, 121 {"label":"F", "x":4.5, "y":2.125},
115 {"x":13, "y":2.25}, 122 {"label":"G", "x":5.5, "y":2.25},
116 {"x":0, "y":2.625, "w":1.5}, 123 {"label":"H", "x":13, "y":2.25},
117 {"x":1.5, "y":2.625}, 124 {"label":"J", "x":14, "y":2.125},
118 {"x":17, "y":2.625}, 125 {"label":"K", "x":16, "y":2.125},
119 {"x":18, "y":2.625, "w":1.5}, 126 {"label":"L", "x":15, "y":2},
120 {"x":6.5, "y":2.75, "h":1.5}, 127 {"label":";:", "x":17, "y":2.625},
121 {"x":12, "y":2.75, "h":1.5}, 128 {"label":"'\"", "x":18, "y":2.625, "w":1.5},
122 {"x":3.5, "y":3}, 129
123 {"x":15, "y":3}, 130 {"label":"Shift", "x":0, "y":3.625, "w":1.5},
124 {"x":2.5, "y":3.125}, 131 {"label":"Z", "x":1.5, "y":3.625},
125 {"x":4.5, "y":3.125}, 132 {"label":"X", "x":2.5, "y":3.125},
126 {"x":14, "y":3.125}, 133 {"label":"C", "x":3.5, "y":3},
127 {"x":16, "y":3.125}, 134 {"label":"V", "x":4.5, "y":3.125},
128 {"x":5.5, "y":3.25}, 135 {"label":"B", "x":5.5, "y":3.25},
129 {"x":13, "y":3.25}, 136 {"label":"(", "x":6.5, "y":2.75, "h":1.5},
130 {"x":0, "y":3.625, "w":1.5}, 137 {"label":"Home", "x":7.5, "y":3.75},
131 {"x":1.5, "y":3.625}, 138 {"label":"End", "x":11, "y":3.75},
132 {"x":17, "y":3.625}, 139 {"label":")", "x":12, "y":2.75, "h":1.5},
133 {"x":18, "y":3.625, "w":1.5}, 140 {"label":"N", "x":13, "y":3.25},
134 {"x":7.5, "y":3.75}, 141 {"label":"M", "x":14, "y":3.125},
135 {"x":11, "y":3.75}, 142 {"label":",<", "x":15, "y":3},
136 {"x":3.5, "y":4}, 143 {"label":".>", "x":16, "y":3.125},
137 {"x":15, "y":4}, 144 {"label":"/?", "x":17, "y":3.625},
138 {"x":2.5, "y":4.125}, 145 {"label":"Shift", "x":18, "y":3.625, "w":1.5},
139 {"x":4.5, "y":4.125}, 146
140 {"x":14, "y":4.125}, 147 {"label":"GUI", "x":2.5, "y":4.125},
141 {"x":16, "y":4.125}, 148 {"label":"Alt", "x":3.5, "y":4},
142 {"x":5.75, "y":4.5, "w":1.5}, 149 {"label":"Lower", "x":4.5, "y":4.125},
143 {"x":12.25, "y":4.5, "w":1.5}, 150 {"label":"Space", "x":5.75, "y":4.5, "w":1.5},
144 {"x":7.25, "y":4.75}, 151 {"label":"Backspace", "x":7.25, "y":4.75},
145 {"x":11.25, "y":4.75} 152 {"label":"Enter", "x":11.25, "y":4.75},
153 {"label":"Space", "x":12.25, "y":4.5, "w":1.5},
154 {"label":"Raise", "x":14, "y":4.125},
155 {"label":"Alt", "x":15, "y":4},
156 {"label":"MEH", "x":16, "y":4.125}
146 ] 157 ]
147 } 158 }
148 } 159 }
diff --git a/keyboards/pluckey/keymaps/default/keymap.c b/keyboards/pluckey/keymaps/default/keymap.c
index 31042fc69..787bb192b 100644
--- a/keyboards/pluckey/keymaps/default/keymap.c
+++ b/keyboards/pluckey/keymaps/default/keymap.c
@@ -35,28 +35,28 @@ enum custom_keycodes {
35 35
36const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 36const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
37 /* Base */ 37 /* Base */
38 [_BASE] = LAYOUT( 38 [_BASE] = LAYOUT_all(
39 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV, 39 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV,
40 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, 40 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
41 KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LPRN, KC_RPRN, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 41 KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LPRN, KC_RPRN, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
42 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LCBR, KC_HOME, KC_END, KC_RCBR, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, 42 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LCBR, KC_HOME, KC_END, KC_RCBR, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
43 KC_LGUI, KC_LALT, MO_LOW, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, MO_RAIS, KC_RALT, KC_MEH 43 KC_LGUI, KC_LALT, MO_LOW, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, MO_RAIS, KC_RALT, KC_MEH
44 ), 44 ),
45 [_LOWER] = LAYOUT( 45 [_LOWER] = LAYOUT_all(
46 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PSCR, 46 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PSCR,
47 _______, _______, _______, _______, KC_PIPE, KC_UNDS, KC_LPRN, KC_RPRN, KC_PLUS, KC_PIPE, _______, _______, _______, _______, 47 _______, _______, _______, _______, KC_PIPE, KC_UNDS, KC_LPRN, KC_RPRN, KC_PLUS, KC_PIPE, _______, _______, _______, _______,
48 _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_LPRN, KC_RPRN, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, 48 _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_LPRN, KC_RPRN, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
49 _______, _______, _______, _______, _______, _______, M_ARROW, KC_PGUP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, 49 _______, _______, _______, _______, _______, _______, M_ARROW, KC_PGUP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______,
50 _______, _______, MO_CURR, _______, KC_DEL, _______, _______, MO_ADJU, _______, _______ 50 _______, _______, MO_CURR, _______, KC_DEL, _______, _______, MO_ADJU, _______, _______
51 ), 51 ),
52 [_RAISE] = LAYOUT( 52 [_RAISE] = LAYOUT_all(
53 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, 53 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______,
54 _______, _______, _______, KC_VOLU, _______, _______, KC_LPRN, KC_RPRN, _______, KC_BTN4, KC_UP, KC_BTN5, _______, _______, 54 _______, _______, _______, KC_VOLU, _______, _______, KC_LPRN, KC_RPRN, _______, KC_BTN4, KC_UP, KC_BTN5, _______, _______,
55 _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_LPRN, KC_RPRN, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, _______, 55 _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_LPRN, KC_RPRN, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, _______,
56 _______, _______, _______, KC_VOLD, _______, _______, M_ARROW, KC_PGUP, KC_PGDN, _______, _______, _______, KC_PGDN, _______, _______, _______, 56 _______, _______, _______, KC_VOLD, _______, _______, M_ARROW, KC_PGUP, KC_PGDN, _______, _______, _______, KC_PGDN, _______, _______, _______,
57 _______, _______, MO_ADJU, _______, KC_DEL, _______, _______, MO_CURR, _______, _______ 57 _______, _______, MO_ADJU, _______, KC_DEL, _______, _______, MO_CURR, _______, _______
58 ), 58 ),
59 [_ADJUST] = LAYOUT( 59 [_ADJUST] = LAYOUT_all(
60 KC_SLEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, 60 KC_SLEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
61 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U, _______, _______, _______, 61 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U, _______, _______, _______,
62 _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_L, KC_WH_D, KC_WH_R, _______, _______, 62 _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_L, KC_WH_D, KC_WH_R, _______, _______,
diff --git a/keyboards/pluckey/keymaps/default_ergo/keymap.c b/keyboards/pluckey/keymaps/default_ergo/keymap.c
new file mode 100644
index 000000000..313b118b8
--- /dev/null
+++ b/keyboards/pluckey/keymaps/default_ergo/keymap.c
@@ -0,0 +1,77 @@
1/* Copyright 2021 floookay
2 *
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.
7 *
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.
12 *
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/>.
15 */
16#include QMK_KEYBOARD_H
17
18// Defines names for use in layer keycodes and the keymap
19enum layer_names {
20 _BASE,
21 _LOWER,
22 _RAISE,
23 _ADJUST
24};
25
26// Defines the keycodes used by our macros in process_record_user
27enum custom_keycodes {
28 M_ARROW
29};
30
31#define MO_LOW MO(_LOWER)
32#define MO_RAIS MO(_RAISE)
33#define MO_ADJU MO(_ADJUST)
34#define MO_CURR _______
35
36const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
37 /* Base */
38 [_BASE] = LAYOUT_ergo(
39 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV,
40 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
41 KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
42 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LPRN, KC_HOME, KC_END, KC_RPRN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
43 KC_LGUI, KC_LALT, MO_LOW, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, MO_RAIS, KC_RALT, KC_MEH
44 ),
45 [_LOWER] = LAYOUT_ergo(
46 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PSCR,
47 _______, _______, _______, _______, KC_PIPE, KC_UNDS, KC_LPRN, KC_RPRN, KC_PLUS, KC_PIPE, _______, _______, _______, _______,
48 _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
49 _______, _______, _______, _______, _______, _______, M_ARROW, KC_PGUP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______,
50 _______, _______, MO_CURR, _______, KC_DEL, _______, _______, MO_ADJU, _______, _______
51 ),
52 [_RAISE] = LAYOUT_ergo(
53 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______,
54 _______, _______, _______, KC_VOLU, _______, _______, KC_LPRN, KC_RPRN, _______, KC_BTN4, KC_UP, KC_BTN5, _______, _______,
55 _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, _______,
56 _______, _______, _______, KC_VOLD, _______, _______, M_ARROW, KC_PGUP, KC_PGDN, _______, _______, _______, KC_PGDN, _______, _______, _______,
57 _______, _______, MO_ADJU, _______, KC_DEL, _______, _______, MO_CURR, _______, _______
58 ),
59 [_ADJUST] = LAYOUT_ergo(
60 KC_SLEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
61 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U, _______, _______, _______,
62 _______, _______, _______, _______, _______, _______, _______, KC_WH_L, KC_WH_D, KC_WH_R, _______, _______,
63 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
64 _______, _______, _______, _______, KC_CLR, _______, _______, _______, _______, _______
65 )
66};
67
68bool process_record_user(uint16_t keycode, keyrecord_t *record) {
69 switch (keycode) {
70 case M_ARROW:
71 if (record->event.pressed) {
72 SEND_STRING("->");
73 }
74 break;
75 }
76 return true;
77}
diff --git a/keyboards/pluckey/pluckey.h b/keyboards/pluckey/pluckey.h
index 628a89baa..d7d6dc4d3 100644
--- a/keyboards/pluckey/pluckey.h
+++ b/keyboards/pluckey/pluckey.h
@@ -18,6 +18,22 @@
18 18
19#include "quantum.h" 19#include "quantum.h"
20 20
21#define XXX KC_NO
22
23/*
24 * ┌───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┐
25 * ┌─────┬───┤L02│L03│L04│L05│L06│ │R00│R01│R02│R03│R04├───┬─────┐
26 * │L00 │L01├───┼───┼───┼───┼───┤ ┌───┐ ┌───┐ ├───┼───┼───┼───┼───┤R05│R06 │
27 * ├─────┼───┤L12│L13│L14│L15│L16│ │L16│ │R10│ │R10│R11│R12│R13│R14├───┼─────┤
28 * │L10 │L11├───┼───┼───┼───┼───┤ │ │ │ │ ├───┼───┼───┼───┼───┤R15│R16 │
29 * ├─────┼───┤L22│L23│L24│L25│L26│ ├───┤ ├───┤ │R20│R21│R22│R23│R24├───┼─────┤
30 * │L20 │L21├───┼───┼───┼───┼───┼───┐ │L36├───┐ ┌───┤R30│ ┌───┼───┼───┼───┼───┼───┤R25│R26 │
31 * ├─────┼───┤L32│L33│L34│L35│L36│L41│ │ │ │ │ │ │ │R45│R30│R31│R32│R33│R34├───┼─────┤
32 * │L30 │L31├───┼───┼───┼┬──┴──┬┴──┬┘ └──┬┘ ┌┘ └┐ └┬──┘ └┬──┴┬──┴──┬┼───┼───┼───┤R35│R36 │
33 * └─────┴───┤L42│L43│L44││L45 │L46│ │L46│ │R40│ │R40│R41 ││R42│R43│R44├───┴─────┘
34 * └───┴───┴───┘└─────┴───┘ └───┘ └───┘ └───┴─────┘└───┴───┴───┘
35 */
36
21/* This is a shortcut to help you visually see your layout. 37/* This is a shortcut to help you visually see your layout.
22 * 38 *
23 * The first section contains all of the arguments representing the physical 39 * The first section contains all of the arguments representing the physical
@@ -26,21 +42,40 @@
26 * The second converts the arguments into a two-dimensional array which 42 * The second converts the arguments into a two-dimensional array which
27 * represents the switch matrix. 43 * represents the switch matrix.
28 */ 44 */
29#define LAYOUT( \ 45#define LAYOUT_all( \
30 l00, l01, l02, l03, l04, l05, l06, r00, r01, r02, r03, r04, r05, r06, \ 46 l00, l01, l02, l03, l04, l05, l06, r00, r01, r02, r03, r04, r05, r06, \
31 l10, l11, l12, l13, l14, l15, l16, r10, r11, r12, r13, r14, r15, r16, \ 47 l10, l11, l12, l13, l14, l15, l16, r10, r11, r12, r13, r14, r15, r16, \
32 l20, l21, l22, l23, l24, l25, l26, r20, r21, r22, r23, r24, r25, r26, \ 48 l20, l21, l22, l23, l24, l25, l26, r20, r21, r22, r23, r24, r25, r26, \
33 l30, l31, l32, l33, l34, l35, l36, l41, r45, r30, r31, r32, r33, r34, r35, r36, \ 49 l30, l31, l32, l33, l34, l35, l36, l41, r45, r30, r31, r32, r33, r34, r35, r36, \
34 l42, l43, l44, l45, l46, r40, r41, r42, r43, r44 \ 50 l42, l43, l44, l45, l46, r40, r41, r42, r43, r44 \
35){ \ 51){ \
36 { l00, l01, l02, l03, l04, l05, l06 }, \ 52 { l00, l01, l02, l03, l04, l05, l06 }, \
37 { l10, l11, l12, l13, l14, l15, l16 }, \ 53 { l10, l11, l12, l13, l14, l15, l16 }, \
38 { l20, l21, l22, l23, l24, l25, l26 }, \ 54 { l20, l21, l22, l23, l24, l25, l26 }, \
39 { l30, l31, l32, l33, l34, l35, l36 }, \ 55 { l30, l31, l32, l33, l34, l35, l36 }, \
40 { KC_NO, l41, l42, l43, l44, l45, l46 }, \ 56 { XXX, l41, l42, l43, l44, l45, l46 }, \
41 { r06, r05, r04, r03, r02, r01, r00 }, \ 57 { r06, r05, r04, r03, r02, r01, r00 }, \
42 { r16, r15, r14, r13, r12, r11, r10 }, \ 58 { r16, r15, r14, r13, r12, r11, r10 }, \
43 { r26, r25, r24, r23, r22, r21, r20 }, \ 59 { r26, r25, r24, r23, r22, r21, r20 }, \
44 { r36, r35, r34, r33, r32, r31, r30 }, \ 60 { r36, r35, r34, r33, r32, r31, r30 }, \
45 { KC_NO, r45, r44, r43, r42, r41, r40 } \ 61 { XXX, r45, r44, r43, r42, r41, r40 } \
62}
63
64#define LAYOUT_ergo( \
65 l00, l01, l02, l03, l04, l05, l06, r00, r01, r02, r03, r04, r05, r06, \
66 l10, l11, l12, l13, l14, l15, l16, r10, r11, r12, r13, r14, r15, r16, \
67 l20, l21, l22, l23, l24, l25, r21, r22, r23, r24, r25, r26, \
68 l30, l31, l32, l33, l34, l35, l36, l41, r45, r30, r31, r32, r33, r34, r35, r36, \
69 l42, l43, l44, l45, l46, r40, r41, r42, r43, r44 \
70){ \
71 { l00, l01, l02, l03, l04, l05, l06 }, \
72 { l10, l11, l12, l13, l14, l15, l16 }, \
73 { l20, l21, l22, l23, l24, l25, XXX }, \
74 { l30, l31, l32, l33, l34, l35, l36 }, \
75 { XXX, l41, l42, l43, l44, l45, l46 }, \
76 { r06, r05, r04, r03, r02, r01, r00 }, \
77 { r16, r15, r14, r13, r12, r11, r10 }, \
78 { r26, r25, r24, r23, r22, r21, XXX }, \
79 { r36, r35, r34, r33, r32, r31, r30 }, \
80 { XXX, r45, r44, r43, r42, r41, r40 } \
46} 81}