1
0
Fork 0

Move single LAYOUTs to data driven (#20365)

This commit is contained in:
Ryan 2023-04-12 13:42:51 +10:00 committed by GitHub
parent 941e159a28
commit 5bd68e3695
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
1443 changed files with 45214 additions and 59923 deletions

View file

@ -18,87 +18,93 @@
"layouts": {
"LAYOUT": {
"layout": [
{"label":"Esc", "x":0, "y":0},
{"label":"F1", "x":1, "y":0},
{"label":"F2", "x":2, "y":0},
{"label":"F3", "x":3, "y":0},
{"label":"F4", "x":4, "y":0},
{"label":"F5", "x":5, "y":0},
{"label":"F6", "x":6, "y":0},
{"label":"F7", "x":7, "y":0},
{"label":"F8", "x":8, "y":0},
{"label":"F9", "x":9, "y":0},
{"label":"F10", "x":10, "y":0},
{"label":"Num Lock", "x":11.5, "y":0},
{"label":"Scroll Lock", "x":12.5, "y":0},
{"label":"Print Screen", "x":13.5, "y":0},
{"label":"Pause", "x":14.5, "y":0},
{"label":"`", "x":0, "y":1.5},
{"label":"1", "x":1, "y":1.5},
{"label":"2", "x":2, "y":1.5},
{"label":"3", "x":3, "y":1.5},
{"label":"4", "x":4, "y":1.5},
{"label":"5", "x":5, "y":1.5},
{"label":"6", "x":6, "y":1.5},
{"label":"7", "x":7, "y":1.5},
{"label":"8", "x":8, "y":1.5},
{"label":"9", "x":9, "y":1.5},
{"label":"0", "x":10, "y":1.5},
{"label":"-", "x":11, "y":1.5},
{"label":"=", "x":12, "y":1.5},
{"label":"Backspace", "x":13, "y":1.5, "w":1.5},
{"label":"Home", "x":14.5, "y":1.5},
{"label":"Tab", "x":0, "y":2.5, "w":1.5},
{"label":"Q", "x":1.5, "y":2.5},
{"label":"W", "x":2.5, "y":2.5},
{"label":"E", "x":3.5, "y":2.5},
{"label":"R", "x":4.5, "y":2.5},
{"label":"T", "x":5.5, "y":2.5},
{"label":"Y", "x":6.5, "y":2.5},
{"label":"U", "x":7.5, "y":2.5},
{"label":"I", "x":8.5, "y":2.5},
{"label":"O", "x":9.5, "y":2.5},
{"label":"P", "x":10.5, "y":2.5},
{"label":"[", "x":11.5, "y":2.5},
{"label":"]", "x":12.5, "y":2.5},
{"label":"Page Up", "x":14.5, "y":2.5},
{"label":"Ctrl", "x":0, "y":3.5, "w":1.75},
{"label":"A", "x":1.75, "y":3.5},
{"label":"S", "x":2.75, "y":3.5},
{"label":"D", "x":3.75, "y":3.5},
{"label":"F", "x":4.75, "y":3.5},
{"label":"G", "x":5.75, "y":3.5},
{"label":"H", "x":6.75, "y":3.5},
{"label":"J", "x":7.75, "y":3.5},
{"label":"K", "x":8.75, "y":3.5},
{"label":"L", "x":9.75, "y":3.5},
{"label":";", "x":10.75, "y":3.5},
{"label":"'", "x":11.75, "y":3.5},
{"label":"Enter", "x":12.75, "y":3.5, "w":1.75},
{"label":"Page Down", "x":14.5, "y":3.5},
{"label":"Shift", "x":0, "y":4.5, "w":2.25},
{"label":"Z", "x":2.25, "y":4.5},
{"label":"X", "x":3.25, "y":4.5},
{"label":"C", "x":4.25, "y":4.5},
{"label":"V", "x":5.25, "y":4.5},
{"label":"B", "x":6.25, "y":4.5},
{"label":"N", "x":7.25, "y":4.5},
{"label":"M", "x":8.25, "y":4.5},
{"label":",", "x":9.25, "y":4.5},
{"label":".", "x":10.25, "y":4.5},
{"label":"/", "x":11.25, "y":4.5},
{"label":"Shift", "x":12.25, "y":4.5, "w":1.25},
{"label":"Up", "x":13.5, "y":4.5},
{"label":"End", "x":14.5, "y":4.5},
{"label":"Alt", "x":0, "y":5.5, "w":1.25},
{"label":"Caps Lock", "x":1.25, "y":5.5, "w":1.25},
{"label":"\\", "x":2.5, "y":5.5},
{"label":"Space", "x":3.5, "y":5.5, "w":7},
{"label":"Insert", "x":10.5, "y":5.5},
{"label":"Delete", "x":11.5, "y":5.5},
{"label":"Left", "x":12.5, "y":5.5},
{"label":"Down", "x":13.5, "y":5.5},
{"label":"Right", "x":14.5, "y":5.5}
{"matrix": [7, 7], "x": 0, "y": 0},
{"matrix": [0, 5], "x": 1, "y": 0},
{"matrix": [0, 4], "x": 2, "y": 0},
{"matrix": [0, 3], "x": 3, "y": 0},
{"matrix": [0, 2], "x": 4, "y": 0},
{"matrix": [0, 1], "x": 5, "y": 0},
{"matrix": [0, 0], "x": 6, "y": 0},
{"matrix": [10, 7], "x": 7, "y": 0},
{"matrix": [10, 6], "x": 8, "y": 0},
{"matrix": [10, 5], "x": 9, "y": 0},
{"matrix": [10, 4], "x": 10, "y": 0},
{"matrix": [10, 3], "x": 11.5, "y": 0},
{"matrix": [10, 2], "x": 12.5, "y": 0},
{"matrix": [1, 1], "x": 13.5, "y": 0},
{"matrix": [9, 4], "x": 14.5, "y": 0},
{"matrix": [2, 7], "x": 0, "y": 1.5},
{"matrix": [7, 6], "x": 1, "y": 1.5},
{"matrix": [7, 5], "x": 2, "y": 1.5},
{"matrix": [7, 4], "x": 3, "y": 1.5},
{"matrix": [7, 3], "x": 4, "y": 1.5},
{"matrix": [7, 2], "x": 5, "y": 1.5},
{"matrix": [7, 1], "x": 6, "y": 1.5},
{"matrix": [7, 0], "x": 7, "y": 1.5},
{"matrix": [6, 7], "x": 8, "y": 1.5},
{"matrix": [6, 6], "x": 9, "y": 1.5},
{"matrix": [6, 5], "x": 10, "y": 1.5},
{"matrix": [6, 4], "x": 11, "y": 1.5},
{"matrix": [6, 3], "x": 12, "y": 1.5},
{"matrix": [6, 2], "x": 13, "y": 1.5, "w": 1.5},
{"matrix": [10, 1], "x": 14.5, "y": 1.5},
{"matrix": [6, 1], "x": 0, "y": 2.5, "w": 1.5},
{"matrix": [6, 0], "x": 1.5, "y": 2.5},
{"matrix": [5, 7], "x": 2.5, "y": 2.5},
{"matrix": [5, 6], "x": 3.5, "y": 2.5},
{"matrix": [5, 5], "x": 4.5, "y": 2.5},
{"matrix": [5, 4], "x": 5.5, "y": 2.5},
{"matrix": [5, 3], "x": 6.5, "y": 2.5},
{"matrix": [5, 2], "x": 7.5, "y": 2.5},
{"matrix": [5, 1], "x": 8.5, "y": 2.5},
{"matrix": [5, 0], "x": 9.5, "y": 2.5},
{"matrix": [4, 7], "x": 10.5, "y": 2.5},
{"matrix": [4, 6], "x": 11.5, "y": 2.5},
{"matrix": [4, 5], "x": 12.5, "y": 2.5},
{"matrix": [9, 7], "x": 14.5, "y": 2.5},
{"matrix": [4, 3], "x": 0, "y": 3.5, "w": 1.75},
{"matrix": [4, 2], "x": 1.75, "y": 3.5},
{"matrix": [4, 1], "x": 2.75, "y": 3.5},
{"matrix": [4, 0], "x": 3.75, "y": 3.5},
{"matrix": [3, 7], "x": 4.75, "y": 3.5},
{"matrix": [3, 6], "x": 5.75, "y": 3.5},
{"matrix": [3, 5], "x": 6.75, "y": 3.5},
{"matrix": [3, 4], "x": 7.75, "y": 3.5},
{"matrix": [3, 3], "x": 8.75, "y": 3.5},
{"matrix": [3, 2], "x": 9.75, "y": 3.5},
{"matrix": [3, 1], "x": 10.75, "y": 3.5},
{"matrix": [3, 0], "x": 11.75, "y": 3.5},
{"matrix": [4, 4], "x": 12.75, "y": 3.5, "w": 1.75},
{"matrix": [8, 7], "x": 14.5, "y": 3.5},
{"matrix": [2, 6], "x": 0, "y": 4.5, "w": 2.25},
{"matrix": [2, 4], "x": 2.25, "y": 4.5},
{"matrix": [2, 3], "x": 3.25, "y": 4.5},
{"matrix": [2, 2], "x": 4.25, "y": 4.5},
{"matrix": [2, 1], "x": 5.25, "y": 4.5},
{"matrix": [2, 0], "x": 6.25, "y": 4.5},
{"matrix": [1, 7], "x": 7.25, "y": 4.5},
{"matrix": [1, 6], "x": 8.25, "y": 4.5},
{"matrix": [1, 5], "x": 9.25, "y": 4.5},
{"matrix": [1, 4], "x": 10.25, "y": 4.5},
{"matrix": [1, 3], "x": 11.25, "y": 4.5},
{"matrix": [1, 2], "x": 12.25, "y": 4.5, "w": 1.25},
{"matrix": [10, 0], "x": 13.5, "y": 4.5},
{"matrix": [9, 1], "x": 14.5, "y": 4.5},
{"matrix": [1, 0], "x": 0, "y": 5.5, "w": 1.25},
{"matrix": [0, 6], "x": 1.25, "y": 5.5, "w": 1.25},
{"matrix": [2, 5], "x": 2.5, "y": 5.5},
{"matrix": [0, 7], "x": 3.5, "y": 5.5, "w": 7},
{"matrix": [8, 6], "x": 10.5, "y": 5.5},
{"matrix": [8, 5], "x": 11.5, "y": 5.5},
{"matrix": [9, 5], "x": 12.5, "y": 5.5},
{"matrix": [9, 0], "x": 13.5, "y": 5.5},
{"matrix": [9, 3], "x": 14.5, "y": 5.5}
]
}
}

View file

@ -4,34 +4,6 @@ The retro refit keyboard used a Teensy to replace the original controller on a 3
[Image Gallery](https://imgur.com/a/08Fyj)
This keyboard uses a LAYOUT macro that is a great example of using a non-standard row-column matrix. The keyboard in question had 11 rows and 8 columns, but the rows were not all horizontal, and the columns were not all vertical. For example, row 2 contained "Print Screen", "N", "M", ",", ".", "/", "Right Shift", and"Left Alt". Column 0 contained "F6", "7", "O", "'", "Q", "D", "B", "Left Alt", "Up Arrow", and "Down Arrow".
The macro makes programming the keys easier and in a more straight-forward manner because it realigns the keys into a 6x15 sensible keyboard layout instead of the obtuse 11x8 matrix. Each Kxy corresponds to a key in row x column y.
```
#define LAYOUT( \
K77, K05, K04, K03, K02, K01, K00, KA7, KA6, KA5, KA4, KA3, KA2, K11, K94, \
K27, K76, K75, K74, K73, K72, K71, K70, K67, K66, K65, K64, K63, K62, KA1, \
K61, K60, K57, K56, K55, K54, K53, K52, K51, K50, K47, K46, K45, K97, \
K43, K42, K41, K40, K37, K36, K35, K34, K33, K32, K31, K30, K44, K87, \
K26, K24, K23, K22, K21, K20, K17, K16, K15, K14, K13, K12, KA0, K91, \
K10, K06, K25, K07, K86, K85, K95, K90, K93 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
{ K20, K21, K22, K23, K24, K25, K26, K27 }, \
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
{ K40, K41, K42, K43, K44, K45, K46, K47 }, \
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
{ K70, K71, K72, K73, K74, K75, K76, K77 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K85, K86, K87 }, \
{ K90, K91, KC_NO, K93, K94, K95, KC_NO, K97 }, \
{ KA0, KA1, KA2, KA3, KA4, KA5, KA6, KA7 } \
}
```
Keyboard Maintainer: [The QMK Community](https://github.com/qmk)
Hardware Supported: Leading Edge D3 386 keyboard, Teensy

View file

@ -1,4 +1,4 @@
#include "retro_refit.h"
#include "quantum.h"
#include "led.h"
void matrix_init_kb(void) {

View file

@ -1,35 +0,0 @@
#pragma once
#include "quantum.h"
// This macro is an example of using a non-standard row-column matrix. The
// keyboard in question had 11 rows and 8 columns, but the rows were not all
// horizontal, and the columns were not all vertical. For example, row 2
// contained "Print Screen", "N", "M", ",", ".", "/", "Right Shift", and
// "Left Alt". Column 0 contained "F6", "7", "O", "'", "Q", "D", "B",
// "Left Alt", "Up Arrow", and "Down Arrow".
//
// The macro makes programming the keys easier and in a more straight-forward
// manner because it realigns the keys into a 6x15 sensible keyboard layout
// instead of the obtuse 11x8 matrix.
#define LAYOUT( \
K77, K05, K04, K03, K02, K01, K00, KA7, KA6, KA5, KA4, KA3, KA2, K11, K94, \
K27, K76, K75, K74, K73, K72, K71, K70, K67, K66, K65, K64, K63, K62, KA1, \
K61, K60, K57, K56, K55, K54, K53, K52, K51, K50, K47, K46, K45, K97, \
K43, K42, K41, K40, K37, K36, K35, K34, K33, K32, K31, K30, K44, K87, \
K26, K24, K23, K22, K21, K20, K17, K16, K15, K14, K13, K12, KA0, K91, \
K10, K06, K25, K07, K86, K85, K95, K90, K93 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
{ K20, K21, K22, K23, K24, K25, K26, K27 }, \
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
{ K40, K41, K42, K43, K44, K45, K46, K47 }, \
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
{ K70, K71, K72, K73, K74, K75, K76, K77 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K85, K86, K87 }, \
{ K90, K91, KC_NO, K93, K94, K95, KC_NO, K97 }, \
{ KA0, KA1, KA2, KA3, KA4, KA5, KA6, KA7 } \
}