Skip to content

Commit 1e726a1

Browse files
authored
Xelus RS60 Layout Refactor (#18708)
* add matrix diagrams * add LAYOUT_60_ansi * add LAYOUT_60_ansi_tsangan * add LAYOUT_60_tsangan_hhkb * enable Community Layout support * enable Community Layout support, phase 2 Remove the `LAYOUTS` rules from the `rules.mk` files, now that the data is in `info.json`.
1 parent 06a7a1c commit 1e726a1

File tree

7 files changed

+259
-6
lines changed

7 files changed

+259
-6
lines changed

keyboards/xelus/rs60/info.json

+208
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
"vid": "0x5845",
88
"pid": "0x5253"
99
},
10+
"community_layouts": ["60_ansi_split_bs_rshift", "60_ansi", "60_ansi_tsangan", "60_tsangan_hhkb"],
1011
"layouts": {
1112
"LAYOUT_60_ansi_split_bs_rshift": {
1213
"layout": [
@@ -74,6 +75,213 @@
7475
{"label":"Fn", "x":12.5, "y":4, "w":1.25},
7576
{"label":"Ctrl", "x":13.75, "y":4, "w":1.25}
7677
]
78+
},
79+
"LAYOUT_60_ansi": {
80+
"layout": [
81+
{"label":"Esc", "matrix":[0, 0], "x":0, "y":0},
82+
{"label":"1", "matrix":[0, 1], "x":1, "y":0},
83+
{"label":"2", "matrix":[0, 2], "x":2, "y":0},
84+
{"label":"3", "matrix":[0, 3], "x":3, "y":0},
85+
{"label":"4", "matrix":[0, 4], "x":4, "y":0},
86+
{"label":"5", "matrix":[0, 5], "x":5, "y":0},
87+
{"label":"6", "matrix":[0, 6], "x":6, "y":0},
88+
{"label":"7", "matrix":[0, 7], "x":7, "y":0},
89+
{"label":"8", "matrix":[0, 8], "x":8, "y":0},
90+
{"label":"9", "matrix":[0, 9], "x":9, "y":0},
91+
{"label":"0", "matrix":[0, 10], "x":10, "y":0},
92+
{"label":"-", "matrix":[0, 11], "x":11, "y":0},
93+
{"label":"=", "matrix":[0, 12], "x":12, "y":0},
94+
{"label":"Backspace", "matrix":[0, 13], "x":13, "y":0, "w":2},
95+
96+
{"label":"Tab", "matrix":[1, 0], "x":0, "y":1, "w":1.5},
97+
{"label":"Q", "matrix":[1, 1], "x":1.5, "y":1},
98+
{"label":"W", "matrix":[1, 2], "x":2.5, "y":1},
99+
{"label":"E", "matrix":[1, 3], "x":3.5, "y":1},
100+
{"label":"R", "matrix":[1, 4], "x":4.5, "y":1},
101+
{"label":"T", "matrix":[1, 5], "x":5.5, "y":1},
102+
{"label":"Y", "matrix":[1, 6], "x":6.5, "y":1},
103+
{"label":"U", "matrix":[1, 7], "x":7.5, "y":1},
104+
{"label":"I", "matrix":[1, 8], "x":8.5, "y":1},
105+
{"label":"O", "matrix":[1, 9], "x":9.5, "y":1},
106+
{"label":"P", "matrix":[1, 10], "x":10.5, "y":1},
107+
{"label":"[", "matrix":[1, 11], "x":11.5, "y":1},
108+
{"label":"]", "matrix":[1, 12], "x":12.5, "y":1},
109+
{"label":"\\", "matrix":[1, 13], "x":13.5, "y":1, "w":1.5},
110+
111+
{"label":"Caps Lock", "matrix":[2, 0], "x":0, "y":2, "w":1.75},
112+
{"label":"A", "matrix":[2, 1], "x":1.75, "y":2},
113+
{"label":"S", "matrix":[2, 2], "x":2.75, "y":2},
114+
{"label":"D", "matrix":[2, 3], "x":3.75, "y":2},
115+
{"label":"F", "matrix":[2, 4], "x":4.75, "y":2},
116+
{"label":"G", "matrix":[2, 5], "x":5.75, "y":2},
117+
{"label":"H", "matrix":[2, 6], "x":6.75, "y":2},
118+
{"label":"J", "matrix":[2, 7], "x":7.75, "y":2},
119+
{"label":"K", "matrix":[2, 8], "x":8.75, "y":2},
120+
{"label":"L", "matrix":[2, 9], "x":9.75, "y":2},
121+
{"label":";", "matrix":[2, 10], "x":10.75, "y":2},
122+
{"label":"'", "matrix":[2, 11], "x":11.75, "y":2},
123+
{"label":"Enter", "matrix":[2, 12], "x":12.75, "y":2, "w":2.25},
124+
125+
{"label":"Shift", "matrix":[3, 0], "x":0, "y":3, "w":2.25},
126+
{"label":"Z", "matrix":[3, 1], "x":2.25, "y":3},
127+
{"label":"X", "matrix":[3, 2], "x":3.25, "y":3},
128+
{"label":"C", "matrix":[3, 3], "x":4.25, "y":3},
129+
{"label":"V", "matrix":[3, 4], "x":5.25, "y":3},
130+
{"label":"B", "matrix":[3, 5], "x":6.25, "y":3},
131+
{"label":"N", "matrix":[3, 6], "x":7.25, "y":3},
132+
{"label":"M", "matrix":[3, 7], "x":8.25, "y":3},
133+
{"label":",", "matrix":[3, 8], "x":9.25, "y":3},
134+
{"label":".", "matrix":[3, 9], "x":10.25, "y":3},
135+
{"label":"/", "matrix":[3, 11], "x":11.25, "y":3},
136+
{"label":"Shift", "matrix":[3, 12], "x":12.25, "y":3, "w":2.75},
137+
138+
{"label":"Ctrl", "matrix":[4, 0], "x":0, "y":4, "w":1.25},
139+
{"label":"GUI", "matrix":[4, 1], "x":1.25, "y":4, "w":1.25},
140+
{"label":"Alt", "matrix":[4, 2], "x":2.5, "y":4, "w":1.25},
141+
{"label":"Space", "matrix":[4, 5], "x":3.75, "y":4, "w":6.25},
142+
{"label":"Alt", "matrix":[4, 9], "x":10, "y":4, "w":1.25},
143+
{"label":"GUI", "matrix":[4, 10], "x":11.25, "y":4, "w":1.25},
144+
{"label":"Fn", "matrix":[4, 12], "x":12.5, "y":4, "w":1.25},
145+
{"label":"Ctrl", "matrix":[4, 13], "x":13.75, "y":4, "w":1.25}
146+
]
147+
},
148+
"LAYOUT_60_ansi_tsangan": {
149+
"layout": [
150+
{"label":"Esc", "matrix":[0, 0], "x":0, "y":0},
151+
{"label":"1", "matrix":[0, 1], "x":1, "y":0},
152+
{"label":"2", "matrix":[0, 2], "x":2, "y":0},
153+
{"label":"3", "matrix":[0, 3], "x":3, "y":0},
154+
{"label":"4", "matrix":[0, 4], "x":4, "y":0},
155+
{"label":"5", "matrix":[0, 5], "x":5, "y":0},
156+
{"label":"6", "matrix":[0, 6], "x":6, "y":0},
157+
{"label":"7", "matrix":[0, 7], "x":7, "y":0},
158+
{"label":"8", "matrix":[0, 8], "x":8, "y":0},
159+
{"label":"9", "matrix":[0, 9], "x":9, "y":0},
160+
{"label":"0", "matrix":[0, 10], "x":10, "y":0},
161+
{"label":"-", "matrix":[0, 11], "x":11, "y":0},
162+
{"label":"=", "matrix":[0, 12], "x":12, "y":0},
163+
{"label":"Backspace", "matrix":[0, 13], "x":13, "y":0, "w":2},
164+
165+
{"label":"Tab", "matrix":[1, 0], "x":0, "y":1, "w":1.5},
166+
{"label":"Q", "matrix":[1, 1], "x":1.5, "y":1},
167+
{"label":"W", "matrix":[1, 2], "x":2.5, "y":1},
168+
{"label":"E", "matrix":[1, 3], "x":3.5, "y":1},
169+
{"label":"R", "matrix":[1, 4], "x":4.5, "y":1},
170+
{"label":"T", "matrix":[1, 5], "x":5.5, "y":1},
171+
{"label":"Y", "matrix":[1, 6], "x":6.5, "y":1},
172+
{"label":"U", "matrix":[1, 7], "x":7.5, "y":1},
173+
{"label":"I", "matrix":[1, 8], "x":8.5, "y":1},
174+
{"label":"O", "matrix":[1, 9], "x":9.5, "y":1},
175+
{"label":"P", "matrix":[1, 10], "x":10.5, "y":1},
176+
{"label":"[", "matrix":[1, 11], "x":11.5, "y":1},
177+
{"label":"]", "matrix":[1, 12], "x":12.5, "y":1},
178+
{"label":"\\", "matrix":[1, 13], "x":13.5, "y":1, "w":1.5},
179+
180+
{"label":"Caps Lock", "matrix":[2, 0], "x":0, "y":2, "w":1.75},
181+
{"label":"A", "matrix":[2, 1], "x":1.75, "y":2},
182+
{"label":"S", "matrix":[2, 2], "x":2.75, "y":2},
183+
{"label":"D", "matrix":[2, 3], "x":3.75, "y":2},
184+
{"label":"F", "matrix":[2, 4], "x":4.75, "y":2},
185+
{"label":"G", "matrix":[2, 5], "x":5.75, "y":2},
186+
{"label":"H", "matrix":[2, 6], "x":6.75, "y":2},
187+
{"label":"J", "matrix":[2, 7], "x":7.75, "y":2},
188+
{"label":"K", "matrix":[2, 8], "x":8.75, "y":2},
189+
{"label":"L", "matrix":[2, 9], "x":9.75, "y":2},
190+
{"label":";", "matrix":[2, 10], "x":10.75, "y":2},
191+
{"label":"'", "matrix":[2, 11], "x":11.75, "y":2},
192+
{"label":"Enter", "matrix":[2, 12], "x":12.75, "y":2, "w":2.25},
193+
194+
{"label":"Shift", "matrix":[3, 0], "x":0, "y":3, "w":2.25},
195+
{"label":"Z", "matrix":[3, 1], "x":2.25, "y":3},
196+
{"label":"X", "matrix":[3, 2], "x":3.25, "y":3},
197+
{"label":"C", "matrix":[3, 3], "x":4.25, "y":3},
198+
{"label":"V", "matrix":[3, 4], "x":5.25, "y":3},
199+
{"label":"B", "matrix":[3, 5], "x":6.25, "y":3},
200+
{"label":"N", "matrix":[3, 6], "x":7.25, "y":3},
201+
{"label":"M", "matrix":[3, 7], "x":8.25, "y":3},
202+
{"label":",", "matrix":[3, 8], "x":9.25, "y":3},
203+
{"label":".", "matrix":[3, 9], "x":10.25, "y":3},
204+
{"label":"/", "matrix":[3, 11], "x":11.25, "y":3},
205+
{"label":"Shift", "matrix":[3, 12], "x":12.25, "y":3, "w":2.75},
206+
207+
{"label":"Ctrl", "matrix":[4, 0], "x":0, "y":4, "w":1.5},
208+
{"label":"GUI", "matrix":[4, 1], "x":1.5, "y":4},
209+
{"label":"Alt", "matrix":[4, 2], "x":2.5, "y":4, "w":1.5},
210+
{"label":"Space", "matrix":[4, 5], "x":4, "y":4, "w":7},
211+
{"label":"Alt", "matrix":[4, 10], "x":11, "y":4, "w":1.5},
212+
{"label":"Fn", "matrix":[4, 12], "x":12.5, "y":4},
213+
{"label":"Ctrl", "matrix":[4, 13], "x":13.5, "y":4, "w":1.5}
214+
]
215+
},
216+
"LAYOUT_60_tsangan_hhkb": {
217+
"layout": [
218+
{"label":"Esc", "matrix":[0, 0], "x":0, "y":0},
219+
{"label":"1", "matrix":[0, 1], "x":1, "y":0},
220+
{"label":"2", "matrix":[0, 2], "x":2, "y":0},
221+
{"label":"3", "matrix":[0, 3], "x":3, "y":0},
222+
{"label":"4", "matrix":[0, 4], "x":4, "y":0},
223+
{"label":"5", "matrix":[0, 5], "x":5, "y":0},
224+
{"label":"6", "matrix":[0, 6], "x":6, "y":0},
225+
{"label":"7", "matrix":[0, 7], "x":7, "y":0},
226+
{"label":"8", "matrix":[0, 8], "x":8, "y":0},
227+
{"label":"9", "matrix":[0, 9], "x":9, "y":0},
228+
{"label":"0", "matrix":[0, 10], "x":10, "y":0},
229+
{"label":"-", "matrix":[0, 11], "x":11, "y":0},
230+
{"label":"=", "matrix":[0, 12], "x":12, "y":0},
231+
{"label":"\\", "matrix":[0, 13], "x":13, "y":0},
232+
{"label":"Delete", "matrix":[2, 13], "x":14, "y":0},
233+
234+
{"label":"Tab", "matrix":[1, 0], "x":0, "y":1, "w":1.5},
235+
{"label":"Q", "matrix":[1, 1], "x":1.5, "y":1},
236+
{"label":"W", "matrix":[1, 2], "x":2.5, "y":1},
237+
{"label":"E", "matrix":[1, 3], "x":3.5, "y":1},
238+
{"label":"R", "matrix":[1, 4], "x":4.5, "y":1},
239+
{"label":"T", "matrix":[1, 5], "x":5.5, "y":1},
240+
{"label":"Y", "matrix":[1, 6], "x":6.5, "y":1},
241+
{"label":"U", "matrix":[1, 7], "x":7.5, "y":1},
242+
{"label":"I", "matrix":[1, 8], "x":8.5, "y":1},
243+
{"label":"O", "matrix":[1, 9], "x":9.5, "y":1},
244+
{"label":"P", "matrix":[1, 10], "x":10.5, "y":1},
245+
{"label":"[", "matrix":[1, 11], "x":11.5, "y":1},
246+
{"label":"]", "matrix":[1, 12], "x":12.5, "y":1},
247+
{"label":"Backspace", "matrix":[1, 13], "x":13.5, "y":1, "w":1.5},
248+
249+
{"label":"Caps Lock", "matrix":[2, 0], "x":0, "y":2, "w":1.75},
250+
{"label":"A", "matrix":[2, 1], "x":1.75, "y":2},
251+
{"label":"S", "matrix":[2, 2], "x":2.75, "y":2},
252+
{"label":"D", "matrix":[2, 3], "x":3.75, "y":2},
253+
{"label":"F", "matrix":[2, 4], "x":4.75, "y":2},
254+
{"label":"G", "matrix":[2, 5], "x":5.75, "y":2},
255+
{"label":"H", "matrix":[2, 6], "x":6.75, "y":2},
256+
{"label":"J", "matrix":[2, 7], "x":7.75, "y":2},
257+
{"label":"K", "matrix":[2, 8], "x":8.75, "y":2},
258+
{"label":"L", "matrix":[2, 9], "x":9.75, "y":2},
259+
{"label":";", "matrix":[2, 10], "x":10.75, "y":2},
260+
{"label":"'", "matrix":[2, 11], "x":11.75, "y":2},
261+
{"label":"Enter", "matrix":[2, 12], "x":12.75, "y":2, "w":2.25},
262+
263+
{"label":"Shift", "matrix":[3, 0], "x":0, "y":3, "w":2.25},
264+
{"label":"Z", "matrix":[3, 1], "x":2.25, "y":3},
265+
{"label":"X", "matrix":[3, 2], "x":3.25, "y":3},
266+
{"label":"C", "matrix":[3, 3], "x":4.25, "y":3},
267+
{"label":"V", "matrix":[3, 4], "x":5.25, "y":3},
268+
{"label":"B", "matrix":[3, 5], "x":6.25, "y":3},
269+
{"label":"N", "matrix":[3, 6], "x":7.25, "y":3},
270+
{"label":"M", "matrix":[3, 7], "x":8.25, "y":3},
271+
{"label":",", "matrix":[3, 8], "x":9.25, "y":3},
272+
{"label":".", "matrix":[3, 9], "x":10.25, "y":3},
273+
{"label":"/", "matrix":[3, 11], "x":11.25, "y":3},
274+
{"label":"Shift", "matrix":[3, 12], "x":12.25, "y":3, "w":1.75},
275+
{"label":"Fn", "matrix":[3, 13], "x":14, "y":3},
276+
277+
{"label":"Ctrl", "matrix":[4, 0], "x":0, "y":4, "w":1.5},
278+
{"label":"GUI", "matrix":[4, 1], "x":1.5, "y":4},
279+
{"label":"Alt", "matrix":[4, 2], "x":2.5, "y":4, "w":1.5},
280+
{"label":"Space", "matrix":[4, 5], "x":4, "y":4, "w":7},
281+
{"label":"Alt", "matrix":[4, 10], "x":11, "y":4, "w":1.5},
282+
{"label":"Fn", "matrix":[4, 12], "x":12.5, "y":4},
283+
{"label":"Ctrl", "matrix":[4, 13], "x":13.5, "y":4, "w":1.5}
284+
]
77285
}
78286
}
79287
}

keyboards/xelus/rs60/rev1/rev1.h

+17
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,23 @@
1919

2020
#define XXX KC_NO
2121

22+
/*
23+
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐
24+
* │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │2D │ │0D │ 2u Backspace
25+
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ └───────┘
26+
* │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │
27+
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
28+
* │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │
29+
* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌──────────┐
30+
* │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3B │3C │3D │ │3C │ 2.75u RShift
31+
* ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤ └──────────┘
32+
* │40 │41 │42 │45 │49 │4A │4C │4D │
33+
* └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
34+
* ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
35+
* │40 │41 │42 │45 │4A │4C │4D │ Tsangan/WKL/HHKB
36+
* └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
37+
*/
38+
2239
#define LAYOUT_60_ansi_split_bs_rshift( \
2340
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \
2441
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \

keyboards/xelus/rs60/rev1/rules.mk

-2
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
1616
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
1717
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
1818
AUDIO_ENABLE = no # Audio output
19-
20-
LAYOUTS = 60_ansi_split_bs_rshift

keyboards/xelus/rs60/rev2_0/rev2_0.h

+17
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,23 @@
1919

2020
#define XXX KC_NO
2121

22+
/*
23+
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐
24+
* │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │2D │ │0D │ 2u Backspace
25+
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ └───────┘
26+
* │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │
27+
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
28+
* │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │
29+
* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌──────────┐
30+
* │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3B │3C │3D │ │3C │ 2.75u RShift
31+
* ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤ └──────────┘
32+
* │40 │41 │42 │45 │49 │4A │4C │4D │
33+
* └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
34+
* ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
35+
* │40 │41 │42 │45 │4A │4C │4D │ Tsangan/WKL/HHKB
36+
* └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
37+
*/
38+
2239
#define LAYOUT_60_ansi_split_bs_rshift( \
2340
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \
2441
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \

keyboards/xelus/rs60/rev2_0/rules.mk

-2
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,3 @@ KEYBOARD_SHARED_EP = yes
2424

2525
# Enter lower-power sleep mode when on the ChibiOS idle thread
2626
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
27-
28-
LAYOUTS = 60_ansi_split_bs_rshift

0 commit comments

Comments
 (0)