~ruther/qmk_firmware

06664e8a94116b5d40b2348ec89ba2fc6248ec16 — Ryan 2 years ago dc2a625
Fix layouts containing keys with multiple matrix positions (#20191)

43 files changed, 2144 insertions(+), 1818 deletions(-)

D keyboards/1upkeyboards/1up60rgb/1up60rgb.h
M keyboards/1upkeyboards/1up60rgb/info.json
M keyboards/40percentclub/ut47/info.json
M keyboards/40percentclub/ut47/ut47.c
D keyboards/40percentclub/ut47/ut47.h
D keyboards/converter/a1200/a1200.h
M keyboards/converter/a1200/info.json
M keyboards/converter/hp_46010a/hp_46010a.h
D keyboards/handwired/ddg_56/ddg_56.h
M keyboards/handwired/ddg_56/info.json
M keyboards/handwired/uthol/info.json
D keyboards/handwired/uthol/uthol.h
M keyboards/handwired/wabi/info.json
D keyboards/handwired/wabi/wabi.h
M keyboards/jian/handwired/handwired.c
D keyboards/jian/handwired/handwired.h
M keyboards/jian/handwired/info.json
M keyboards/jian/info.json
M keyboards/jian/keymaps/advanced/keymap.c
M keyboards/jian/keymaps/default/keymap.c
M keyboards/jian/keymaps/left_hand/keymap.c
M keyboards/jian/keymaps/via/keymap.c
M keyboards/jian/nsrev2/info.json
M keyboards/jian/nsrev2/nsrev2.c
D keyboards/jian/nsrev2/nsrev2.h
M keyboards/jian/rev1/info.json
M keyboards/jian/rev1/rev1.h
M keyboards/jian/rev2/info.json
M keyboards/jian/rev2/rev2.c
D keyboards/jian/rev2/rev2.h
M keyboards/keyhive/ut472/info.json
D keyboards/keyhive/ut472/ut472.h
M keyboards/maxr1998/phoebe/info.json
M keyboards/maxr1998/phoebe/phoebe.c
D keyboards/maxr1998/phoebe/phoebe.h
M keyboards/mechkeys/mechmini/v2/info.json
D keyboards/mechkeys/mechmini/v2/v2.h
M keyboards/mt/mt40/info.json
D keyboards/mt/mt40/mt40.h
M keyboards/sx60/info.json
M keyboards/sx60/sx60.h
M keyboards/xiudi/xd96/info.json
D keyboards/xiudi/xd96/xd96.h
D keyboards/1upkeyboards/1up60rgb/1up60rgb.h => keyboards/1upkeyboards/1up60rgb/1up60rgb.h +0 -109
@@ 1,109 0,0 @@
#pragma once

#include "quantum.h"

#define XXX KC_NO

#define LAYOUT_all( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, \
    k10,      k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, \
    k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B,      k3D, k3E, \
    k40, k41,      k43,           k46,                k4A, k4B,      k4D, k4E \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \
    { k10, XXX, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \
    { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, XXX, k3D, k3E }, \
    { k40, k41, XXX, k43, XXX, XXX, k46, XXX, XXX, XXX, k4A, k4B, XXX, k4D, k4E } \
}

/* ANSI variant. No extra keys for ISO */
#define LAYOUT_60_ansi( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, \
    k10,      k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C,      k2E, \
    k30,      k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B,      k3D, \
    k40, k41,      k43,           k46,                k4A, k4B,      k4D, k4E \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, XXX }, \
    { k10, XXX, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2E, XXX }, \
    { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, XXX, k3D, XXX }, \
    { k40, k41, XXX, k43, XXX, XXX, k46, XXX, XXX, XXX, k4A, k4B, XXX, k4D, k4E } \
}

/* ANSI-Tsangan variant, with split right shift key */
#define LAYOUT_60_ansi_tsangan_split_rshift( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, \
    k10,      k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C,      k2E, \
    k30,      k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B,      k3D, k3E, \
    k40, k41,      k43,           k46,                     k4B,      k4D, k4E \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0D }, \
    { k10, XXX, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2E, XXX }, \
    { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, XXX, k3D, k3E }, \
    { k40, k41, XXX, k43, XXX, XXX, k46, XXX, XXX, XXX, XXX, k4B, XXX, k4D, k4E } \
}

/* ISO variant. Remove useless ANSI keys */
#define LAYOUT_60_iso( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, \
    k10,      k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, \
    k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B,      k3D, \
    k40, k41,      k43,           k46,                k4A, k4B,      k4D, k4E \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, XXX }, \
    { k10, XXX, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2D }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2E, XXX }, \
    { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, XXX, k3D, XXX }, \
    { k40, k41, XXX, k43, XXX, XXX, k46, XXX, XXX, XXX, k4A, k4B, XXX, k4D, k4E } \
}

/* HHKB Variant */
#define LAYOUT_60_ansi_split_bs_rshift( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, \
    k10,      k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C,      k2E, \
    k30,      k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B,      k3D, k3E, \
    k40, k41,      k43,           k46,                k4A, k4B,      k4D, k4E  \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \
    { k10, XXX, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2E, XXX }, \
    { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, XXX, k3D, k3E }, \
    { k40, k41, XXX, k43, XXX, XXX, k46, XXX, XXX, XXX, k4A, k4B, XXX, k4D, k4E } \
}

/* ANSI Variant */
#define LAYOUT_60_ansi_split_rshift( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, \
    k10,      k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C,      k2E, \
    k30,      k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B,      k3D, k3E, \
    k40, k41,      k43,           k46,                k4A, k4B,      k4D, k4E  \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0D }, \
    { k10, XXX, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2E, XXX }, \
    { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, XXX, k3D, k3E }, \
    { k40, k41, XXX, k43, XXX, XXX, k46, XXX, XXX, XXX, k4A, k4B, XXX, k4D, k4E } \
}

/* HHKB Variant */
#define LAYOUT_60_hhkb( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, \
    k10,      k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C,      k2E, \
    k30,      k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B,      k3D, k3E, \
         k41,      k43,           k46,                     k4B,      k4D \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \
    { k10, XXX, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2E, XXX }, \
    { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, XXX, k3D, k3E }, \
    { XXX, k41, XXX, k43, XXX, XXX, k46, XXX, XXX, XXX, XXX, k4B, XXX, k4D, XXX } \
}

M keyboards/1upkeyboards/1up60rgb/info.json => keyboards/1upkeyboards/1up60rgb/info.json +467 -35
@@ 23,67 23,499 @@
  "layouts": {
    "LAYOUT_all": {
      "layout": [
        {"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"~", "x":13, "y":0}, {"label":"Del", "x":14, "y":0}, 
        {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, 
        {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, 
        {"label":"Shift", "x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label":"Fn", "x":14, "y":3}, 
        {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 13], "x": 13, "y": 0},
        {"matrix": [0, 14], "x": 14, "y": 0},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
        {"matrix": [1, 2], "x": 1.5, "y": 1},
        {"matrix": [1, 3], "x": 2.5, "y": 1},
        {"matrix": [1, 4], "x": 3.5, "y": 1},
        {"matrix": [1, 5], "x": 4.5, "y": 1},
        {"matrix": [1, 6], "x": 5.5, "y": 1},
        {"matrix": [1, 7], "x": 6.5, "y": 1},
        {"matrix": [1, 8], "x": 7.5, "y": 1},
        {"matrix": [1, 9], "x": 8.5, "y": 1},
        {"matrix": [1, 10], "x": 9.5, "y": 1},
        {"matrix": [1, 11], "x": 10.5, "y": 1},
        {"matrix": [1, 12], "x": 11.5, "y": 1},
        {"matrix": [1, 13], "x": 12.5, "y": 1},
        {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2},
        {"matrix": [2, 11], "x": 10.75, "y": 2},
        {"matrix": [2, 12], "x": 11.75, "y": 2},
        {"matrix": [2, 13], "x": 12.75, "y": 2},
        {"matrix": [2, 14], "x": 13.75, "y": 2, "w": 1.25},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
        {"matrix": [3, 1], "x": 1.25, "y": 3},
        {"matrix": [3, 2], "x": 2.25, "y": 3},
        {"matrix": [3, 3], "x": 3.25, "y": 3},
        {"matrix": [3, 4], "x": 4.25, "y": 3},
        {"matrix": [3, 5], "x": 5.25, "y": 3},
        {"matrix": [3, 6], "x": 6.25, "y": 3},
        {"matrix": [3, 7], "x": 7.25, "y": 3},
        {"matrix": [3, 8], "x": 8.25, "y": 3},
        {"matrix": [3, 9], "x": 9.25, "y": 3},
        {"matrix": [3, 10], "x": 10.25, "y": 3},
        {"matrix": [3, 11], "x": 11.25, "y": 3},
        {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
        {"matrix": [3, 14], "x": 14, "y": 3},

        {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
        {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
        {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
        {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
        {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
        {"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
        {"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
      ]
    },

    "LAYOUT_60_ansi": {
      "layout": [
        {"x":0, "y":0, "label":"~"}, {"x":1, "y":0, "label":"!"}, {"x":2, "y":0, "label":"@"}, {"x":3, "y":0, "label":"#"}, {"x":4, "y":0, "label":"$"}, {"x":5, "y":0, "label":"%"}, {"x":6, "y":0, "label":"^"}, {"x":7, "y":0, "label":"&"}, {"x":8, "y":0, "label":"*"}, {"x":9, "y":0, "label":"("}, {"x":10, "y":0, "label":")"}, {"x":11, "y":0, "label":"_"}, {"x":12, "y":0, "label":"+"}, {"x":13, "y":0, "label":"Backspace", "w":2}, 
        {"x":0, "y":1, "label":"Tab", "w":1.5}, {"x":1.5, "y":1, "label":"Q"}, {"x":2.5, "y":1, "label":"W"}, {"x":3.5, "y":1, "label":"E"}, {"x":4.5, "y":1, "label":"R"}, {"x":5.5, "y":1, "label":"T"}, {"x":6.5, "y":1, "label":"Y"}, {"x":7.5, "y":1, "label":"U"}, {"x":8.5, "y":1, "label":"I"}, {"x":9.5, "y":1, "label":"O"}, {"x":10.5, "y":1, "label":"P"}, {"x":11.5, "y":1, "label":"{"}, {"x":12.5, "y":1, "label":"}"}, {"x":13.5, "y":1, "label":"|", "w":1.5}, 
        {"x":0, "y":2, "label":"Caps Lock", "w":1.75}, {"x":1.75, "y":2, "label":"A"}, {"x":2.75, "y":2, "label":"S"}, {"x":3.75, "y":2, "label":"D"}, {"x":4.75, "y":2, "label":"F"}, {"x":5.75, "y":2, "label":"G"}, {"x":6.75, "y":2, "label":"H"}, {"x":7.75, "y":2, "label":"J"}, {"x":8.75, "y":2, "label":"K"}, {"x":9.75, "y":2, "label":"L"}, {"x":10.75, "y":2, "label":":"}, {"x":11.75, "y":2, "label":"\""}, {"x":12.75, "y":2, "label":"Enter", "w":2.25}, 
        {"x":0, "y":3, "label":"Shift", "w":2.25}, {"x":2.25, "y":3, "label":"Z"}, {"x":3.25, "y":3, "label":"X"}, {"x":4.25, "y":3, "label":"C"}, {"x":5.25, "y":3, "label":"V"}, {"x":6.25, "y":3, "label":"B"}, {"x":7.25, "y":3, "label":"N"}, {"x":8.25, "y":3, "label":"M"}, {"x":9.25, "y":3, "label":"<"}, {"x":10.25, "y":3, "label":">"}, {"x":11.25, "y":3, "label":"?"}, {"x":12.25, "y":3, "label":"Shift", "w":2.75}, 
        {"x":0, "y":4, "label":"Ctrl", "w":1.25}, {"x":1.25, "y":4, "label":"Win", "w":1.25}, {"x":2.5, "y":4, "label":"Alt", "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"x":10, "y":4, "label":"Alt", "w":1.25}, {"x":11.25, "y":4, "label":"Win", "w":1.25}, {"x":12.5, "y":4, "label":"Menu", "w":1.25}, {"x":13.75, "y":4, "label":"Ctrl", "w":1.25}]
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 14], "x": 13, "y": 0, "w": 2},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
        {"matrix": [1, 2], "x": 1.5, "y": 1},
        {"matrix": [1, 3], "x": 2.5, "y": 1},
        {"matrix": [1, 4], "x": 3.5, "y": 1},
        {"matrix": [1, 5], "x": 4.5, "y": 1},
        {"matrix": [1, 6], "x": 5.5, "y": 1},
        {"matrix": [1, 7], "x": 6.5, "y": 1},
        {"matrix": [1, 8], "x": 7.5, "y": 1},
        {"matrix": [1, 9], "x": 8.5, "y": 1},
        {"matrix": [1, 10], "x": 9.5, "y": 1},
        {"matrix": [1, 11], "x": 10.5, "y": 1},
        {"matrix": [1, 12], "x": 11.5, "y": 1},
        {"matrix": [1, 13], "x": 12.5, "y": 1},
        {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2},
        {"matrix": [2, 11], "x": 10.75, "y": 2},
        {"matrix": [2, 12], "x": 11.75, "y": 2},
        {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
        {"matrix": [3, 2], "x": 2.25, "y": 3},
        {"matrix": [3, 3], "x": 3.25, "y": 3},
        {"matrix": [3, 4], "x": 4.25, "y": 3},
        {"matrix": [3, 5], "x": 5.25, "y": 3},
        {"matrix": [3, 6], "x": 6.25, "y": 3},
        {"matrix": [3, 7], "x": 7.25, "y": 3},
        {"matrix": [3, 8], "x": 8.25, "y": 3},
        {"matrix": [3, 9], "x": 9.25, "y": 3},
        {"matrix": [3, 10], "x": 10.25, "y": 3},
        {"matrix": [3, 11], "x": 11.25, "y": 3},
        {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},

        {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
        {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
        {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
        {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
        {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
        {"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
        {"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
      ]
    },

    "LAYOUT_60_iso": {
      "layout": [
        {"label":"\u00ac", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, 
        {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, 
        {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"@", "x":11.75, "y":2}, {"label":"~", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, 
        {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, 
        {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"AltGr", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 14], "x": 13, "y": 0, "w": 2},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
        {"matrix": [1, 2], "x": 1.5, "y": 1},
        {"matrix": [1, 3], "x": 2.5, "y": 1},
        {"matrix": [1, 4], "x": 3.5, "y": 1},
        {"matrix": [1, 5], "x": 4.5, "y": 1},
        {"matrix": [1, 6], "x": 5.5, "y": 1},
        {"matrix": [1, 7], "x": 6.5, "y": 1},
        {"matrix": [1, 8], "x": 7.5, "y": 1},
        {"matrix": [1, 9], "x": 8.5, "y": 1},
        {"matrix": [1, 10], "x": 9.5, "y": 1},
        {"matrix": [1, 11], "x": 10.5, "y": 1},
        {"matrix": [1, 12], "x": 11.5, "y": 1},
        {"matrix": [1, 13], "x": 12.5, "y": 1},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2},
        {"matrix": [2, 11], "x": 10.75, "y": 2},
        {"matrix": [2, 12], "x": 11.75, "y": 2},
        {"matrix": [2, 13], "x": 12.75, "y": 2},
        {"matrix": [2, 14], "x": 13.75, "y": 1, "w": 1.25, "h": 2},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
        {"matrix": [3, 1], "x": 1.25, "y": 3},
        {"matrix": [3, 2], "x": 2.25, "y": 3},
        {"matrix": [3, 3], "x": 3.25, "y": 3},
        {"matrix": [3, 4], "x": 4.25, "y": 3},
        {"matrix": [3, 5], "x": 5.25, "y": 3},
        {"matrix": [3, 6], "x": 6.25, "y": 3},
        {"matrix": [3, 7], "x": 7.25, "y": 3},
        {"matrix": [3, 8], "x": 8.25, "y": 3},
        {"matrix": [3, 9], "x": 9.25, "y": 3},
        {"matrix": [3, 10], "x": 10.25, "y": 3},
        {"matrix": [3, 11], "x": 11.25, "y": 3},
        {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},

        {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
        {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
        {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
        {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
        {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
        {"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
        {"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
      ]
    },

    "LAYOUT_60_ansi_split_bs_rshift": {
      "layout": [
        {"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, 
        {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, 
        {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, 
        {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, 
        {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":6}, {"label":"Alt", "x":10, "y":4, "w":1.5}, {"label":"Win", "x":11.5, "y":4}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 13], "x": 13, "y": 0},
        {"matrix": [0, 14], "x": 14, "y": 0},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
        {"matrix": [1, 2], "x": 1.5, "y": 1},
        {"matrix": [1, 3], "x": 2.5, "y": 1},
        {"matrix": [1, 4], "x": 3.5, "y": 1},
        {"matrix": [1, 5], "x": 4.5, "y": 1},
        {"matrix": [1, 6], "x": 5.5, "y": 1},
        {"matrix": [1, 7], "x": 6.5, "y": 1},
        {"matrix": [1, 8], "x": 7.5, "y": 1},
        {"matrix": [1, 9], "x": 8.5, "y": 1},
        {"matrix": [1, 10], "x": 9.5, "y": 1},
        {"matrix": [1, 11], "x": 10.5, "y": 1},
        {"matrix": [1, 12], "x": 11.5, "y": 1},
        {"matrix": [1, 13], "x": 12.5, "y": 1},
        {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2},
        {"matrix": [2, 11], "x": 10.75, "y": 2},
        {"matrix": [2, 12], "x": 11.75, "y": 2},
        {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
        {"matrix": [3, 2], "x": 2.25, "y": 3},
        {"matrix": [3, 3], "x": 3.25, "y": 3},
        {"matrix": [3, 4], "x": 4.25, "y": 3},
        {"matrix": [3, 5], "x": 5.25, "y": 3},
        {"matrix": [3, 6], "x": 6.25, "y": 3},
        {"matrix": [3, 7], "x": 7.25, "y": 3},
        {"matrix": [3, 8], "x": 8.25, "y": 3},
        {"matrix": [3, 9], "x": 9.25, "y": 3},
        {"matrix": [3, 10], "x": 10.25, "y": 3},
        {"matrix": [3, 11], "x": 11.25, "y": 3},
        {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
        {"matrix": [3, 14], "x": 14, "y": 3},

        {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
        {"matrix": [4, 1], "x": 1.5, "y": 4},
        {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
        {"matrix": [4, 6], "x": 4, "y": 4, "w": 6},
        {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.5},
        {"matrix": [4, 11], "x": 11.5, "y": 4},
        {"matrix": [4, 13], "x": 12.5, "y": 4},
        {"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
      ]
    },

    "LAYOUT_60_ansi_split_rshift": {
      "layout": [
        {"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0, "w":2}, 
        {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, 
        {"label":"Esc", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, 
        {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, 
        {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Alt", "x":1.25, "y":4, "w": 1.25}, {"label":"Gui", "x":2.5, "y":4, "w":1.25}, {"label": "Space", "x":3.75, "y":4, "w":6.25}, {"label":"Fn", "x":10, "y":4, "w":1.25}, {"label":"Gui", "x":11.25, "y":4, "w": 1.25}, {"label":"Alt", "x":12.5, "y":4, "w": 1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 14], "x": 13, "y": 0, "w": 2},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
        {"matrix": [1, 2], "x": 1.5, "y": 1},
        {"matrix": [1, 3], "x": 2.5, "y": 1},
        {"matrix": [1, 4], "x": 3.5, "y": 1},
        {"matrix": [1, 5], "x": 4.5, "y": 1},
        {"matrix": [1, 6], "x": 5.5, "y": 1},
        {"matrix": [1, 7], "x": 6.5, "y": 1},
        {"matrix": [1, 8], "x": 7.5, "y": 1},
        {"matrix": [1, 9], "x": 8.5, "y": 1},
        {"matrix": [1, 10], "x": 9.5, "y": 1},
        {"matrix": [1, 11], "x": 10.5, "y": 1},
        {"matrix": [1, 12], "x": 11.5, "y": 1},
        {"matrix": [1, 13], "x": 12.5, "y": 1},
        {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2},
        {"matrix": [2, 11], "x": 10.75, "y": 2},
        {"matrix": [2, 12], "x": 11.75, "y": 2},
        {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
        {"matrix": [3, 2], "x": 2.25, "y": 3},
        {"matrix": [3, 3], "x": 3.25, "y": 3},
        {"matrix": [3, 4], "x": 4.25, "y": 3},
        {"matrix": [3, 5], "x": 5.25, "y": 3},
        {"matrix": [3, 6], "x": 6.25, "y": 3},
        {"matrix": [3, 7], "x": 7.25, "y": 3},
        {"matrix": [3, 8], "x": 8.25, "y": 3},
        {"matrix": [3, 9], "x": 9.25, "y": 3},
        {"matrix": [3, 10], "x": 10.25, "y": 3},
        {"matrix": [3, 11], "x": 11.25, "y": 3},
        {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
        {"matrix": [3, 14], "x": 14, "y": 3},

        {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
        {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
        {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
        {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
        {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
        {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
        {"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
        {"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
      ]
    },

    "LAYOUT_60_ansi_tsangan_split_rshift": {
      "layout": [
        {"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label": "Bksp", "x":13, "y":0, "w":2}, 
        {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, 
        {"label":"Esc", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, 
        {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label": "Alt Gr", "x":14, "y":3}, 
        {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Alt", "x":1.5, "y":4}, {"label":"GUI", "x":2.5, "y":4, "w":1.5}, {"label":"space", "x":4, "y":4, "w":7}, {"label":"Fn", "x":11, "y":4, "w":1.5}, {"label":"Alt", "x":12.5, "y":4}, {"label":"GUI", "x":13.5, "y":4, "w": 1.5}
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 14], "x": 13, "y": 0, "w": 2},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
        {"matrix": [1, 2], "x": 1.5, "y": 1},
        {"matrix": [1, 3], "x": 2.5, "y": 1},
        {"matrix": [1, 4], "x": 3.5, "y": 1},
        {"matrix": [1, 5], "x": 4.5, "y": 1},
        {"matrix": [1, 6], "x": 5.5, "y": 1},
        {"matrix": [1, 7], "x": 6.5, "y": 1},
        {"matrix": [1, 8], "x": 7.5, "y": 1},
        {"matrix": [1, 9], "x": 8.5, "y": 1},
        {"matrix": [1, 10], "x": 9.5, "y": 1},
        {"matrix": [1, 11], "x": 10.5, "y": 1},
        {"matrix": [1, 12], "x": 11.5, "y": 1},
        {"matrix": [1, 13], "x": 12.5, "y": 1},
        {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2},
        {"matrix": [2, 11], "x": 10.75, "y": 2},
        {"matrix": [2, 12], "x": 11.75, "y": 2},
        {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
        {"matrix": [3, 2], "x": 2.25, "y": 3},
        {"matrix": [3, 3], "x": 3.25, "y": 3},
        {"matrix": [3, 4], "x": 4.25, "y": 3},
        {"matrix": [3, 5], "x": 5.25, "y": 3},
        {"matrix": [3, 6], "x": 6.25, "y": 3},
        {"matrix": [3, 7], "x": 7.25, "y": 3},
        {"matrix": [3, 8], "x": 8.25, "y": 3},
        {"matrix": [3, 9], "x": 9.25, "y": 3},
        {"matrix": [3, 10], "x": 10.25, "y": 3},
        {"matrix": [3, 11], "x": 11.25, "y": 3},
        {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
        {"matrix": [3, 14], "x": 14, "y": 3},

        {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
        {"matrix": [4, 1], "x": 1.5, "y": 4},
        {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
        {"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
        {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
        {"matrix": [4, 13], "x": 12.5, "y": 4},
        {"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
      ]
    },

    "LAYOUT_60_hhkb": {
      "layout": [
        {"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"|", "x":13, "y":0}, {"label":"~", "x":14, "y":0}, 
        {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"Delete", "x":13.5, "y":1, "w":1.5}, 
        {"label":"Control", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, 
        {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label":"Fn", "x":14, "y":3}, 
        {"label":"Os", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"Alt", "x":11, "y":4, "w":1.5}, {"label":"Os", "x":12.5, "y":4}]
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 13], "x": 13, "y": 0},
        {"matrix": [0, 14], "x": 14, "y": 0},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
        {"matrix": [1, 2], "x": 1.5, "y": 1},
        {"matrix": [1, 3], "x": 2.5, "y": 1},
        {"matrix": [1, 4], "x": 3.5, "y": 1},
        {"matrix": [1, 5], "x": 4.5, "y": 1},
        {"matrix": [1, 6], "x": 5.5, "y": 1},
        {"matrix": [1, 7], "x": 6.5, "y": 1},
        {"matrix": [1, 8], "x": 7.5, "y": 1},
        {"matrix": [1, 9], "x": 8.5, "y": 1},
        {"matrix": [1, 10], "x": 9.5, "y": 1},
        {"matrix": [1, 11], "x": 10.5, "y": 1},
        {"matrix": [1, 12], "x": 11.5, "y": 1},
        {"matrix": [1, 13], "x": 12.5, "y": 1},
        {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2},
        {"matrix": [2, 11], "x": 10.75, "y": 2},
        {"matrix": [2, 12], "x": 11.75, "y": 2},
        {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
        {"matrix": [3, 2], "x": 2.25, "y": 3},
        {"matrix": [3, 3], "x": 3.25, "y": 3},
        {"matrix": [3, 4], "x": 4.25, "y": 3},
        {"matrix": [3, 5], "x": 5.25, "y": 3},
        {"matrix": [3, 6], "x": 6.25, "y": 3},
        {"matrix": [3, 7], "x": 7.25, "y": 3},
        {"matrix": [3, 8], "x": 8.25, "y": 3},
        {"matrix": [3, 9], "x": 9.25, "y": 3},
        {"matrix": [3, 10], "x": 10.25, "y": 3},
        {"matrix": [3, 11], "x": 11.25, "y": 3},
        {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
        {"matrix": [3, 14], "x": 14, "y": 3},

        {"matrix": [4, 1], "x": 1.5, "y": 4},
        {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
        {"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
        {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
        {"matrix": [4, 13], "x": 12.5, "y": 4}
      ]
    }
  }
}

M keyboards/40percentclub/ut47/info.json => keyboards/40percentclub/ut47/info.json +52 -1
@@ 12,7 12,58 @@
  "bootloader": "caterina",
  "layouts": {
    "LAYOUT": {
      "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Backspace", "x":11, "y":0, "w":1.5}, {"label":"LT(3) / Tab", "x":0, "y":1, "w":1.25}, {"label":"A", "x":1.25, "y":1}, {"label":"S", "x":2.25, "y":1}, {"label":"D", "x":3.25, "y":1}, {"label":"F", "x":4.25, "y":1}, {"label":"G", "x":5.25, "y":1}, {"label":"H", "x":6.25, "y":1}, {"label":"J", "x":7.25, "y":1}, {"label":"K", "x":8.25, "y":1}, {"label":"L", "x":9.25, "y":1}, {"label":":", "x":10.25, "y":1}, {"label":"\"", "x":11.25, "y":1, "w":1.25}, {"label":"Shift", "x":0, "y":2, "w":1.5}, {"label":"Z", "x":1.5, "y":2}, {"label":"X", "x":2.5, "y":2}, {"label":"C", "x":3.5, "y":2}, {"label":"V", "x":4.5, "y":2}, {"label":"B", "x":5.5, "y":2}, {"label":"N", "x":6.5, "y":2}, {"label":"M", "x":7.5, "y":2}, {"label":"<", "x":8.5, "y":2}, {"label":">", "x":9.5, "y":2}, {"label":"?", "x":10.5, "y":2}, {"label":"Shift / Enter", "x":11.5, "y":2}, {"label":"Ctrl", "x":0, "y":3}, {"label":"Alt", "x":1, "y":3}, {"label":"GUI", "x":2, "y":3}, {"label":"Menu", "x":3, "y":3}, {"label":"MO(2)", "x":4, "y":3, "w":1.25}, {"x":5.25, "y":3, "w":2}, {"label":"MO(1)", "x":7.25, "y":3, "w":1.25}, {"label":"\u2190", "x":8.5, "y":3}, {"label":"\u2193", "x":9.5, "y":3}, {"label":"\u2191", "x":10.5, "y":3}, {"label":"\u2192", "x":11.5, "y":3}]
      "layout": [
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0, "w": 1.5},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.25},
        {"matrix": [1, 1], "x": 1.25, "y": 1},
        {"matrix": [1, 2], "x": 2.25, "y": 1},
        {"matrix": [1, 3], "x": 3.25, "y": 1},
        {"matrix": [1, 4], "x": 4.25, "y": 1},
        {"matrix": [1, 5], "x": 5.25, "y": 1},
        {"matrix": [1, 6], "x": 6.25, "y": 1},
        {"matrix": [1, 7], "x": 7.25, "y": 1},
        {"matrix": [1, 8], "x": 8.25, "y": 1},
        {"matrix": [1, 9], "x": 9.25, "y": 1},
        {"matrix": [1, 10], "x": 10.25, "y": 1},
        {"matrix": [1, 11], "x": 11.25, "y": 1, "w": 1.25},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
        {"matrix": [2, 1], "x": 1.5, "y": 2},
        {"matrix": [2, 2], "x": 2.5, "y": 2},
        {"matrix": [2, 3], "x": 3.5, "y": 2},
        {"matrix": [2, 4], "x": 4.5, "y": 2},
        {"matrix": [2, 5], "x": 5.5, "y": 2},
        {"matrix": [2, 6], "x": 6.5, "y": 2},
        {"matrix": [2, 7], "x": 7.5, "y": 2},
        {"matrix": [2, 8], "x": 8.5, "y": 2},
        {"matrix": [2, 9], "x": 9.5, "y": 2},
        {"matrix": [2, 10], "x": 10.5, "y": 2},
        {"matrix": [2, 11], "x": 11.5, "y": 2},

        {"matrix": [3, 0], "x": 0, "y": 3},
        {"matrix": [3, 1], "x": 1, "y": 3},
        {"matrix": [3, 2], "x": 2, "y": 3},
        {"matrix": [3, 3], "x": 3, "y": 3},
        {"matrix": [3, 4], "x": 4, "y": 3, "w": 1.25},
        {"matrix": [3, 5], "x": 5.25, "y": 3, "w": 2},
        {"matrix": [3, 7], "x": 7.25, "y": 3, "w": 1.25},
        {"matrix": [3, 8], "x": 8.5, "y": 3},
        {"matrix": [3, 9], "x": 9.5, "y": 3},
        {"matrix": [3, 10], "x": 10.5, "y": 3},
        {"matrix": [3, 11], "x": 11.5, "y": 3}
      ]
    }
  }
}

M keyboards/40percentclub/ut47/ut47.c => keyboards/40percentclub/ut47/ut47.c +1 -1
@@ 13,7 13,7 @@
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include "ut47.h"
#include "quantum.h"
#ifdef LED_ENABLE
  #include "uart.h"


D keyboards/40percentclub/ut47/ut47.h => keyboards/40percentclub/ut47/ut47.h +0 -31
@@ 1,31 0,0 @@
/* Copyright 2018 Carlos Filoteo
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#pragma once

#include "quantum.h"

#define LAYOUT( \
  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \
  K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \
  K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \
  K30, K31, K32, K33, K34,    K35,   K37, K38, K39, K3a, K3b  \
) \
  { \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b }, \
    { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b }, \
    { K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, K3a, K3b }  \
  }

D keyboards/converter/a1200/a1200.h => keyboards/converter/a1200/a1200.h +0 -47
@@ 1,47 0,0 @@
/* Copyright 2021 8bits4ever
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#pragma once

#define _x_ KC_NO

#include "quantum.h"

/* This a shortcut to help you visually see your layout.
 * The first section contains "names" for physical keys of the keyboard
 * and defines their position on the board.
 * The second section defines position of the keys on the switch matrix 
 * (where COLUMNS and ROWS crosses). */

#define LAYOUT( \
    K5A,      K5B, K5C, K5D, K5E, K5F,      K5G, K5H, K5I, K5J, K5K,    \
    \
    K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4M, K4N,K4O,    K4P, K4Q,       K4R, K4S, K4T, K4U, \
    K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M,                             K3R, K3S, K3T, K3U, \
    K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, K2M, K2N, K2O,       K2P,        K2Q, K2R, K2S, K2T, \
    K1A, K1B, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, K1L,      K1M,       K0F, K0G, K0H,   K1O, K1P, K1Q, K1R, \
    K0A,      K0B,                K0C,                     K0D,      K0E,                        K0I,      K0J \
) \
{ \
/* "Q" */ { K3A,   K3B,   K3C,   K3D,   K3E,   K3F,  K3G,   K3H,  K3I,   K3J,   K3K,   K3L,   K3M,  K2O,   K0F,   K1A }, \
/* "A" */ { K2B,   K2C,   K2D,   K2E,   K2F,   K2G,  K2H,   K2I,  K2J,   K2K,   K2L,   K2M,   K2N,  K4P,   K0H,   K0B }, \
/* "Z" */ { K1B,   K1C,   K1D,   K1E,   K1F,   K1G,  K1H,   K1I,  K1J,   K1K,   K1L,   K4O,   K0C,  K4O,   K0G,   K0A }, \
/* PAD */ { K4U,   K2T,   K3T,   K2S,   K1Q,   K0J,  K3S,   K2R,  K1P,   K1R,   K3R,   K2Q,   K1O,  K0I,   K3U,   K1A }, \
/* "1" */ { K4A,   K4B,   K4C,   K4D,   K4E,   K4F,  K4G,   K4H,  K4I,   K4J,   K4K,   K4L,   K4M,  K4N,   K2P,   K2A }, \
/* 05 */  { _x_,   _x_,   _x_,   _x_,   _x_,   _x_,  _x_,   _x_,  _x_,   _x_,   _x_,   _x_,   _x_,  _x_,   _x_,   K1M }, \
/* FN  */ { K5A,   K4R,   K5B,   K5C,   K5D,   K5E,  K5F,   K4S,  K5G,   K4T,   K5H,   K5I,   K5J,  K5K,   K4Q,   K0D }, \
/* 07 */  { _x_,   _x_,   _x_,   _x_,   _x_,   _x_,  _x_,   _x_,  _x_,   _x_,   _x_,   _x_,   _x_,  _x_,   _x_,   K0E }, \
}
/*         A(15)  B(16)  C(17)  D(18)  E(19)  F(20) G(21)  H(22) I(23)  J(24)  K(25)  L(26)   M(27) N(28)  O(29)  P(30)       */

M keyboards/converter/a1200/info.json => keyboards/converter/a1200/info.json +112 -101
@@ 3,107 3,118 @@
    "layouts": {
        "LAYOUT": {
            "layout": [
            {"label":"Esc", "x":0, "y":0}, 
            {"label":"F1", "x":2, "y":0}, 
            {"label":"F2", "x":3, "y":0}, 
            {"label":"F3", "x":4, "y":0}, 
            {"label":"F4", "x":5, "y":0}, 
            {"label":"F5", "x":6, "y":0}, 
            {"label":"F6", "x":8, "y":0}, 
            {"label":"F7", "x":9, "y":0}, 
            {"label":"F8", "x":10, "y":0}, 
            {"label":"F9", "x":11, "y":0}, 
            {"label":"F10", "x":12, "y":0},
             
            {"label":"~", "x":0, "y":1.5}, 
            {"label":"!", "x":1, "y":1.5}, 
            {"label":"@", "x":2, "y":1.5}, 
            {"label":"#", "x":3, "y":1.5}, 
            {"label":"$", "x":4, "y":1.5}, 
            {"label":"%", "x":5, "y":1.5}, 
            {"label":"^", "x":6, "y":1.5}, 
            {"label":"&", "x":7, "y":1.5}, 
            {"label":"*", "x":8, "y":1.5}, 
            {"label":"(", "x":9, "y":1.5}, 
            {"label":")", "x":10, "y":1.5}, 
            {"label":"_", "x":11, "y":1.5}, 
            {"label":"+", "x":12, "y":1.5}, 
            {"label":"`", "x":13, "y":1.5}, 
            {"label":"Backspace", "x":14, "y":1.5}, 
            {"label":"Del", "x":15.25, "y":1.5, "w":1.5}, 
            {"label":"Help", "x":16.75, "y":1.5, "w":1.5}, 
            {"label":"Num Lock", "x":18.5, "y":1.5}, 
            {"label":"/", "x":19.5, "y":1.5}, 
            {"label":"*", "x":20.5, "y":1.5}, 
            {"label":"-", "x":21.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":"7", "x":18.5, "y":2.5}, 
            {"label":"8", "x":19.5, "y":2.5}, 
            {"label":"9", "x":20.5, "y":2.5}, 
            {"label":"+", "x":21.5, "y":2.5},
             
            {"label":"CTRL", "x":0, "y":3.5}, 
            {"label":"Caps Lock", "x":1, "y":3.5}, 
            {"label":"A", "x":2, "y":3.5}, 
            {"label":"S", "x":3, "y":3.5}, 
            {"label":"D", "x":4, "y":3.5}, 
            {"label":"F", "x":5, "y":3.5}, 
            {"label":"G", "x":6, "y":3.5}, 
            {"label":"H", "x":7, "y":3.5}, 
            {"label":"J", "x":8, "y":3.5}, 
            {"label":"K", "x":9, "y":3.5}, 
            {"label":"L", "x":10, "y":3.5}, 
            {"label":":", "x":11, "y":3.5}, 
            {"label":"\"", "x":12, "y":3.5}, 
            {"label":"~", "x":13, "y":3.5}, 
            {"label":"Enter", "x":14, "y":2.5, "h":2}, 
            {"label":"\u2191", "x":16.25, "y":3.5}, 
            {"label":"4", "x":18.5, "y":3.5}, 
            {"label":"5", "x":19.5, "y":3.5}, 
            {"label":"6", "x":20.5, "y":3.5}, 
            {"label":"+", "x":21.5, "y":3.5},
            
            {"label":"Shift", "x":0, "y":4.5, "w":1.25}, 
            {"label":"|", "x":1.25, "y":4.5}, 
            {"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":2.75}, 
            {"label":"\u2190", "x":15.25, "y":4.5}, 
            {"label":"\u2193", "x":16.25, "y":4.5}, 
            {"label":"\u2192", "x":17.25, "y":4.5}, 
            {"label":"1", "x":18.5, "y":4.5}, 
            {"label":"2", "x":19.5, "y":4.5}, 
            {"label":"3", "x":20.5, "y":4.5}, 
            {"label":"Enter", "x":21.5, "y":4.5, "h":2}, 
            
            {"label":"Alt", "x":1, "y":5.5, "w":1.5}, 
            {"label":"Amiga", "x":2.5, "y":5.5, "w":1.5}, 
            {"label":"Space", "x":4, "y":5.5, "w":7}, 
            {"label":"Amiga", "x":11, "y":5.5, "w":1.5}, 
            {"label":"Alt", "x":12.5, "y":5.5, "w":1.5}, 
            {"label":"0", "x":18.5, "y":5.5, "w":2}, 
            {"label":".", "x":20.5, "y":5.5}]
                {"matrix": [6, 0], "x": 0, "y": 0},

                {"matrix": [6, 2], "x": 2, "y": 0},
                {"matrix": [6, 3], "x": 3, "y": 0},
                {"matrix": [6, 4], "x": 4, "y": 0},
                {"matrix": [6, 5], "x": 5, "y": 0},
                {"matrix": [6, 6], "x": 6, "y": 0},

                {"matrix": [6, 8], "x": 8, "y": 0},
                {"matrix": [6, 10], "x": 9, "y": 0},
                {"matrix": [6, 11], "x": 10, "y": 0},
                {"matrix": [6, 12], "x": 11, "y": 0},
                {"matrix": [6, 13], "x": 12, "y": 0},

                {"matrix": [4, 0], "x": 0, "y": 1.5},
                {"matrix": [4, 1], "x": 1, "y": 1.5},
                {"matrix": [4, 2], "x": 2, "y": 1.5},
                {"matrix": [4, 3], "x": 3, "y": 1.5},
                {"matrix": [4, 4], "x": 4, "y": 1.5},
                {"matrix": [4, 5], "x": 5, "y": 1.5},
                {"matrix": [4, 6], "x": 6, "y": 1.5},
                {"matrix": [4, 7], "x": 7, "y": 1.5},
                {"matrix": [4, 8], "x": 8, "y": 1.5},
                {"matrix": [4, 9], "x": 9, "y": 1.5},
                {"matrix": [4, 10], "x": 10, "y": 1.5},
                {"matrix": [4, 11], "x": 11, "y": 1.5},
                {"matrix": [4, 12], "x": 12, "y": 1.5},
                {"matrix": [4, 13], "x": 13, "y": 1.5},
                {"matrix": [2, 11], "x": 14, "y": 1.5},

                {"matrix": [1, 13], "x": 15.25, "y": 1.5, "w": 1.5},
                {"matrix": [6, 14], "x": 16.75, "y": 1.5, "w": 1.5},

                {"matrix": [6, 1], "x": 18.5, "y": 1.5},
                {"matrix": [6, 7], "x": 19.5, "y": 1.5},
                {"matrix": [6, 9], "x": 20.5, "y": 1.5},
                {"matrix": [3, 0], "x": 21.5, "y": 1.5},

                {"matrix": [0, 0], "x": 0, "y": 2.5, "w": 1.5},
                {"matrix": [0, 1], "x": 1.5, "y": 2.5},
                {"matrix": [0, 2], "x": 2.5, "y": 2.5},
                {"matrix": [0, 3], "x": 3.5, "y": 2.5},
                {"matrix": [0, 4], "x": 4.5, "y": 2.5},
                {"matrix": [0, 5], "x": 5.5, "y": 2.5},
                {"matrix": [0, 6], "x": 6.5, "y": 2.5},
                {"matrix": [0, 7], "x": 7.5, "y": 2.5},
                {"matrix": [0, 8], "x": 8.5, "y": 2.5},
                {"matrix": [0, 9], "x": 9.5, "y": 2.5},
                {"matrix": [0, 10], "x": 10.5, "y": 2.5},
                {"matrix": [0, 11], "x": 11.5, "y": 2.5},
                {"matrix": [0, 12], "x": 12.5, "y": 2.5},

                {"matrix": [3, 10], "x": 18.5, "y": 2.5},
                {"matrix": [3, 6], "x": 19.5, "y": 2.5},
                {"matrix": [3, 2], "x": 20.5, "y": 2.5},
                {"matrix": [3, 14], "x": 21.5, "y": 2.5},

                {"matrix": [4, 15], "x": 0, "y": 3.5},
                {"matrix": [1, 0], "x": 1, "y": 3.5},
                {"matrix": [1, 1], "x": 2, "y": 3.5},
                {"matrix": [1, 2], "x": 3, "y": 3.5},
                {"matrix": [1, 3], "x": 4, "y": 3.5},
                {"matrix": [1, 4], "x": 5, "y": 3.5},
                {"matrix": [1, 5], "x": 6, "y": 3.5},
                {"matrix": [1, 6], "x": 7, "y": 3.5},
                {"matrix": [1, 7], "x": 8, "y": 3.5},
                {"matrix": [1, 8], "x": 9, "y": 3.5},
                {"matrix": [1, 9], "x": 10, "y": 3.5},
                {"matrix": [1, 10], "x": 11, "y": 3.5},
                {"matrix": [1, 11], "x": 12, "y": 3.5},
                {"matrix": [1, 12], "x": 13, "y": 3.5},
                {"matrix": [0, 13], "x": 14, "y": 2.5, "h": 2},

                {"matrix": [4, 14], "x": 16.25, "y": 3.5},

                {"matrix": [3, 11], "x": 18.5, "y": 3.5},
                {"matrix": [3, 7], "x": 19.5, "y": 3.5},
                {"matrix": [3, 3], "x": 20.5, "y": 3.5},
                {"matrix": [3, 1], "x": 21.5, "y": 3.5},

                {"matrix": [3, 15], "x": 0, "y": 4.5, "w": 1.25},
                {"matrix": [2, 0], "x": 1.25, "y": 4.5},
                {"matrix": [2, 1], "x": 2.25, "y": 4.5},
                {"matrix": [2, 2], "x": 3.25, "y": 4.5},
                {"matrix": [2, 3], "x": 4.25, "y": 4.5},
                {"matrix": [2, 4], "x": 5.25, "y": 4.5},
                {"matrix": [2, 5], "x": 6.25, "y": 4.5},
                {"matrix": [2, 6], "x": 7.25, "y": 4.5},
                {"matrix": [2, 7], "x": 8.25, "y": 4.5},
                {"matrix": [2, 8], "x": 9.25, "y": 4.5},
                {"matrix": [2, 9], "x": 10.25, "y": 4.5},
                {"matrix": [2, 10], "x": 11.25, "y": 4.5},
                {"matrix": [5, 15], "x": 12.25, "y": 4.5, "w": 2.75},

                {"matrix": [0, 14], "x": 15.25, "y": 4.5},
                {"matrix": [2, 14], "x": 16.25, "y": 4.5},
                {"matrix": [1, 14], "x": 17.25, "y": 4.5},

                {"matrix": [3, 12], "x": 18.5, "y": 4.5},
                {"matrix": [3, 8], "x": 19.5, "y": 4.5},
                {"matrix": [3, 4], "x": 20.5, "y": 4.5},
                {"matrix": [3, 9], "x": 21.5, "y": 4.5, "h": 2},

                {"matrix": [2, 15], "x": 1, "y": 5.5, "w": 1.5},
                {"matrix": [1, 15], "x": 2.5, "y": 5.5, "w": 1.5},
                {"matrix": [2, 12], "x": 4, "y": 5.5, "w": 7},
                {"matrix": [6, 15], "x": 11, "y": 5.5, "w": 1.5},
                {"matrix": [7, 15], "x": 12.5, "y": 5.5, "w": 1.5},

                {"matrix": [3, 13], "x": 18.5, "y": 5.5, "w": 2},
                {"matrix": [3, 5], "x": 20.5, "y": 5.5}
            ]
        }
    }
}

M keyboards/converter/hp_46010a/hp_46010a.h => keyboards/converter/hp_46010a/hp_46010a.h +1 -1
@@ 54,7 54,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
    {KEY_Y,     KEY_T,    KEY_R,    KEY_E,    KEY_W,    KEY_Q,    KEY_TAB,  KEY_U    }, \
    {KEY_RES,   KEY_F,    KEY_D,    KEY_S,    KEY_A,    KC_NO,    KEY_2,    KEY_H    }, \
    {KEY_P7,    KEY_P4,   KEY_P8,   KEY_P5,   KEY_P9,   KEY_P6,   KEY_PADE, KEY_PCOM }, \
    {KEY_MULT,  KEY_P1,   KEY_DIV,  KEY_P2,   KEY_PLUS, KEY_P3,   KEY_MINU, KEY_PTAB }, \
    {KEY_MULT,  KEY_P1,   KEY_DIV,  KEY_P2,   KEY_ADD,  KEY_P3,   KEY_SUBT, KEY_PTAB }, \
    {KEY_B1,    KEY_P0,   KEY_B2,   KC_NO,    KEY_B3,   KEY_PDOT, KEY_B4,   KC_NO    }, \
    {KEY_B,     KEY_V,    KEY_C,    KEY_X,    KEY_Z,    KEY_PRNT, KEY_DELE, KEY_N    }, \
}

D keyboards/handwired/ddg_56/ddg_56.h => keyboards/handwired/ddg_56/ddg_56.h +0 -32
@@ 1,32 0,0 @@
/* Copyright 2019 Spaceman
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#pragma once

#include "quantum.h"
#define LAYOUT( \
     k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C,     k0D, k1D, \
     k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C,     k2D, k3D, \
     k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, \
     k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C,        k4B, \
               k41, k42, k43, k44, k45, k46, k47, k48, k49,             k4A, k4C, k4D \
) \
{ \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D }, \
    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D }, \
    { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D }, \
    { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D }, \
    { k30, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D } \
}

M keyboards/handwired/ddg_56/info.json => keyboards/handwired/ddg_56/info.json +74 -5
@@ 25,11 25,80 @@
  "layouts": {
      "LAYOUT": {
          "layout": [
            {"x":0, "y":0.25}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.25, "y":0}, {"x":6.25, "y":0}, {"x":7.25, "y":0}, {"x":8.25, "y":0}, {"x":9.25, "y":0}, {"x":10.25, "y":0}, {"x":11.25, "y":0}, {"x":12.25, "y":0}, {"x":14, "y":1}, {"x":15, "y":1},
            {"x":0, "y":1.25}, {"x":1.25, "y":1}, {"x":2.25, "y":1}, {"x":3.25, "y":1}, {"x":4.25, "y":1}, {"x":5.25, "y":1}, {"x":6.25, "y":1}, {"x":7.25, "y":1}, {"x":8.25, "y":1}, {"x":9.25, "y":1}, {"x":10.25, "y":1}, {"x":11.25, "y":1}, {"x":12.25, "y":1}, {"x":14, "y":2}, {"x":15, "y":2},
            {"x":0, "y":2.25}, {"x":1.25, "y":2}, {"x":2.25, "y":2}, {"x":3.25, "y":2}, {"x":4.25, "y":2}, {"x":5.25, "y":2}, {"x":6.25, "y":2}, {"x":7.25, "y":2}, {"x":8.25, "y":2}, {"x":9.25, "y":2}, {"x":10.25, "y":2}, {"x":11.25, "y":2}, {"x":12.25, "y":2},
            {"x":0, "y":3.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3},
            {"x":14.5, "y":3.25}, {"x":1.3333, "y":4, "w":1.5}, {"x":2.8333, "y":4}, {"x":3.8333, "y":4, "w":1.25}, {"x":5.0833, "y":4}, {"x":6.0833, "y":4, "w":2.25}, {"x":8.3333, "y":4}, {"x":9.3333, "y":4, "w":1.25}, {"x":10.5833, "y":4}, {"x":11.5833, "y":4, "w":1.5}, {"x":13.5, "y":4.25}, {"x":14.5, "y":4.25}, {"x":15.5, "y":4.25}]
            {"matrix": [0, 0], "x": 0, "y": 0.25},
            {"matrix": [0, 1], "x": 1.25, "y": 0},
            {"matrix": [0, 2], "x": 2.25, "y": 0},
            {"matrix": [0, 3], "x": 3.25, "y": 0},
            {"matrix": [0, 4], "x": 4.25, "y": 0},
            {"matrix": [0, 5], "x": 5.25, "y": 0},
            {"matrix": [0, 6], "x": 6.25, "y": 0},
            {"matrix": [0, 7], "x": 7.25, "y": 0},
            {"matrix": [0, 8], "x": 8.25, "y": 0},
            {"matrix": [0, 9], "x": 9.25, "y": 0},
            {"matrix": [0, 10], "x": 10.25, "y": 0},
            {"matrix": [0, 11], "x": 11.25, "y": 0},
            {"matrix": [0, 12], "x": 12.25, "y": 0},

            {"matrix": [0, 13], "x": 14, "y": 1},
            {"matrix": [1, 13], "x": 15, "y": 1},
            {"matrix": [1, 0], "x": 0, "y": 1.25},
            {"matrix": [1, 1], "x": 1.25, "y": 1},
            {"matrix": [1, 2], "x": 2.25, "y": 1},
            {"matrix": [1, 3], "x": 3.25, "y": 1},
            {"matrix": [1, 4], "x": 4.25, "y": 1},
            {"matrix": [1, 5], "x": 5.25, "y": 1},
            {"matrix": [1, 6], "x": 6.25, "y": 1},
            {"matrix": [1, 7], "x": 7.25, "y": 1},
            {"matrix": [1, 8], "x": 8.25, "y": 1},
            {"matrix": [1, 9], "x": 9.25, "y": 1},
            {"matrix": [1, 10], "x": 10.25, "y": 1},
            {"matrix": [1, 11], "x": 11.25, "y": 1},
            {"matrix": [1, 12], "x": 12.25, "y": 1},

            {"matrix": [2, 13], "x": 14, "y": 2},
            {"matrix": [3, 13], "x": 15, "y": 2},
            {"matrix": [2, 0], "x": 0, "y": 2.25},
            {"matrix": [2, 1], "x": 1.25, "y": 2},
            {"matrix": [2, 2], "x": 2.25, "y": 2},
            {"matrix": [2, 3], "x": 3.25, "y": 2},
            {"matrix": [2, 4], "x": 4.25, "y": 2},
            {"matrix": [2, 5], "x": 5.25, "y": 2},
            {"matrix": [2, 6], "x": 6.25, "y": 2},
            {"matrix": [2, 7], "x": 7.25, "y": 2},
            {"matrix": [2, 8], "x": 8.25, "y": 2},
            {"matrix": [2, 9], "x": 9.25, "y": 2},
            {"matrix": [2, 10], "x": 10.25, "y": 2},
            {"matrix": [2, 11], "x": 11.25, "y": 2},
            {"matrix": [2, 12], "x": 12.25, "y": 2},

            {"matrix": [3, 0], "x": 0, "y": 3.25},
            {"matrix": [3, 1], "x": 1.25, "y": 3},
            {"matrix": [3, 2], "x": 2.25, "y": 3},
            {"matrix": [3, 3], "x": 3.25, "y": 3},
            {"matrix": [3, 4], "x": 4.25, "y": 3},
            {"matrix": [3, 5], "x": 5.25, "y": 3},
            {"matrix": [3, 6], "x": 6.25, "y": 3},
            {"matrix": [3, 7], "x": 7.25, "y": 3},
            {"matrix": [3, 8], "x": 8.25, "y": 3},
            {"matrix": [3, 9], "x": 9.25, "y": 3},
            {"matrix": [3, 10], "x": 10.25, "y": 3},
            {"matrix": [3, 11], "x": 11.25, "y": 3},
            {"matrix": [3, 12], "x": 12.25, "y": 3},
            {"matrix": [4, 11], "x": 14.5, "y": 3.25},

            {"matrix": [4, 1], "x": 1.3333, "y": 4, "w": 1.5},
            {"matrix": [4, 2], "x": 2.8333, "y": 4},
            {"matrix": [4, 3], "x": 3.8333, "y": 4, "w": 1.25},
            {"matrix": [4, 4], "x": 5.0833, "y": 4},
            {"matrix": [4, 5], "x": 6.0833, "y": 4, "w": 2.25},
            {"matrix": [4, 6], "x": 8.3333, "y": 4},
            {"matrix": [4, 7], "x": 9.3333, "y": 4, "w": 1.25},
            {"matrix": [4, 8], "x": 10.5833, "y": 4},
            {"matrix": [4, 9], "x": 11.5833, "y": 4, "w": 1.5},
            {"matrix": [4, 10], "x": 13.5, "y": 4.25},
            {"matrix": [4, 12], "x": 14.5, "y": 4.25},
            {"matrix": [4, 13], "x": 15.5, "y": 4.25}
          ]
      }
  }
}

M keyboards/handwired/uthol/info.json => keyboards/handwired/uthol/info.json +63 -237
@@ 12,243 12,69 @@
    "layouts": {
        "LAYOUT": {
            "layout": [
                {
                    "x": 0,
                    "y": 0
                },
                {
                    "x": 1,
                    "y": 0
                },
                {
                    "x": 2,
                    "y": 0
                },
                {
                    "x": 3,
                    "y": 0
                },
                {
                    "x": 4,
                    "y": 0
                },
                {
                    "x": 5,
                    "y": 0
                },
                {
                    "x": 6,
                    "y": 0
                },
                {
                    "x": 7,
                    "y": 0
                },
                {
                    "x": 8,
                    "y": 0
                },
                {
                    "x": 9,
                    "y": 0
                },
                {
                    "x": 10,
                    "y": 0
                },
                {
                    "x": 11,
                    "y": 0
                },
                {
                    "x": 0,
                    "y": 1
                },
                {
                    "x": 1,
                    "y": 1
                },
                {
                    "x": 2,
                    "y": 1
                },
                {
                    "x": 3,
                    "y": 1
                },
                {
                    "x": 4,
                    "y": 1
                },
                {
                    "x": 5,
                    "y": 1
                },
                {
                    "x": 6,
                    "y": 1
                },
                {
                    "x": 7,
                    "y": 1
                },
                {
                    "x": 8,
                    "y": 1
                },
                {
                    "x": 9,
                    "y": 1
                },
                {
                    "x": 10,
                    "y": 1
                },
                {
                    "x": 11,
                    "y": 1
                },
                {
                    "x": 0,
                    "y": 2
                },
                {
                    "x": 1,
                    "y": 2
                },
                {
                    "x": 2,
                    "y": 2
                },
                {
                    "x": 3,
                    "y": 2
                },
                {
                    "x": 4,
                    "y": 2
                },
                {
                    "x": 5,
                    "y": 2
                },
                {
                    "x": 6,
                    "y": 2
                },
                {
                    "x": 7,
                    "y": 2
                },
                {
                    "x": 8,
                    "y": 2
                },
                {
                    "x": 9,
                    "y": 2
                },
                {
                    "x": 10,
                    "y": 2
                },
                {
                    "x": 11,
                    "y": 2
                },
                {
                    "x": 0,
                    "y": 3
                },
                {
                    "x": 1,
                    "y": 3
                },
                {
                    "x": 2,
                    "y": 3
                },
                {
                    "x": 3,
                    "y": 3
                },
                {
                    "x": 4,
                    "y": 3
                },
                {
                    "x": 5,
                    "y": 3
                },
                {
                    "x": 6,
                    "y": 3
                },
                {
                    "x": 7,
                    "y": 3
                },
                {
                    "x": 8,
                    "y": 3
                },
                {
                    "x": 9,
                    "y": 3
                },
                {
                    "x": 10,
                    "y": 3
                },
                {
                    "x": 11,
                    "y": 3
                },
                {
                    "x": 0,
                    "y": 4
                },
                {
                    "x": 1,
                    "y": 4
                },
                {
                    "x": 2,
                    "y": 4
                },
                {
                    "x": 3,
                    "y": 4
                },
                {
                    "x": 4,
                    "y": 4
                },
                {
                    "x": 5,
                    "y": 4,
                    "w": 2
                },
                {
                    "x": 7,
                    "y": 4
                },
                {
                    "x": 8,
                    "y": 4
                },
                {
                    "x": 9,
                    "y": 4
                },
                {
                    "x": 10,
                    "y": 4
                },
                {
                    "x": 11,
                    "y": 4
                }
                {"matrix": [0, 0], "x": 0, "y": 0},
                {"matrix": [0, 1], "x": 1, "y": 0},
                {"matrix": [0, 2], "x": 2, "y": 0},
                {"matrix": [0, 3], "x": 3, "y": 0},
                {"matrix": [0, 4], "x": 4, "y": 0},
                {"matrix": [0, 5], "x": 5, "y": 0},
                {"matrix": [0, 6], "x": 6, "y": 0},
                {"matrix": [0, 7], "x": 7, "y": 0},
                {"matrix": [0, 8], "x": 8, "y": 0},
                {"matrix": [0, 9], "x": 9, "y": 0},
                {"matrix": [0, 10], "x": 10, "y": 0},
                {"matrix": [0, 11], "x": 11, "y": 0},

                {"matrix": [1, 0], "x": 0, "y": 1},
                {"matrix": [1, 1], "x": 1, "y": 1},
                {"matrix": [1, 2], "x": 2, "y": 1},
                {"matrix": [1, 3], "x": 3, "y": 1},
                {"matrix": [1, 4], "x": 4, "y": 1},
                {"matrix": [1, 5], "x": 5, "y": 1},
                {"matrix": [1, 6], "x": 6, "y": 1},
                {"matrix": [1, 7], "x": 7, "y": 1},
                {"matrix": [1, 8], "x": 8, "y": 1},
                {"matrix": [1, 9], "x": 9, "y": 1},
                {"matrix": [1, 10], "x": 10, "y": 1},
                {"matrix": [1, 11], "x": 11, "y": 1},

                {"matrix": [2, 0], "x": 0, "y": 2},
                {"matrix": [2, 1], "x": 1, "y": 2},
                {"matrix": [2, 2], "x": 2, "y": 2},
                {"matrix": [2, 3], "x": 3, "y": 2},
                {"matrix": [2, 4], "x": 4, "y": 2},
                {"matrix": [2, 5], "x": 5, "y": 2},
                {"matrix": [2, 6], "x": 6, "y": 2},
                {"matrix": [2, 7], "x": 7, "y": 2},
                {"matrix": [2, 8], "x": 8, "y": 2},
                {"matrix": [2, 9], "x": 9, "y": 2},
                {"matrix": [2, 10], "x": 10, "y": 2},
                {"matrix": [2, 11], "x": 11, "y": 2},

                {"matrix": [3, 0], "x": 0, "y": 3},
                {"matrix": [3, 1], "x": 1, "y": 3},
                {"matrix": [3, 2], "x": 2, "y": 3},
                {"matrix": [3, 3], "x": 3, "y": 3},
                {"matrix": [3, 4], "x": 4, "y": 3},
                {"matrix": [3, 5], "x": 5, "y": 3},
                {"matrix": [3, 6], "x": 6, "y": 3},
                {"matrix": [3, 7], "x": 7, "y": 3},
                {"matrix": [3, 8], "x": 8, "y": 3},
                {"matrix": [3, 9], "x": 9, "y": 3},
                {"matrix": [3, 10], "x": 10, "y": 3},
                {"matrix": [3, 11], "x": 11, "y": 3},

                {"matrix": [4, 0], "x": 0, "y": 4},
                {"matrix": [4, 1], "x": 1, "y": 4},
                {"matrix": [4, 2], "x": 2, "y": 4},
                {"matrix": [4, 3], "x": 3, "y": 4},
                {"matrix": [4, 4], "x": 4, "y": 4},
                {"matrix": [4, 5], "x": 5, "y": 4, "w": 2},
                {"matrix": [4, 7], "x": 7, "y": 4},
                {"matrix": [4, 8], "x": 8, "y": 4},
                {"matrix": [4, 9], "x": 9, "y": 4},
                {"matrix": [4, 10], "x": 10, "y": 4},
                {"matrix": [4, 11], "x": 11, "y": 4}
            ]
        }
    }

D keyboards/handwired/uthol/uthol.h => keyboards/handwired/uthol/uthol.h +0 -34
@@ 1,34 0,0 @@
/*
 * Copyright 2022 Uthol
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#pragma once

#include "quantum.h"

#define LAYOUT( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
    k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
    k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \
    k40, k41, k42, k43, k44,    k45,   k47, k48, k49, k4a, k4b \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \
    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \
    { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \
    { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b }, \
    { k40, k41, k42, k43, k44, k45, k45, k47, k48, k49, k4a, k4b } \
}

M keyboards/handwired/wabi/info.json => keyboards/handwired/wabi/info.json +72 -1
@@ 17,6 17,77 @@
    "bootloader": "atmel-dfu",
    "layouts": {
        "LAYOUT": {
            "layout": [{"label":"Esc", "x":1.25, "y":0}, {"label":"1", "x":2.25, "y":0}, {"label":"2", "x":3.25, "y":0}, {"label":"3", "x":4.25, "y":0}, {"label":"4", "x":5.25, "y":0}, {"label":"5", "x":6.25, "y":0}, {"label":"6", "x":8.75, "y":0}, {"label":"7", "x":9.75, "y":0}, {"label":"8", "x":10.75, "y":0}, {"label":"9", "x":11.75, "y":0}, {"label":"0", "x":12.75, "y":0}, {"label":"-", "x":13.75, "y":0}, {"label":"=", "x":14.75, "y":0}, {"label":"Backspace", "x":15.75, "y":0, "w":2}, {"label":"Tab", "x":0.75, "y":1, "w":1.5}, {"label":"Q", "x":2.25, "y":1}, {"label":"W", "x":3.25, "y":1}, {"label":"E", "x":4.25, "y":1}, {"label":"R", "x":5.25, "y":1}, {"label":"T", "x":6.25, "y":1}, {"label":"Y", "x":8.75, "y":1}, {"label":"U", "x":9.75, "y":1}, {"label":"I", "x":10.75, "y":1}, {"label":"O", "x":11.75, "y":1}, {"label":"P", "x":12.75, "y":1}, {"label":"[", "x":13.75, "y":1}, {"label":"]", "x":14.75, "y":1}, {"label":"\\", "x":15.75, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0.5, "y":2, "w":1.75}, {"label":"A", "x":2.25, "y":2}, {"label":"S", "x":3.25, "y":2}, {"label":"D", "x":4.25, "y":2}, {"label":"F", "x":5.25, "y":2}, {"label":"G", "x":6.25, "y":2}, {"label":"H", "x":8.75, "y":2}, {"label":"J", "x":9.75, "y":2}, {"label":"K", "x":10.75, "y":2}, {"label":"L", "x":11.75, "y":2}, {"label":";", "x":12.75, "y":2}, {"label":"'", "x":13.75, "y":2}, {"label":"Enter", "x":14.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":8.75, "y":3}, {"label":"M", "x":9.75, "y":3}, {"label":",", "x":10.75, "y":3}, {"label":".", "x":11.75, "y":3}, {"label":"/", "x":12.75, "y":3}, {"label":"Shift", "x":13.75, "y":3, "w":2.75}, {"label":"Up", "x":16.5, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":4, "y":4, "w":1.25}, {"label":"Space", "x":5.25, "y":4}, {"label":"Page Down", "x":6.25, "y":4, "w":1.25}, {"label":"Enter", "x":8.5, "y":4, "w":1.25}, {"label":"Space", "x":9.75, "y":4}, {"label":"Backspace", "x":10.75, "y":4, "w":1.25}, {"label":"Left", "x":15.5, "y":4}, {"label":"Down", "x":16.5, "y":4}, {"label":"Right", "x":17.5, "y":4}]        }
            "layout": [
                {"matrix": [0, 0], "x": 1.25, "y": 0},
                {"matrix": [0, 1], "x": 2.25, "y": 0},
                {"matrix": [0, 2], "x": 3.25, "y": 0},
                {"matrix": [0, 3], "x": 4.25, "y": 0},
                {"matrix": [0, 4], "x": 5.25, "y": 0},
                {"matrix": [0, 5], "x": 6.25, "y": 0},
                {"matrix": [0, 6], "x": 8.75, "y": 0},
                {"matrix": [0, 7], "x": 9.75, "y": 0},
                {"matrix": [0, 8], "x": 10.75, "y": 0},
                {"matrix": [0, 9], "x": 11.75, "y": 0},
                {"matrix": [0, 10], "x": 12.75, "y": 0},
                {"matrix": [0, 11], "x": 13.75, "y": 0},
                {"matrix": [0, 12], "x": 14.75, "y": 0},
                {"matrix": [0, 13], "x": 15.75, "y": 0, "w": 2},

                {"matrix": [1, 0], "x": 0.75, "y": 1, "w": 1.5},
                {"matrix": [1, 1], "x": 2.25, "y": 1},
                {"matrix": [1, 2], "x": 3.25, "y": 1},
                {"matrix": [1, 3], "x": 4.25, "y": 1},
                {"matrix": [1, 4], "x": 5.25, "y": 1},
                {"matrix": [1, 5], "x": 6.25, "y": 1},
                {"matrix": [1, 6], "x": 8.75, "y": 1},
                {"matrix": [1, 7], "x": 9.75, "y": 1},
                {"matrix": [1, 8], "x": 10.75, "y": 1},
                {"matrix": [1, 9], "x": 11.75, "y": 1},
                {"matrix": [1, 10], "x": 12.75, "y": 1},
                {"matrix": [1, 11], "x": 13.75, "y": 1},
                {"matrix": [1, 12], "x": 14.75, "y": 1},
                {"matrix": [1, 13], "x": 15.75, "y": 1, "w": 1.5},

                {"matrix": [2, 0], "x": 0.5, "y": 2, "w": 1.75},
                {"matrix": [2, 1], "x": 2.25, "y": 2},
                {"matrix": [2, 2], "x": 3.25, "y": 2},
                {"matrix": [2, 3], "x": 4.25, "y": 2},
                {"matrix": [2, 4], "x": 5.25, "y": 2},
                {"matrix": [2, 5], "x": 6.25, "y": 2},
                {"matrix": [2, 6], "x": 8.75, "y": 2},
                {"matrix": [2, 7], "x": 9.75, "y": 2},
                {"matrix": [2, 8], "x": 10.75, "y": 2},
                {"matrix": [2, 9], "x": 11.75, "y": 2},
                {"matrix": [2, 10], "x": 12.75, "y": 2},
                {"matrix": [2, 11], "x": 13.75, "y": 2},
                {"matrix": [2, 12], "x": 14.75, "y": 2, "w": 2.25},

                {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
                {"matrix": [3, 1], "x": 2.25, "y": 3},
                {"matrix": [3, 2], "x": 3.25, "y": 3},
                {"matrix": [3, 3], "x": 4.25, "y": 3},
                {"matrix": [3, 4], "x": 5.25, "y": 3},
                {"matrix": [3, 5], "x": 6.25, "y": 3},
                {"matrix": [3, 6], "x": 8.75, "y": 3},
                {"matrix": [3, 7], "x": 9.75, "y": 3},
                {"matrix": [3, 8], "x": 10.75, "y": 3},
                {"matrix": [3, 9], "x": 11.75, "y": 3},
                {"matrix": [3, 10], "x": 12.75, "y": 3},
                {"matrix": [3, 11], "x": 13.75, "y": 3, "w": 2.75},
                {"matrix": [3, 13], "x": 16.5, "y": 3},

                {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
                {"matrix": [4, 3], "x": 4, "y": 4, "w": 1.25},
                {"matrix": [4, 4], "x": 5.25, "y": 4},
                {"matrix": [4, 5], "x": 6.25, "y": 4, "w": 1.25},
                {"matrix": [4, 6], "x": 8.5, "y": 4, "w": 1.25},
                {"matrix": [4, 7], "x": 9.75, "y": 4},
                {"matrix": [4, 8], "x": 10.75, "y": 4, "w": 1.25},
                {"matrix": [4, 11], "x": 15.5, "y": 4},
                {"matrix": [4, 12], "x": 16.5, "y": 4},
                {"matrix": [4, 13], "x": 17.5, "y": 4}
            ]
        }
    }
}

D keyboards/handwired/wabi/wabi.h => keyboards/handwired/wabi/wabi.h +0 -40
@@ 1,40 0,0 @@
/* Copyright 2020 Ross Montsinger
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#pragma once

#include "quantum.h"
/* This is a shortcut to help you visually see your layout.
 *
 * The first section contains all of the arguments representing the physical
 * layout of the board and position of the keys.
 *
 * The second converts the arguments into a two-dimensional array which
 * represents the switch matrix.
 */

#define LAYOUT( \
    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C,      \
    K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B,      K3D, \
    K40, K41,      K43, K44, K45, K46, K47, K48,           K4B, K4C, K4D \
    ) { \
  { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
  { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D }, \
  { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KC_NO }, \
  { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D }, \
  { K40, K41, K41, K43, K44, K45, K46, K47, K48, K48, K48, K4B, K4C, K4D } \
}

M keyboards/jian/handwired/handwired.c => keyboards/jian/handwired/handwired.c +1 -1
@@ 1,4 1,4 @@
#include "handwired.h"
#include "quantum.h"

const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
  {{13, 0}, {12, 0}, {11, 0}, {10, 0}, {9, 0}, {8, 0}, {7, 0}, {6, 0}, {5, 0}, {4, 0}, {3, 0}, {2, 0}, {1, 0}, {0, 0}},

D keyboards/jian/handwired/handwired.h => keyboards/jian/handwired/handwired.h +0 -30
@@ 1,30 0,0 @@
#pragma once

#include "quantum.h"

#define XXX KC_NO
#define LAYOUT( \
  L00, L01, L02, L03, L04, L05, L06,    R06, R05, R04, R03, R02, R01, R00, \
       L11, L12, L13, L14, L15, L16,    R16, R15, R14, R13, R12, R11, \
       L21, L22, L23, L24, L25, L26,    R26, R25, R24, R23, R22, R21, \
                      L34, L35, L36,    R36, R35, R34 \
) \
{ \
  {L00, L01, L02, L03, L04, L05, L06,   R06, R05, R04, R03, R02, R01, R00}, \
  {XXX, L11, L12, L13, L14, L15, L16,   R16, R15, R14, R13, R12, R11, XXX}, \
  {XXX, L21, L22, L23, L24, L25, L26,   R26, R25, R24, R23, R22, R21, XXX}, \
  {XXX, XXX, XXX, XXX, L34, L35, L36,   R36, R35, R34, XXX, XXX, XXX, XXX} \
}

#define LAYOUT_symmetric( \
  K00, K01, K02, K03, K04, K05, K06, \
       K11, K12, K13, K14, K15, K16, \
       K21, K22, K23, K24, K25, K26, \
                      K34, K35, K36 \
) \
{ \
  {K00, K01, K02, K03, K04, K05, K06,   K06, K05, K04, K03, K02, K01, K00}, \
  {XXX, K11, K12, K13, K14, K15, K16,   K16, K15, K14, K13, K12, K11, XXX}, \
  {XXX, K21, K22, K23, K24, K25, K26,   K26, K25, K24, K23, K22, K21, XXX}, \
  {XXX, XXX, XXX, XXX, K34, K35, K36,   K36, K35, K34, XXX, XXX, XXX, XXX} \
}

M keyboards/jian/handwired/info.json => keyboards/jian/handwired/info.json +58 -1
@@ 9,5 9,62 @@
    },
    "diode_direction": "COL2ROW",
    "processor": "atmega32u4",
    "bootloader": "caterina"
    "bootloader": "caterina",
    "layouts": {
        "LAYOUT": {
            "layout": [
                {"matrix": [0, 0], "x": 0, "y": 1.5},
                {"matrix": [0, 1], "x": 1, "y": 0.75},
                {"matrix": [0, 2], "x": 2, "y": 0.625},
                {"matrix": [0, 3], "x": 3, "y": 0.25},
                {"matrix": [0, 4], "x": 4, "y": 0},
                {"matrix": [0, 5], "x": 5, "y": 0.25},
                {"matrix": [0, 6], "x": 6, "y": 0.375},

                {"matrix": [0, 7], "x": 10, "y": 0.375},
                {"matrix": [0, 8], "x": 11, "y": 0.25},
                {"matrix": [0, 9], "x": 12, "y": 0},
                {"matrix": [0, 10], "x": 13, "y": 0.25},
                {"matrix": [0, 11], "x": 14, "y": 0.625},
                {"matrix": [0, 12], "x": 15, "y": 0.75},
                {"matrix": [0, 13], "x": 16, "y": 1.5},

                {"matrix": [1, 1], "x": 1, "y": 1.75},
                {"matrix": [1, 2], "x": 2, "y": 1.625},
                {"matrix": [1, 3], "x": 3, "y": 1.25},
                {"matrix": [1, 4], "x": 4, "y": 1},
                {"matrix": [1, 5], "x": 5, "y": 1.25},
                {"matrix": [1, 6], "x": 6, "y": 1.375},

                {"matrix": [1, 7], "x": 10, "y": 1.375},
                {"matrix": [1, 8], "x": 11, "y": 1.25},
                {"matrix": [1, 9], "x": 12, "y": 1},
                {"matrix": [1, 10], "x": 13, "y": 1.25},
                {"matrix": [1, 11], "x": 14, "y": 1.625},
                {"matrix": [1, 12], "x": 15, "y": 1.75},

                {"matrix": [2, 1], "x": 1, "y": 2.75},
                {"matrix": [2, 2], "x": 2, "y": 2.625},
                {"matrix": [2, 3], "x": 3, "y": 2.25},
                {"matrix": [2, 4], "x": 4, "y": 2},
                {"matrix": [2, 5], "x": 5, "y": 2.25},
                {"matrix": [2, 6], "x": 6, "y": 2.375},

                {"matrix": [2, 7], "x": 10, "y": 2.375},
                {"matrix": [2, 8], "x": 11, "y": 2.25},
                {"matrix": [2, 9], "x": 12, "y": 2},
                {"matrix": [2, 10], "x": 13, "y": 2.25},
                {"matrix": [2, 11], "x": 14, "y": 2.625},
                {"matrix": [2, 12], "x": 15, "y": 2.75},

                {"matrix": [3, 4], "x": 5, "y": 3.25},
                {"matrix": [3, 5], "x": 6, "y": 3.375},
                {"matrix": [3, 6], "x": 7, "y": 3.5},

                {"matrix": [3, 7], "x": 9, "y": 3.5},
                {"matrix": [3, 8], "x": 10, "y": 3.375},
                {"matrix": [3, 9], "x": 11, "y": 3.25}
            ]
        }
    }
}

M keyboards/jian/info.json => keyboards/jian/info.json +0 -60
@@ 5,65 5,5 @@
    "usb": {
        "vid": "0xC0DE",
        "pid": "0x1337"
    },
    "layouts": {
        "LAYOUT": {
            "layout": [
                { "label": "Super", "x": 0,  "y": 1.5   },
                { "label": "~",     "x": 1,  "y": 0.75  },
                { "label": "Q",     "x": 2,  "y": 0.625 },
                { "label": "W",     "x": 3,  "y": 0.25  },
                { "label": "E",     "x": 4,  "y": 0     },
                { "label": "R",     "x": 5,  "y": 0.25  },
                { "label": "T",     "x": 6,  "y": 0.375 },

                { "label": "Y",     "x": 10, "y": 0.375 },
                { "label": "U",     "x": 11, "y": 0.25  },
                { "label": "I",     "x": 12, "y": 0     },
                { "label": "O",     "x": 13, "y": 0.25  },
                { "label": "P",     "x": 14, "y": 0.625 },
                { "label": "{[",    "x": 15, "y": 0.75  },
                { "label": "}]",    "x": 16, "y": 1.5   },


                { "label": "Ctrl",  "x": 1,  "y": 1.75  },
                { "label": "A",     "x": 2,  "y": 1.625 },
                { "label": "S",     "x": 3,  "y": 1.25  },
                { "label": "D",     "x": 4,  "y": 1     },
                { "label": "F",     "x": 5,  "y": 1.25  },
                { "label": "G",     "x": 6,  "y": 1.375 },

                { "label": "H",     "x": 10, "y": 1.375 },
                { "label": "J",     "x": 11, "y": 1.25  },
                { "label": "K",     "x": 12, "y": 1     },
                { "label": "L",     "x": 13, "y": 1.25  },
                { "label": ":;",    "x": 14, "y": 1.625 },
                { "label": "\"'",   "x": 15, "y": 1.75  },


                { "label": "Alt",   "x": 1,  "y": 2.75  },
                { "label": "Z",     "x": 2,  "y": 2.625 },
                { "label": "X",     "x": 3,  "y": 2.25  },
                { "label": "C",     "x": 4,  "y": 2     },
                { "label": "V",     "x": 5,  "y": 2.25  },
                { "label": "B",     "x": 6,  "y": 2.375 },

                { "label": "N",     "x": 10, "y": 2.375 },
                { "label": "M",     "x": 11, "y": 2.25  },
                { "label": "<,",    "x": 12, "y": 2     },
                { "label": ">.",    "x": 13, "y": 2.25  },
                { "label": "?/",    "x": 14, "y": 2.625 },
                { "label": "|\\",   "x": 15, "y": 2.75  },


                { "label": "Tab",   "x": 5,  "y": 3.25  },
                { "label": "Spc",   "x": 6,  "y": 3.375 },
                { "label": "Enter", "x": 7,  "y": 3.5   },

                { "label": "Esc",   "x": 9,  "y": 3.5   },
                { "label": "Bscp",  "x": 10, "y": 3.375 },
                { "label": "Del",   "x": 11, "y": 3.25  }
            ]
        }
    }
}

M keyboards/jian/keymaps/advanced/keymap.c => keyboards/jian/keymaps/advanced/keymap.c +10 -10
@@ 211,18 211,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                                      _______, _______, _______,      _______, _______, _______
),

[_ADJUST] = LAYOUT_symmetric(
  QK_BOOT, DB_TOGG, AS_UP,   CH_WMN,  CH_CMK,  CH_QWE,  CH_DVK,
           AS_RPT,  AS_TOGG, XXXXXXX, XXXXXXX, QWERTY,  PLOVER,
           BL_ADJ,  AS_DOWN, XXXXXXX, XXXXXXX, ISO,     THUMB_ALT,
                                      _______, SW_TG,   _______
[_ADJUST] = LAYOUT(
  QK_BOOT, DB_TOGG, AS_UP,   CH_WMN,  CH_CMK,  CH_QWE,  CH_DVK,       CH_DVK,  CH_QWE,  CH_CMK,  CH_WMN,  AS_UP,   DB_TOGG, QK_BOOT,
           AS_RPT,  AS_TOGG, XXXXXXX, XXXXXXX, QWERTY,  PLOVER,       PLOVER,  QWERTY,  XXXXXXX, XXXXXXX, AS_TOGG, AS_RPT,
           BL_ADJ,  AS_DOWN, XXXXXXX, XXXXXXX, ISO,     THUMB_ALT, THUMB_ALT,  ISO,     XXXXXXX, XXXXXXX, AS_DOWN, BL_ADJ,
                                      _______, SW_TG,   _______,      _______, SW_TG,   _______
),
#if defined(RGBLIGHT) | defined(BACKLIGHT_ENABLE)
[_BCKLT_ADJ] = LAYOUT_symmetric(
  XXXXXXX, XXXXXXX, XXXXXXX, BL_UP,   RGB_VAI, RGB_HUD, RGB_HUI,
           XXXXXXX, XXXXXXX, BL_DOWN, RGB_VAD, RGB_SAD, RGB_SAI,
           BL_ADJ,  BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD,
                                      _______, _______, _______
[_BCKLT_ADJ] = LAYOUT(
  XXXXXXX, XXXXXXX, XXXXXXX, BL_UP,   RGB_VAI, RGB_HUD, RGB_HUI,      RGB_HUI, RGB_HUD, RGB_VAI, BL_UP,   XXXXXXX, XXXXXXX, XXXXXXX,
           XXXXXXX, XXXXXXX, BL_DOWN, RGB_VAD, RGB_SAD, RGB_SAI,      RGB_SAI, RGB_SAD, RGB_VAD, BL_DOWN, XXXXXXX, XXXXXXX,
           BL_ADJ,  BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD,      RGB_MOD, RGB_RMOD,RGB_TOG, BL_TOGG, BL_BRTG, BL_ADJ,
                                      _______, _______, _______,      _______, _______, _______
),
#endif // defined(RGBLIGHT) | defined(BACKLIGHT_ENABLE)
#ifdef TRAINING_HALFES_LOCK

M keyboards/jian/keymaps/default/keymap.c => keyboards/jian/keymaps/default/keymap.c +10 -10
@@ 71,19 71,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                                              _______, _______, _______,      _______, _______, _______
),

[_ADJUST] = LAYOUT_symmetric(
  QK_BOOT, DB_TOGG,        XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
           XXXXXXX,        WORKMAN, COLEMAK, DVORAK,  QWERTY,  XXXXXXX,
           TG(_BCKLT_ADJ), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
                                             _______, SW_TG,   _______
[_ADJUST] = LAYOUT(
  QK_BOOT, DB_TOGG,        XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,      XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DB_TOGG,        QK_BOOT,
           XXXXXXX,        WORKMAN, COLEMAK, DVORAK,  QWERTY,  XXXXXXX,      XXXXXXX, QWERTY,  DVORAK,  COLEMAK, WORKMAN, XXXXXXX,
           TG(_BCKLT_ADJ), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,      XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(_BCKLT_ADJ),
                                             _______, SW_TG,   _______,      _______, SW_TG,   _______
),

#if defined(RGBLIGHT) || defined(BACKLIGHT_ENABLE)
[_BCKLT_ADJ] = LAYOUT_symmetric(
  XXXXXXX, XXXXXXX,        XXXXXXX, BL_UP,   RGB_VAI, RGB_HUD, RGB_HUI,
           XXXXXXX,        XXXXXXX, BL_DOWN, RGB_VAD, RGB_SAD, RGB_SAI,
           TG(_BCKLT_ADJ), BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD,
                                             _______, _______, _______
[_BCKLT_ADJ] = LAYOUT(
  XXXXXXX, XXXXXXX,        XXXXXXX, BL_UP,   RGB_VAI, RGB_HUD, RGB_HUI,      RGB_HUI, RGB_HUD, RGB_VAI, BL_UP,   XXXXXXX, XXXXXXX,        XXXXXXX,
           XXXXXXX,        XXXXXXX, BL_DOWN, RGB_VAD, RGB_SAD, RGB_SAI,      RGB_SAI, RGB_SAD, RGB_VAD, BL_DOWN, XXXXXXX, XXXXXXX,
           TG(_BCKLT_ADJ), BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD,      RGB_MOD, RGB_RMOD,RGB_TOG, BL_TOGG, BL_BRTG, TG(_BCKLT_ADJ),
                                             _______, _______, _______,      _______, _______, _______
)
#endif // defined(RGBLIGHT) || defined(BACKLIGHT_ENABLE)


M keyboards/jian/keymaps/left_hand/keymap.c => keyboards/jian/keymaps/left_hand/keymap.c +35 -35
@@ 26,46 26,46 @@ enum jian_layers {
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_DFLT_L] = LAYOUT_symmetric_left(
  KC_LSFT, LGUI_T(KC_GRV), KC_Q, KC_W, KC_E,                 KC_R,                KC_T,
           KC_LCTL,        KC_A, KC_S, KC_D,                 KC_F,                KC_G,
           KC_LALT,        KC_Z, KC_X, KC_C,                 KC_V,                KC_B,
                                       LT(_RAIS_L, KC_BSPC), LT(_DFLT_R, KC_SPC), LT(_LOWR_L, KC_ENT)
[_DFLT_L] = LAYOUT(
  KC_LSFT, LGUI_T(KC_GRV), KC_Q, KC_W, KC_E,                 KC_R,                KC_T,                     KC_T,                KC_R,                KC_E,                 KC_W,    KC_Q,    LGUI_T(KC_GRV), KC_LSFT,
           KC_LCTL,        KC_A, KC_S, KC_D,                 KC_F,                KC_G,                     KC_G,                KC_F,                KC_D,                 KC_S,    KC_A,    KC_LCTL,
           KC_LALT,        KC_Z, KC_X, KC_C,                 KC_V,                KC_B,                     KC_B,                KC_V,                KC_C,                 KC_X,    KC_Z,    KC_LALT,
                                       LT(_RAIS_L, KC_BSPC), LT(_DFLT_R, KC_SPC), LT(_LOWR_L, KC_ENT),      LT(_LOWR_L, KC_ENT), LT(_DFLT_R, KC_SPC), LT(_RAIS_L, KC_BSPC),
),
[_DFLT_R] = LAYOUT_symmetric_right(
  KC_Y,                KC_U,    KC_I,               KC_O,    KC_P,    KC_LBRC, KC_RBRC,
  KC_H,                KC_J,    KC_K,               KC_L,    KC_SCLN, KC_QUOT,
  KC_N,                KC_M,    KC_COMM,            KC_DOT,  KC_SLSH, KC_BSLS,
  LT(_LOWR_R, KC_ESC), _______, LT(_RAIS_R, KC_DEL)
[_DFLT_R] = LAYOUT(
  KC_RBRC, KC_LBRC, KC_P,    KC_O,    KC_I,                KC_U,    KC_Y,                     KC_Y,                KC_U,    KC_I,               KC_O,    KC_P,    KC_LBRC, KC_RBRC,
           KC_QUOT, KC_SCLN, KC_L,    KC_K,                KC_J,    KC_H,                     KC_H,                KC_J,    KC_K,               KC_L,    KC_SCLN, KC_QUOT,
           KC_BSLS, KC_SLSH, KC_DOT,  KC_COMM,             KC_M,    KC_N,                     KC_N,                KC_M,    KC_COMM,            KC_DOT,  KC_SLSH, KC_BSLS,
                                      LT(_RAIS_R, KC_DEL), _______, LT(_LOWR_R, KC_ESC),      LT(_LOWR_R, KC_ESC), _______, LT(_RAIS_R, KC_DEL)
),
[_RAIS_L] = LAYOUT_symmetric_left(
  _______, LGUI_T(KC_CAPS), KC_SCRL, KC_HOME, KC_PSCR, KC_PGUP,              KC_VOLU,
           LCTL_T(KC_APP),  KC_INS,  KC_LEFT, KC_UP,   KC_RGHT,              KC_MUTE,
           _______,         KC_PAUS, KC_END,  KC_DOWN, KC_PGDN,              KC_VOLD,
                                              _______, LT(_RAIS_R, KC_TAB) , LT(_ADJUST, KC_ESC)
[_RAIS_L] = LAYOUT(
  _______, LGUI_T(KC_CAPS), KC_SCRL, KC_HOME, KC_PSCR, KC_PGUP,              KC_VOLU,                  KC_VOLU,             KC_PGUP,             KC_PSCR, KC_HOME, KC_SCRL, LGUI_T(KC_CAPS), _______,
           LCTL_T(KC_APP),  KC_INS,  KC_LEFT, KC_UP,   KC_RGHT,              KC_MUTE,                  KC_MUTE,             KC_RGHT,             KC_UP,   KC_LEFT, KC_INS,  LGUI_T(KC_APP),
           _______,         KC_PAUS, KC_END,  KC_DOWN, KC_PGDN,              KC_VOLD,                  KC_VOLD,             KC_PGDN,             KC_DOWN, KC_END,  KC_PAUS, _______,
                                              _______, LT(_RAIS_R, KC_TAB) , LT(_ADJUST, KC_ESC),      LT(_ADJUST, KC_ESC), LT(_RAIS_R, KC_TAB), _______
),
[_RAIS_R] = LAYOUT_symmetric_left(
  KC_RSFT, KC_RGUI, XXXXXXX, KC_F7, KC_F8,               KC_F9,   KC_F10,
           KC_RCTL, XXXXXXX, KC_F4, KC_F5,               KC_F6,   KC_F11,
           KC_LALT, XXXXXXX, KC_F1, KC_F2,               KC_F3,   KC_F12,
                                    LT(_ADJUST, KC_DEL), _______, _______
[_RAIS_R] = LAYOUT(
  KC_RSFT, KC_RGUI, XXXXXXX, KC_F7, KC_F8,               KC_F9,   KC_F10,       KC_F10,  KC_F9,   KC_F8,               KC_F7,   XXXXXXX, KC_RGUI, KC_RSFT,
           KC_RCTL, XXXXXXX, KC_F4, KC_F5,               KC_F6,   KC_F11,       KC_F11,  KC_F6,   KC_F5,               KC_F4,   XXXXXXX, KC_RCTL,
           KC_LALT, XXXXXXX, KC_F1, KC_F2,               KC_F3,   KC_F12,       KC_F12,  KC_F3,   KC_F2,               KC_F1,   XXXXXXX, KC_LALT,
                                    LT(_ADJUST, KC_DEL), _______, _______,      _______, _______, LT(_ADJUST, KC_DEL)
),
[_LOWR_L] = LAYOUT_symmetric_left(
  _______, _______, XXXXXXX, KC_7, KC_8,                KC_9,                KC_0,
           _______, KC_GRV,  KC_4, KC_5,                KC_6,                KC_MINS,
           _______, KC_0,    KC_1, KC_2,                KC_3,                KC_EQL,
                                   LT(_ADJUST, KC_DEL), LT(_LOWR_R, KC_TAB), _______
[_LOWR_L] = LAYOUT(
  _______, _______, XXXXXXX, KC_7, KC_8,                KC_9,                KC_0,         KC_0,    KC_9,                KC_8,                KC_7,    XXXXXXX, _______, _______,
           _______, KC_GRV,  KC_4, KC_5,                KC_6,                KC_MINS,      KC_MINS, KC_6,                KC_5,                KC_4,    KC_GRV,  _______,
           _______, KC_0,    KC_1, KC_2,                KC_3,                KC_EQL,       KC_EQL,  KC_3,                KC_2,                KC_1,    KC_0,    _______,
                                   LT(_ADJUST, KC_DEL), LT(_LOWR_R, KC_TAB), _______,      _______, LT(_LOWR_R, KC_TAB), LT(_ADJUST, KC_DEL)
),
[_LOWR_R] = LAYOUT_symmetric_left(
 _______, _______, XXXXXXX, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN,
          _______, KC_TILD, KC_DLR,  KC_PERC, KC_CIRC, KC_UNDS,
          _______, KC_LPRN, KC_EXLM, KC_AT,   KC_HASH, KC_PLUS,
                                     _______, _______, LT(_ADJUST, KC_ESC)
[_LOWR_R] = LAYOUT(
 _______, _______, XXXXXXX, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN,                  KC_RPRN,             KC_LPRN, KC_ASTR, KC_AMPR, XXXXXXX, _______, _______,
          _______, KC_TILD, KC_DLR,  KC_PERC, KC_CIRC, KC_UNDS,                  KC_UNDS,             KC_CIRC, KC_PERC, KC_DLR,  KC_TILD, _______,
          _______, KC_LPRN, KC_EXLM, KC_AT,   KC_HASH, KC_PLUS,                  KC_PLUS,             KC_HASH, KC_AT,   KC_EXLM, KC_LPRN, _______,
                                     _______, _______, LT(_ADJUST, KC_ESC),      LT(_ADJUST, KC_ESC), _______, _______
),
[_ADJUST] = LAYOUT_symmetric_left(
  QK_BOOT, DB_TOGG, XXXXXXX, BL_UP,   RGB_VAI, RGB_HUD, RGB_HUI,
           XXXXXXX, XXXXXXX, BL_DOWN, RGB_VAD, RGB_SAD, RGB_SAI,
           XXXXXXX, BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD,
                                      _______, _______, _______
[_ADJUST] = LAYOUT(
  QK_BOOT, DB_TOGG, XXXXXXX, BL_UP,   RGB_VAI, RGB_HUD, RGB_HUI,      RGB_HUI, RGB_HUD, RGB_VAI, BL_UP,   XXXXXXX, DB_TOGG, QK_BOOT,
           XXXXXXX, XXXXXXX, BL_DOWN, RGB_VAD, RGB_SAD, RGB_SAI,      RGB_SAI, RGB_SAD, RGB_VAD, BL_DOWN, XXXXXXX, XXXXXXX,
           XXXXXXX, BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD,      RGB_MOD, RGB_RMOD,RGB_TOG, BL_TOGG, BL_BRTG, XXXXXXX,
                                      _______, _______, _______,      _______, _______, _______
)
};

M keyboards/jian/keymaps/via/keymap.c => keyboards/jian/keymaps/via/keymap.c +5 -5
@@ 19,10 19,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
           _______,         KC_P0,   KC_P1,   KC_P2,   KC_P3,   KC_PCMM,      KC_VOLD, KC_END,  KC_DOWN, KC_PGDN, KC_PAUS, _______,
                                        _______, _______, LT(3, KC_ENT),      LT(3, KC_ESC), _______, _______
),
[3] = LAYOUT_symmetric(
  QK_BOOT, DB_TOGG, XXXXXXX, BL_UP,   RGB_VAI, RGB_HUD, RGB_HUI,
           XXXXXXX, XXXXXXX, BL_DOWN, RGB_VAD, RGB_SAD, RGB_SAI,
           XXXXXXX, BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD,
                                      _______, SH_TOGG, _______
[3] = LAYOUT(
  QK_BOOT, DB_TOGG, XXXXXXX, BL_UP,   RGB_VAI, RGB_HUD, RGB_HUI,      RGB_HUI, RGB_HUD, RGB_VAI, BL_UP,   XXXXXXX, DB_TOGG, QK_BOOT,
           XXXXXXX, XXXXXXX, BL_DOWN, RGB_VAD, RGB_SAD, RGB_SAI,      RGB_SAI, RGB_SAD, RGB_VAD, BL_DOWN, XXXXXXX, XXXXXXX,
           XXXXXXX, BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD,      RGB_MOD, RGB_RMOD,RGB_TOG, BL_TOGG, BL_BRTG, XXXXXXX,
                                      _______, SH_TOGG, _______,      _______, SH_TOGG, _______
)
};

M keyboards/jian/nsrev2/info.json => keyboards/jian/nsrev2/info.json +58 -1
@@ 18,5 18,62 @@
        "esc_output": "D3"
    },
    "processor": "atmega32u4",
    "bootloader": "qmk-dfu"
    "bootloader": "qmk-dfu",
    "layouts": {
        "LAYOUT": {
            "layout": [
                {"matrix": [2, 0], "x": 0, "y": 1.5},
                {"matrix": [0, 0], "x": 1, "y": 0.75},
                {"matrix": [0, 1], "x": 2, "y": 0.625},
                {"matrix": [1, 2], "x": 3, "y": 0.25},
                {"matrix": [0, 2], "x": 4, "y": 0},
                {"matrix": [0, 3], "x": 5, "y": 0.25},
                {"matrix": [0, 4], "x": 6, "y": 0.375},

                {"matrix": [4, 4], "x": 10, "y": 0.375},
                {"matrix": [4, 3], "x": 11, "y": 0.25},
                {"matrix": [4, 2], "x": 12, "y": 0},
                {"matrix": [5, 2], "x": 13, "y": 0.25},
                {"matrix": [4, 1], "x": 14, "y": 0.625},
                {"matrix": [4, 0], "x": 15, "y": 0.75},
                {"matrix": [6, 0], "x": 16, "y": 1.5},

                {"matrix": [1, 0], "x": 1, "y": 1.75},
                {"matrix": [1, 1], "x": 2, "y": 1.625},
                {"matrix": [2, 2], "x": 3, "y": 1.25},
                {"matrix": [1, 3], "x": 4, "y": 1},
                {"matrix": [1, 4], "x": 5, "y": 1.25},
                {"matrix": [0, 5], "x": 6, "y": 1.375},

                {"matrix": [4, 5], "x": 10, "y": 1.375},
                {"matrix": [5, 4], "x": 11, "y": 1.25},
                {"matrix": [5, 3], "x": 12, "y": 1},
                {"matrix": [6, 2], "x": 13, "y": 1.25},
                {"matrix": [5, 1], "x": 14, "y": 1.625},
                {"matrix": [5, 0], "x": 15, "y": 1.75},

                {"matrix": [2, 1], "x": 1, "y": 2.75},
                {"matrix": [3, 2], "x": 2, "y": 2.625},
                {"matrix": [3, 3], "x": 3, "y": 2.25},
                {"matrix": [2, 3], "x": 4, "y": 2},
                {"matrix": [2, 4], "x": 5, "y": 2.25},
                {"matrix": [1, 5], "x": 6, "y": 2.375},

                {"matrix": [5, 5], "x": 10, "y": 2.375},
                {"matrix": [6, 4], "x": 11, "y": 2.25},
                {"matrix": [6, 3], "x": 12, "y": 2},
                {"matrix": [7, 3], "x": 13, "y": 2.25},
                {"matrix": [7, 2], "x": 14, "y": 2.625},
                {"matrix": [6, 1], "x": 15, "y": 2.75},

                {"matrix": [3, 4], "x": 5, "y": 3.25},
                {"matrix": [2, 5], "x": 6, "y": 3.375},
                {"matrix": [3, 5], "x": 7, "y": 3.5},

                {"matrix": [7, 5], "x": 9, "y": 3.5},
                {"matrix": [6, 5], "x": 10, "y": 3.375},
                {"matrix": [7, 4], "x": 11, "y": 3.25}
            ]
        }
    }
}

M keyboards/jian/nsrev2/nsrev2.c => keyboards/jian/nsrev2/nsrev2.c +1 -1
@@ 1,4 1,4 @@
#include "nsrev2.h"
#include "quantum.h"

#ifdef SWAP_HANDS_ENABLE
__attribute__ ((weak))

D keyboards/jian/nsrev2/nsrev2.h => keyboards/jian/nsrev2/nsrev2.h +0 -39
@@ 1,39 0,0 @@
#pragma once

#include "quantum.h"

#define XXX KC_NO

#define LAYOUT( \
  L20, L00, L01, L12, L02, L03, L04,    R04, R03, R02, R12, R01, R00, R20, \
       L10, L11, L22, L13, L14, L05,    R05, R14, R13, R22, R11, R10, \
       L21, L32, L33, L23, L24, L15,    R15, R24, R23, R33, R32, R21, \
                      L34, L25, L35,    R35, R25, R34 \
) \
{ \
  {L00, L01, L02, L03, L04, L05 }, \
  {L10, L11, L12, L13, L14, L15 }, \
  {L20, L21, L22, L23, L24, L25 }, \
  {XXX, XXX, L32, L33, L34, L35 }, \
  {R00, R01, R02, R03, R04, R05 }, \
  {R10, R11, R12, R13, R14, R15 }, \
  {R20, R21, R22, R23, R24, R25 }, \
  {XXX, XXX, R32, R33, R34, R35 }  \
}

#define LAYOUT_symmetric( \
  K20, K00, K01, K12, K02, K03, K04, \
       K10, K11, K22, K13, K14, K05, \
       K21, K32, K33, K23, K24, K15, \
                      K34, K25, K35  \
) \
{ \
  {K00, K01, K02, K03, K04, K05 }, \
  {K10, K11, K12, K13, K14, K15 }, \
  {K20, K21, K22, K23, K24, K25 }, \
  {XXX, XXX, K32, K33, K34, K35 }, \
  {K00, K01, K02, K03, K04, K05 }, \
  {K10, K11, K12, K13, K14, K15 }, \
  {K20, K21, K22, K23, K24, K25 }, \
  {XXX, XXX, K32, K33, K34, K35 }  \
}

M keyboards/jian/rev1/info.json => keyboards/jian/rev1/info.json +58 -1
@@ 13,5 13,62 @@
        "levels": 5
    },
    "processor": "atmega32u4",
    "bootloader": "caterina"
    "bootloader": "caterina",
    "layouts": {
        "LAYOUT": {
            "layout": [
                {"matrix": [0, 0], "x": 0, "y": 1.5},
                {"matrix": [0, 1], "x": 1, "y": 0.75},
                {"matrix": [0, 2], "x": 2, "y": 0.625},
                {"matrix": [0, 3], "x": 3, "y": 0.25},
                {"matrix": [0, 4], "x": 4, "y": 0},
                {"matrix": [0, 5], "x": 5, "y": 0.25},
                {"matrix": [0, 6], "x": 6, "y": 0.375},

                {"matrix": [4, 6], "x": 10, "y": 0.375},
                {"matrix": [4, 5], "x": 11, "y": 0.25},
                {"matrix": [4, 4], "x": 12, "y": 0},
                {"matrix": [4, 3], "x": 13, "y": 0.25},
                {"matrix": [4, 2], "x": 14, "y": 0.625},
                {"matrix": [4, 1], "x": 15, "y": 0.75},
                {"matrix": [4, 0], "x": 16, "y": 1.5},

                {"matrix": [1, 1], "x": 1, "y": 1.75},
                {"matrix": [1, 2], "x": 2, "y": 1.625},
                {"matrix": [1, 3], "x": 3, "y": 1.25},
                {"matrix": [1, 4], "x": 4, "y": 1},
                {"matrix": [1, 5], "x": 5, "y": 1.25},
                {"matrix": [1, 6], "x": 6, "y": 1.375},

                {"matrix": [5, 6], "x": 10, "y": 1.375},
                {"matrix": [5, 5], "x": 11, "y": 1.25},
                {"matrix": [5, 4], "x": 12, "y": 1},
                {"matrix": [5, 3], "x": 13, "y": 1.25},
                {"matrix": [5, 2], "x": 14, "y": 1.625},
                {"matrix": [5, 1], "x": 15, "y": 1.75},

                {"matrix": [2, 1], "x": 1, "y": 2.75},
                {"matrix": [2, 2], "x": 2, "y": 2.625},
                {"matrix": [2, 3], "x": 3, "y": 2.25},
                {"matrix": [2, 4], "x": 4, "y": 2},
                {"matrix": [2, 5], "x": 5, "y": 2.25},
                {"matrix": [2, 6], "x": 6, "y": 2.375},

                {"matrix": [6, 6], "x": 10, "y": 2.375},
                {"matrix": [6, 5], "x": 11, "y": 2.25},
                {"matrix": [6, 4], "x": 12, "y": 2},
                {"matrix": [6, 3], "x": 13, "y": 2.25},
                {"matrix": [6, 2], "x": 14, "y": 2.625},
                {"matrix": [6, 1], "x": 15, "y": 2.75},

                {"matrix": [3, 4], "x": 5, "y": 3.25},
                {"matrix": [3, 5], "x": 6, "y": 3.375},
                {"matrix": [3, 6], "x": 7, "y": 3.5},

                {"matrix": [7, 6], "x": 9, "y": 3.5},
                {"matrix": [7, 5], "x": 10, "y": 3.375},
                {"matrix": [7, 4], "x": 11, "y": 3.25}
            ]
        }
    }
}

M keyboards/jian/rev1/rev1.h => keyboards/jian/rev1/rev1.h +0 -34
@@ 4,40 4,6 @@

#define XXX KC_NO

#define LAYOUT( \
  L00, L01, L02, L03, L04, L05, L06,    R06, R05, R04, R03, R02, R01, R00, \
       L11, L12, L13, L14, L15, L16,    R16, R15, R14, R13, R12, R11, \
       L21, L22, L23, L24, L25, L26,    R26, R25, R24, R23, R22, R21, \
                      L34, L35, L36,    R36, R35, R34 \
) \
{ \
  {L00, L01, L02, L03, L04, L05, L06}, \
  {XXX, L11, L12, L13, L14, L15, L16}, \
  {XXX, L21, L22, L23, L24, L25, L26}, \
  {XXX, XXX, XXX, XXX, L34, L35, L36}, \
  {R00, R01, R02, R03, R04, R05, R06}, \
  {XXX, R11, R12, R13, R14, R15, R16}, \
  {XXX, R21, R22, R23, R24, R25, R26}, \
  {XXX, XXX, XXX, XXX, R34, R35, R36} \
}

#define LAYOUT_symmetric( \
  K00, K01, K02, K03, K04, K05, K06, \
       K11, K12, K13, K14, K15, K16, \
       K21, K22, K23, K24, K25, K26, \
                      K34, K35, K36 \
) \
{ \
  {K00, K01, K02, K03, K04, K05, K06}, \
  {XXX, K11, K12, K13, K14, K15, K16}, \
  {XXX, K21, K22, K23, K24, K25, K26}, \
  {XXX, XXX, XXX, XXX, K34, K35, K36}, \
  {K00, K01, K02, K03, K04, K05, K06}, \
  {XXX, K11, K12, K13, K14, K15, K16}, \
  {XXX, K21, K22, K23, K24, K25, K26}, \
  {XXX, XXX, XXX, XXX, K34, K35, K36} \
}

#ifdef DIPS_ENABLE
#define LAYOUT_dips( \
  DL0, DL1, DL2, DL3, DL4, DL5, \

M keyboards/jian/rev2/info.json => keyboards/jian/rev2/info.json +58 -1
@@ 20,5 20,62 @@
        "soft_serial_pin": "D1"
    },
    "processor": "atmega32u4",
    "bootloader": "qmk-dfu"
    "bootloader": "qmk-dfu",
    "layouts": {
        "LAYOUT": {
            "layout": [
                {"matrix": [2, 0], "x": 0, "y": 1.5},
                {"matrix": [0, 0], "x": 1, "y": 0.75},
                {"matrix": [0, 1], "x": 2, "y": 0.625},
                {"matrix": [1, 2], "x": 3, "y": 0.25},
                {"matrix": [0, 2], "x": 4, "y": 0},
                {"matrix": [0, 3], "x": 5, "y": 0.25},
                {"matrix": [0, 4], "x": 6, "y": 0.375},

                {"matrix": [4, 4], "x": 10, "y": 0.375},
                {"matrix": [4, 3], "x": 11, "y": 0.25},
                {"matrix": [4, 2], "x": 12, "y": 0},
                {"matrix": [5, 2], "x": 13, "y": 0.25},
                {"matrix": [4, 1], "x": 14, "y": 0.625},
                {"matrix": [4, 0], "x": 15, "y": 0.75},
                {"matrix": [6, 0], "x": 16, "y": 1.5},

                {"matrix": [1, 0], "x": 1, "y": 1.75},
                {"matrix": [1, 1], "x": 2, "y": 1.625},
                {"matrix": [2, 2], "x": 3, "y": 1.25},
                {"matrix": [1, 3], "x": 4, "y": 1},
                {"matrix": [1, 4], "x": 5, "y": 1.25},
                {"matrix": [0, 5], "x": 6, "y": 1.375},

                {"matrix": [4, 5], "x": 10, "y": 1.375},
                {"matrix": [5, 4], "x": 11, "y": 1.25},
                {"matrix": [5, 3], "x": 12, "y": 1},
                {"matrix": [6, 2], "x": 13, "y": 1.25},
                {"matrix": [5, 1], "x": 14, "y": 1.625},
                {"matrix": [5, 0], "x": 15, "y": 1.75},

                {"matrix": [2, 1], "x": 1, "y": 2.75},
                {"matrix": [3, 2], "x": 2, "y": 2.625},
                {"matrix": [3, 3], "x": 3, "y": 2.25},
                {"matrix": [2, 3], "x": 4, "y": 2},
                {"matrix": [2, 4], "x": 5, "y": 2.25},
                {"matrix": [1, 5], "x": 6, "y": 2.375},

                {"matrix": [5, 5], "x": 10, "y": 2.375},
                {"matrix": [6, 4], "x": 11, "y": 2.25},
                {"matrix": [6, 3], "x": 12, "y": 2},
                {"matrix": [7, 3], "x": 13, "y": 2.25},
                {"matrix": [7, 2], "x": 14, "y": 2.625},
                {"matrix": [6, 1], "x": 15, "y": 2.75},

                {"matrix": [3, 4], "x": 5, "y": 3.25},
                {"matrix": [2, 5], "x": 6, "y": 3.375},
                {"matrix": [3, 5], "x": 7, "y": 3.5},

                {"matrix": [7, 5], "x": 9, "y": 3.5},
                {"matrix": [6, 5], "x": 10, "y": 3.375},
                {"matrix": [7, 4], "x": 11, "y": 3.25}
            ]
        }
    }
}

M keyboards/jian/rev2/rev2.c => keyboards/jian/rev2/rev2.c +1 -1
@@ 1,4 1,4 @@
#include "rev2.h"
#include "quantum.h"

#ifdef SWAP_HANDS_ENABLE
__attribute__ ((weak))

D keyboards/jian/rev2/rev2.h => keyboards/jian/rev2/rev2.h +0 -58
@@ 1,58 0,0 @@
#pragma once

#include "quantum.h"

#define XXX KC_NO

#define LAYOUT( \
  L20, L00, L01, L12, L02, L03, L04,    R04, R03, R02, R12, R01, R00, R20, \
       L10, L11, L22, L13, L14, L05,    R05, R14, R13, R22, R11, R10, \
       L21, L32, L33, L23, L24, L15,    R15, R24, R23, R33, R32, R21, \
                      L34, L25, L35,    R35, R25, R34 \
) \
{ \
  {L00, L01, L02, L03, L04, L05 }, \
  {L10, L11, L12, L13, L14, L15 }, \
  {L20, L21, L22, L23, L24, L25 }, \
  {XXX, XXX, L32, L33, L34, L35 }, \
  {R00, R01, R02, R03, R04, R05 }, \
  {R10, R11, R12, R13, R14, R15 }, \
  {R20, R21, R22, R23, R24, R25 }, \
  {XXX, XXX, R32, R33, R34, R35 }  \
}

#define LAYOUT_symmetric( \
  K20, K00, K01, K12, K02, K03, K04, \
       K10, K11, K22, K13, K14, K05, \
       K21, K32, K33, K23, K24, K15, \
                      K34, K25, K35  \
) \
{ \
  {K00, K01, K02, K03, K04, K05 }, \
  {K10, K11, K12, K13, K14, K15 }, \
  {K20, K21, K22, K23, K24, K25 }, \
  {XXX, XXX, K32, K33, K34, K35 }, \
  {K00, K01, K02, K03, K04, K05 }, \
  {K10, K11, K12, K13, K14, K15 }, \
  {K20, K21, K22, K23, K24, K25 }, \
  {XXX, XXX, K32, K33, K34, K35 }  \
}

#define LAYOUT_symmetric_left LAYOUT_symmetric

#define LAYOUT_symmetric_right( \
  K04, K03, K02, K12, K01, K00, K20, \
  K05, K14, K13, K22, K11, K10, \
  K15, K24, K23, K33, K32, K21, \
  K35, K25, K34  \
) \
{ \
  {K00, K01, K02, K03, K04, K05 }, \
  {K10, K11, K12, K13, K14, K15 }, \
  {K20, K21, K22, K23, K24, K25 }, \
  {XXX, XXX, K32, K33, K34, K35 }, \
  {K00, K01, K02, K03, K04, K05 }, \
  {K10, K11, K12, K13, K14, K15 }, \
  {K20, K21, K22, K23, K24, K25 }, \
  {XXX, XXX, K32, K33, K34, K35 }  \
}

M keyboards/keyhive/ut472/info.json => keyboards/keyhive/ut472/info.json +52 -1
@@ 17,7 17,58 @@
  "bootloader": "atmel-dfu",
  "layouts": {
    "LAYOUT": {
      "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Backspace", "x":11, "y":0, "w":1.5}, {"label":"LT(3) / Tab", "x":0, "y":1, "w":1.25}, {"label":"A", "x":1.25, "y":1}, {"label":"S", "x":2.25, "y":1}, {"label":"D", "x":3.25, "y":1}, {"label":"F", "x":4.25, "y":1}, {"label":"G", "x":5.25, "y":1}, {"label":"H", "x":6.25, "y":1}, {"label":"J", "x":7.25, "y":1}, {"label":"K", "x":8.25, "y":1}, {"label":"L", "x":9.25, "y":1}, {"label":":", "x":10.25, "y":1}, {"label":"\"", "x":11.25, "y":1, "w":1.25}, {"label":"Shift", "x":0, "y":2, "w":1.5}, {"label":"Z", "x":1.5, "y":2}, {"label":"X", "x":2.5, "y":2}, {"label":"C", "x":3.5, "y":2}, {"label":"V", "x":4.5, "y":2}, {"label":"B", "x":5.5, "y":2}, {"label":"N", "x":6.5, "y":2}, {"label":"M", "x":7.5, "y":2}, {"label":"<", "x":8.5, "y":2}, {"label":">", "x":9.5, "y":2}, {"label":"?", "x":10.5, "y":2}, {"label":"Shift / Enter", "x":11.5, "y":2}, {"label":"Ctrl", "x":0, "y":3}, {"label":"Alt", "x":1, "y":3}, {"label":"GUI", "x":2, "y":3}, {"label":"Menu", "x":3, "y":3}, {"label":"MO(2)", "x":4, "y":3, "w":1.25}, {"x":5.25, "y":3, "w":2}, {"label":"MO(1)", "x":7.25, "y":3, "w":1.25}, {"label":"\u2190", "x":8.5, "y":3}, {"label":"\u2193", "x":9.5, "y":3}, {"label":"\u2191", "x":10.5, "y":3}, {"label":"\u2192", "x":11.5, "y":3}]
      "layout": [
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0, "w": 1.5},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.25},
        {"matrix": [1, 1], "x": 1.25, "y": 1},
        {"matrix": [1, 2], "x": 2.25, "y": 1},
        {"matrix": [1, 3], "x": 3.25, "y": 1},
        {"matrix": [1, 4], "x": 4.25, "y": 1},
        {"matrix": [1, 5], "x": 5.25, "y": 1},
        {"matrix": [1, 6], "x": 6.25, "y": 1},
        {"matrix": [1, 7], "x": 7.25, "y": 1},
        {"matrix": [1, 8], "x": 8.25, "y": 1},
        {"matrix": [1, 9], "x": 9.25, "y": 1},
        {"matrix": [1, 10], "x": 10.25, "y": 1},
        {"matrix": [1, 11], "x": 11.25, "y": 1, "w": 1.25},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
        {"matrix": [2, 1], "x": 1.5, "y": 2},
        {"matrix": [2, 2], "x": 2.5, "y": 2},
        {"matrix": [2, 3], "x": 3.5, "y": 2},
        {"matrix": [2, 4], "x": 4.5, "y": 2},
        {"matrix": [2, 5], "x": 5.5, "y": 2},
        {"matrix": [2, 6], "x": 6.5, "y": 2},
        {"matrix": [2, 7], "x": 7.5, "y": 2},
        {"matrix": [2, 8], "x": 8.5, "y": 2},
        {"matrix": [2, 9], "x": 9.5, "y": 2},
        {"matrix": [2, 10], "x": 10.5, "y": 2},
        {"matrix": [2, 11], "x": 11.5, "y": 2},

        {"matrix": [3, 0], "x": 0, "y": 3},
        {"matrix": [3, 1], "x": 1, "y": 3},
        {"matrix": [3, 2], "x": 2, "y": 3},
        {"matrix": [3, 3], "x": 3, "y": 3},
        {"matrix": [3, 4], "x": 4, "y": 3, "w": 1.25},
        {"matrix": [3, 5], "x": 5.25, "y": 3, "w": 2},
        {"matrix": [3, 7], "x": 7.25, "y": 3, "w": 1.25},
        {"matrix": [3, 8], "x": 8.5, "y": 3},
        {"matrix": [3, 9], "x": 9.5, "y": 3},
        {"matrix": [3, 10], "x": 10.5, "y": 3},
        {"matrix": [3, 11], "x": 11.5, "y": 3}
      ]
    }
  }
}

D keyboards/keyhive/ut472/ut472.h => keyboards/keyhive/ut472/ut472.h +0 -33
@@ 1,33 0,0 @@
/* Copyright 2018 Carlos Filoteo
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

 #pragma once

#include "quantum.h"

#define LAYOUT( \
  K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \
  K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \
  K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \
  K30, K31, K32, K33, K34,    K35,   K37, K38, K39, K3a, K3b  \
) \
  { \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b }, \
    { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b }, \
    { K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, K3a, K3b }  \
  }


M keyboards/maxr1998/phoebe/info.json => keyboards/maxr1998/phoebe/info.json +63 -237
@@ 23,243 23,69 @@
    "layouts": {
        "LAYOUT": {
            "layout": [
                {
                    "x": 0,
                    "y": 0
                },
                {
                    "x": 1,
                    "y": 0
                },
                {
                    "x": 2,
                    "y": 0
                },
                {
                    "x": 3,
                    "y": 0
                },
                {
                    "x": 4,
                    "y": 0
                },
                {
                    "x": 5,
                    "y": 0
                },
                {
                    "x": 6,
                    "y": 0
                },
                {
                    "x": 7,
                    "y": 0
                },
                {
                    "x": 8,
                    "y": 0
                },
                {
                    "x": 9,
                    "y": 0
                },
                {
                    "x": 10,
                    "y": 0
                },
                {
                    "x": 11,
                    "y": 0
                },
                {
                    "x": 0,
                    "y": 1
                },
                {
                    "x": 1,
                    "y": 1
                },
                {
                    "x": 2,
                    "y": 1
                },
                {
                    "x": 3,
                    "y": 1
                },
                {
                    "x": 4,
                    "y": 1
                },
                {
                    "x": 5,
                    "y": 1
                },
                {
                    "x": 6,
                    "y": 1
                },
                {
                    "x": 7,
                    "y": 1
                },
                {
                    "x": 8,
                    "y": 1
                },
                {
                    "x": 9,
                    "y": 1
                },
                {
                    "x": 10,
                    "y": 1
                },
                {
                    "x": 11,
                    "y": 1
                },
                {
                    "x": 0,
                    "y": 2
                },
                {
                    "x": 1,
                    "y": 2
                },
                {
                    "x": 2,
                    "y": 2
                },
                {
                    "x": 3,
                    "y": 2
                },
                {
                    "x": 4,
                    "y": 2
                },
                {
                    "x": 5,
                    "y": 2
                },
                {
                    "x": 6,
                    "y": 2
                },
                {
                    "x": 7,
                    "y": 2
                },
                {
                    "x": 8,
                    "y": 2
                },
                {
                    "x": 9,
                    "y": 2
                },
                {
                    "x": 10,
                    "y": 2
                },
                {
                    "x": 11,
                    "y": 2
                },
                {
                    "x": 0,
                    "y": 3
                },
                {
                    "x": 1,
                    "y": 3
                },
                {
                    "x": 2,
                    "y": 3
                },
                {
                    "x": 3,
                    "y": 3
                },
                {
                    "x": 4,
                    "y": 3
                },
                {
                    "x": 5,
                    "y": 3
                },
                {
                    "x": 6,
                    "y": 3
                },
                {
                    "x": 7,
                    "y": 3
                },
                {
                    "x": 8,
                    "y": 3
                },
                {
                    "x": 9,
                    "y": 3
                },
                {
                    "x": 10,
                    "y": 3
                },
                {
                    "x": 11,
                    "y": 3
                },
                {
                    "x": 0,
                    "y": 4
                },
                {
                    "x": 1,
                    "y": 4
                },
                {
                    "x": 2,
                    "y": 4
                },
                {
                    "x": 3,
                    "y": 4
                },
                {
                    "x": 4,
                    "y": 4
                },
                {
                    "w": 2,
                    "x": 5,
                    "y": 4
                },
                {
                    "x": 7,
                    "y": 4
                },
                {
                    "x": 8,
                    "y": 4
                },
                {
                    "x": 9,
                    "y": 4
                },
                {
                    "x": 10,
                    "y": 4
                },
                {
                    "x": 11,
                    "y": 4
                }
                {"matrix": [0, 0], "x": 0, "y": 0},
                {"matrix": [0, 1], "x": 1, "y": 0},
                {"matrix": [0, 2], "x": 2, "y": 0},
                {"matrix": [0, 3], "x": 3, "y": 0},
                {"matrix": [0, 4], "x": 4, "y": 0},
                {"matrix": [0, 5], "x": 5, "y": 0},
                {"matrix": [0, 6], "x": 6, "y": 0},
                {"matrix": [0, 7], "x": 7, "y": 0},
                {"matrix": [0, 8], "x": 8, "y": 0},
                {"matrix": [0, 9], "x": 9, "y": 0},
                {"matrix": [0, 10], "x": 10, "y": 0},
                {"matrix": [0, 11], "x": 11, "y": 0},

                {"matrix": [1, 0], "x": 0, "y": 1},
                {"matrix": [1, 1], "x": 1, "y": 1},
                {"matrix": [1, 2], "x": 2, "y": 1},
                {"matrix": [1, 3], "x": 3, "y": 1},
                {"matrix": [1, 4], "x": 4, "y": 1},
                {"matrix": [1, 5], "x": 5, "y": 1},
                {"matrix": [1, 6], "x": 6, "y": 1},
                {"matrix": [1, 7], "x": 7, "y": 1},
                {"matrix": [1, 8], "x": 8, "y": 1},
                {"matrix": [1, 9], "x": 9, "y": 1},
                {"matrix": [1, 10], "x": 10, "y": 1},
                {"matrix": [1, 11], "x": 11, "y": 1},

                {"matrix": [2, 0], "x": 0, "y": 2},
                {"matrix": [2, 1], "x": 1, "y": 2},
                {"matrix": [2, 2], "x": 2, "y": 2},
                {"matrix": [2, 3], "x": 3, "y": 2},
                {"matrix": [2, 4], "x": 4, "y": 2},
                {"matrix": [2, 5], "x": 5, "y": 2},
                {"matrix": [2, 6], "x": 6, "y": 2},
                {"matrix": [2, 7], "x": 7, "y": 2},
                {"matrix": [2, 8], "x": 8, "y": 2},
                {"matrix": [2, 9], "x": 9, "y": 2},
                {"matrix": [2, 10], "x": 10, "y": 2},
                {"matrix": [2, 11], "x": 11, "y": 2},

                {"matrix": [3, 0], "x": 0, "y": 3},
                {"matrix": [3, 1], "x": 1, "y": 3},
                {"matrix": [3, 2], "x": 2, "y": 3},
                {"matrix": [3, 3], "x": 3, "y": 3},
                {"matrix": [3, 4], "x": 4, "y": 3},
                {"matrix": [3, 5], "x": 5, "y": 3},
                {"matrix": [3, 6], "x": 6, "y": 3},
                {"matrix": [3, 7], "x": 7, "y": 3},
                {"matrix": [3, 8], "x": 8, "y": 3},
                {"matrix": [3, 9], "x": 9, "y": 3},
                {"matrix": [3, 10], "x": 10, "y": 3},
                {"matrix": [3, 11], "x": 11, "y": 3},

                {"matrix": [4, 0], "x": 0, "y": 4},
                {"matrix": [4, 1], "x": 1, "y": 4},
                {"matrix": [4, 2], "x": 2, "y": 4},
                {"matrix": [4, 3], "x": 3, "y": 4},
                {"matrix": [4, 4], "x": 4, "y": 4},
                {"matrix": [4, 5], "x": 5, "y": 4, "w": 2},
                {"matrix": [4, 7], "x": 7, "y": 4},
                {"matrix": [4, 8], "x": 8, "y": 4},
                {"matrix": [4, 9], "x": 9, "y": 4},
                {"matrix": [4, 10], "x": 10, "y": 4},
                {"matrix": [4, 11], "x": 11, "y": 4}
            ]
        }
    },

M keyboards/maxr1998/phoebe/phoebe.c => keyboards/maxr1998/phoebe/phoebe.c +1 -1
@@ 1,3 1,3 @@
#include "phoebe.h"
#include "quantum.h"

const uint8_t RGBLED_SNAKE_INTERVALS[] PROGMEM = {50, 50, 50};

D keyboards/maxr1998/phoebe/phoebe.h => keyboards/maxr1998/phoebe/phoebe.h +0 -18
@@ 1,18 0,0 @@
#pragma once

#include "quantum.h"

#define LAYOUT( \
      k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
      k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
      k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
      k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \
      k40, k41, k42, k43, k44,    k45,   k47, k48, k49, k4a, k4b \
) \
{ \
      { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \
      { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \
      { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \
      { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b }, \
      { k40, k41, k42, k43, k44, k45, k45, k47, k48, k49, k4a, k4b } \
}

M keyboards/mechkeys/mechmini/v2/info.json => keyboards/mechkeys/mechmini/v2/info.json +197 -4
@@ 20,16 20,209 @@
  "bootloader": "atmel-dfu",
  "layouts": {
    "LAYOUT_ortho": {
      "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Tab", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"label":"Caps", "x":0, "y":3}, {"label":"Ctrl", "x":1, "y":3}, {"label":"Alt", "x":2, "y":3}, {"label":"GUI", "x":3, "y":3}, {"label":"MO(1)", "x":4, "y":3}, {"label":"Space", "x":5, "y":3}, {"label":"Space", "x":6, "y":3}, {"label":"MO(2)", "x":7, "y":3}, {"label":"&larr;", "x":8, "y":3}, {"label":"&darr;", "x":9, "y":3}, {"label":"&uarr;", "x":10, "y":3}, {"label":"&rarr;", "x":11, "y":3}]
      "layout": [
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},

        {"matrix": [1, 0], "x": 0, "y": 1},
        {"matrix": [1, 1], "x": 1, "y": 1},
        {"matrix": [1, 2], "x": 2, "y": 1},
        {"matrix": [1, 3], "x": 3, "y": 1},
        {"matrix": [1, 4], "x": 4, "y": 1},
        {"matrix": [1, 5], "x": 5, "y": 1},
        {"matrix": [1, 6], "x": 6, "y": 1},
        {"matrix": [1, 7], "x": 7, "y": 1},
        {"matrix": [1, 8], "x": 8, "y": 1},
        {"matrix": [1, 9], "x": 9, "y": 1},
        {"matrix": [1, 10], "x": 10, "y": 1},
        {"matrix": [1, 11], "x": 11, "y": 1},

        {"matrix": [2, 0], "x": 0, "y": 2},
        {"matrix": [2, 1], "x": 1, "y": 2},
        {"matrix": [2, 2], "x": 2, "y": 2},
        {"matrix": [2, 3], "x": 3, "y": 2},
        {"matrix": [2, 4], "x": 4, "y": 2},
        {"matrix": [2, 5], "x": 5, "y": 2},
        {"matrix": [2, 6], "x": 6, "y": 2},
        {"matrix": [2, 7], "x": 7, "y": 2},
        {"matrix": [2, 8], "x": 8, "y": 2},
        {"matrix": [2, 9], "x": 9, "y": 2},
        {"matrix": [2, 10], "x": 10, "y": 2},
        {"matrix": [2, 11], "x": 11, "y": 2},

        {"matrix": [3, 0], "x": 0, "y": 3},
        {"matrix": [3, 1], "x": 1, "y": 3},
        {"matrix": [3, 2], "x": 2, "y": 3},
        {"matrix": [3, 3], "x": 3, "y": 3},
        {"matrix": [3, 4], "x": 4, "y": 3},
        {"matrix": [3, 5], "x": 5, "y": 3},
        {"matrix": [3, 6], "x": 6, "y": 3},
        {"matrix": [3, 7], "x": 7, "y": 3},
        {"matrix": [3, 8], "x": 8, "y": 3},
        {"matrix": [3, 9], "x": 9, "y": 3},
        {"matrix": [3, 10], "x": 10, "y": 3},
        {"matrix": [3, 11], "x": 11, "y": 3}
      ]
    },
    "LAYOUT_2u_space_ortho": {
      "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Tab", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"label":"Caps", "x":0, "y":3}, {"label":"Ctrl", "x":1, "y":3}, {"label":"Alt", "x":2, "y":3}, {"label":"GUI", "x":3, "y":3}, {"label":"MO(1)", "x":4, "y":3}, {"label":"Space", "x":5, "y":3, "w":2}, {"label":"MO(2)", "x":7, "y":3}, {"label":"&larr;", "x":8, "y":3}, {"label":"&darr;", "x":9, "y":3}, {"label":"&uarr;", "x":10, "y":3}, {"label":"&rarr;", "x":11, "y":3}]
      "layout": [
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},

        {"matrix": [1, 0], "x": 0, "y": 1},
        {"matrix": [1, 1], "x": 1, "y": 1},
        {"matrix": [1, 2], "x": 2, "y": 1},
        {"matrix": [1, 3], "x": 3, "y": 1},
        {"matrix": [1, 4], "x": 4, "y": 1},
        {"matrix": [1, 5], "x": 5, "y": 1},
        {"matrix": [1, 6], "x": 6, "y": 1},
        {"matrix": [1, 7], "x": 7, "y": 1},
        {"matrix": [1, 8], "x": 8, "y": 1},
        {"matrix": [1, 9], "x": 9, "y": 1},
        {"matrix": [1, 10], "x": 10, "y": 1},
        {"matrix": [1, 11], "x": 11, "y": 1},

        {"matrix": [2, 0], "x": 0, "y": 2},
        {"matrix": [2, 1], "x": 1, "y": 2},
        {"matrix": [2, 2], "x": 2, "y": 2},
        {"matrix": [2, 3], "x": 3, "y": 2},
        {"matrix": [2, 4], "x": 4, "y": 2},
        {"matrix": [2, 5], "x": 5, "y": 2},
        {"matrix": [2, 6], "x": 6, "y": 2},
        {"matrix": [2, 7], "x": 7, "y": 2},
        {"matrix": [2, 8], "x": 8, "y": 2},
        {"matrix": [2, 9], "x": 9, "y": 2},
        {"matrix": [2, 10], "x": 10, "y": 2},
        {"matrix": [2, 11], "x": 11, "y": 2},

        {"matrix": [3, 0], "x": 0, "y": 3},
        {"matrix": [3, 1], "x": 1, "y": 3},
        {"matrix": [3, 2], "x": 2, "y": 3},
        {"matrix": [3, 3], "x": 3, "y": 3},
        {"matrix": [3, 4], "x": 4, "y": 3},
        {"matrix": [3, 5], "x": 5, "y": 3, "w": 2},
        {"matrix": [3, 7], "x": 7, "y": 3},
        {"matrix": [3, 8], "x": 8, "y": 3},
        {"matrix": [3, 9], "x": 9, "y": 3},
        {"matrix": [3, 10], "x": 10, "y": 3},
        {"matrix": [3, 11], "x": 11, "y": 3}
      ]
    },
    "LAYOUT_625_space": {
      "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back<br>Space", "x":11, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.25}, {"label":"A", "x":1.25, "y":1}, {"label":"S", "x":2.25, "y":1}, {"label":"D", "x":3.25, "y":1}, {"label":"F", "x":4.25, "y":1}, {"label":"G", "x":5.25, "y":1}, {"label":"H", "x":6.25, "y":1}, {"label":"J", "x":7.25, "y":1}, {"label":"K", "x":8.25, "y":1}, {"label":"L", "x":9.25, "y":1}, {"label":"Enter", "x":10.25, "y":1, "w":1.75}, {"label":"Shift", "x":0, "y":2, "w":1.75}, {"label":"Z", "x":1.75, "y":2}, {"label":"X", "x":2.75, "y":2}, {"label":"C", "x":3.75, "y":2}, {"label":"V", "x":4.75, "y":2}, {"label":"B", "x":5.75, "y":2}, {"label":"N", "x":6.75, "y":2}, {"label":"M", "x":7.75, "y":2}, {"label":"<", "x":8.75, "y":2}, {"label":"Shift", "x":9.75, "y":2, "w":1.25}, {"label":">", "x":11, "y":2}, {"label":"Control", "x":0, "y":3, "w":1.25}, {"label":"Alt", "x":1.25, "y":3}, {"label":"GUI", "x":2.25, "y":3}, {"x":3.25, "y":3, "w":6.25}, {"label":"MO(1)", "x":9.5, "y":3, "w":1.25}, {"label":"MO(2)", "x":10.75, "y":3, "w":1.25}]
      "layout": [
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.25},
        {"matrix": [1, 1], "x": 1.25, "y": 1},
        {"matrix": [1, 2], "x": 2.25, "y": 1},
        {"matrix": [1, 3], "x": 3.25, "y": 1},
        {"matrix": [1, 4], "x": 4.25, "y": 1},
        {"matrix": [1, 5], "x": 5.25, "y": 1},
        {"matrix": [1, 6], "x": 6.25, "y": 1},
        {"matrix": [1, 7], "x": 7.25, "y": 1},
        {"matrix": [1, 8], "x": 8.25, "y": 1},
        {"matrix": [1, 9], "x": 9.25, "y": 1},
        {"matrix": [1, 11], "x": 10.25, "y": 1, "w": 1.75},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2, "w": 1.25},
        {"matrix": [2, 11], "x": 11, "y": 2},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
        {"matrix": [3, 1], "x": 1.25, "y": 3},
        {"matrix": [3, 2], "x": 2.25, "y": 3},
        {"matrix": [3, 6], "x": 3.25, "y": 3, "w": 6.25},
        {"matrix": [3, 10], "x": 9.5, "y": 3, "w": 1.25},
        {"matrix": [3, 11], "x": 10.75, "y": 3, "w": 1.25}
      ]
    },
    "LAYOUT_split_space": {
      "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back<br>Space", "x":11, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.25}, {"label":"A", "x":1.25, "y":1}, {"label":"S", "x":2.25, "y":1}, {"label":"D", "x":3.25, "y":1}, {"label":"F", "x":4.25, "y":1}, {"label":"G", "x":5.25, "y":1}, {"label":"H", "x":6.25, "y":1}, {"label":"J", "x":7.25, "y":1}, {"label":"K", "x":8.25, "y":1}, {"label":"L", "x":9.25, "y":1}, {"label":"Enter", "x":10.25, "y":1, "w":1.75}, {"label":"Shift", "x":0, "y":2, "w":1.75}, {"label":"Z", "x":1.75, "y":2}, {"label":"X", "x":2.75, "y":2}, {"label":"C", "x":3.75, "y":2}, {"label":"V", "x":4.75, "y":2}, {"label":"B", "x":5.75, "y":2}, {"label":"N", "x":6.75, "y":2}, {"label":"M", "x":7.75, "y":2}, {"label":"<", "x":8.75, "y":2}, {"label":"Shift", "x":9.75, "y":2, "w":1.25}, {"label":">", "x":11, "y":2}, {"label":"Control", "x":0, "y":3, "w":1.25}, {"label":"Alt", "x":1.25, "y":3}, {"label":"GUI", "x":2.25, "y":3, "w":1.25}, {"label":"Space", "x":3.5, "y":3, "w":2.75}, {"label":"Space", "x":6.25, "y":3, "w":2.25}, {"label":"Control", "x":8.5, "y":3, "w":1.25}, {"label":"MO(1)", "x":9.75, "y":3}, {"label":"MO(2)", "x":10.75, "y":3, "w":1.25}]
      "layout": [
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},

        {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.25},
        {"matrix": [1, 1], "x": 1.25, "y": 1},
        {"matrix": [1, 2], "x": 2.25, "y": 1},
        {"matrix": [1, 3], "x": 3.25, "y": 1},
        {"matrix": [1, 4], "x": 4.25, "y": 1},
        {"matrix": [1, 5], "x": 5.25, "y": 1},
        {"matrix": [1, 6], "x": 6.25, "y": 1},
        {"matrix": [1, 7], "x": 7.25, "y": 1},
        {"matrix": [1, 8], "x": 8.25, "y": 1},
        {"matrix": [1, 9], "x": 9.25, "y": 1},
        {"matrix": [1, 11], "x": 10.25, "y": 1, "w": 1.75},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
        {"matrix": [2, 2], "x": 1.75, "y": 2},
        {"matrix": [2, 3], "x": 2.75, "y": 2},
        {"matrix": [2, 4], "x": 3.75, "y": 2},
        {"matrix": [2, 5], "x": 4.75, "y": 2},
        {"matrix": [2, 6], "x": 5.75, "y": 2},
        {"matrix": [2, 7], "x": 6.75, "y": 2},
        {"matrix": [2, 8], "x": 7.75, "y": 2},
        {"matrix": [2, 9], "x": 8.75, "y": 2},
        {"matrix": [2, 10], "x": 9.75, "y": 2, "w": 1.25},
        {"matrix": [2, 11], "x": 11, "y": 2},

        {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
        {"matrix": [3, 1], "x": 1.25, "y": 3},
        {"matrix": [3, 2], "x": 2.25, "y": 3, "w": 1.25},
        {"matrix": [3, 4], "x": 3.5, "y": 3, "w": 2.75},
        {"matrix": [3, 7], "x": 6.25, "y": 3, "w": 2.25},
        {"matrix": [3, 9], "x": 8.5, "y": 3, "w": 1.25},
        {"matrix": [3, 10], "x": 9.75, "y": 3},
        {"matrix": [3, 11], "x": 10.75, "y": 3, "w": 1.25}
      ]
    }
  }
}

D keyboards/mechkeys/mechmini/v2/v2.h => keyboards/mechkeys/mechmini/v2/v2.h +0 -68
@@ 1,68 0,0 @@
/* Copyright 2018 TurboMech /u/TurboMech <discord> @A9entOran9e#6134
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 *This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

#pragma once

#include "quantum.h"

#define XXX KC_NO

#define LAYOUT_ortho( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
    k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
    k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
    { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
    { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B } \
}

#define LAYOUT_625_space( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19,      k1B, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
    k30, k31, k32,                k36,                k3A, k3B \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, XXX, k1B }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
    { k30, k31, k32, XXX, XXX, XXX, k36, XXX, XXX, XXX, k3A, k3B } \
}

#define LAYOUT_split_space( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19,      k1B, \
    k20,      k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
    k30, k31, k32,      k34,           k37,      k39, k3A, k3B \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, XXX, k1B }, \
    { k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
    { k30, k31, k32, XXX, k34, XXX, XXX, k37, XXX, k39, k3A, k3B } \
}

#define LAYOUT_2u_space_ortho( \
    k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
    k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
    k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
    k30, k31, k32, k33, k34,   k35,    k37, k38, k39, k3A, k3B \
) { \
    { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
    { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
    { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
    { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3A, k3B } \
}

M keyboards/mt/mt40/info.json => keyboards/mt/mt40/info.json +55 -1
@@ 22,9 22,63 @@
  "processor": "atmega32a",
  "bootloader": "bootloadhid",
  "community_layouts": ["planck_mit"],
  "layout_aliases": {
    "LAYOUT": "LAYOUT_planck_mit"
  },
  "layouts": {
    "LAYOUT_planck_mit": {
      "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":10, "y":1}, {"x":11, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":8, "y":2}, {"x":9, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}, {"x":5, "y":3, "w":2}, {"x":7, "y":3}, {"x":8, "y":3}, {"x":9, "y":3}, {"x":10, "y":3}, {"x":11, "y":3}]
      "layout": [
        {"matrix": [4, 0], "x": 0, "y": 0},
        {"matrix": [3, 1], "x": 1, "y": 0},
        {"matrix": [3, 2], "x": 2, "y": 0},
        {"matrix": [3, 3], "x": 3, "y": 0},
        {"matrix": [3, 4], "x": 4, "y": 0},
        {"matrix": [3, 5], "x": 5, "y": 0},
        {"matrix": [5, 2], "x": 6, "y": 0},
        {"matrix": [5, 12], "x": 7, "y": 0},
        {"matrix": [6, 12], "x": 8, "y": 0},
        {"matrix": [6, 2], "x": 9, "y": 0},
        {"matrix": [3, 10], "x": 10, "y": 0},
        {"matrix": [4, 14], "x": 11, "y": 0},

        {"matrix": [3, 0], "x": 0, "y": 1},
        {"matrix": [2, 1], "x": 1, "y": 1},
        {"matrix": [2, 2], "x": 2, "y": 1},
        {"matrix": [2, 3], "x": 3, "y": 1},
        {"matrix": [2, 4], "x": 4, "y": 1},
        {"matrix": [2, 5], "x": 5, "y": 1},
        {"matrix": [5, 3], "x": 6, "y": 1},
        {"matrix": [5, 13], "x": 7, "y": 1},
        {"matrix": [6, 13], "x": 8, "y": 1},
        {"matrix": [6, 3], "x": 9, "y": 1},
        {"matrix": [2, 10], "x": 10, "y": 1},
        {"matrix": [2, 11], "x": 11, "y": 1},

        {"matrix": [1, 0], "x": 0, "y": 2},
        {"matrix": [1, 1], "x": 1, "y": 2},
        {"matrix": [1, 2], "x": 2, "y": 2},
        {"matrix": [1, 3], "x": 3, "y": 2},
        {"matrix": [1, 4], "x": 4, "y": 2},
        {"matrix": [1, 5], "x": 5, "y": 2},
        {"matrix": [5, 4], "x": 6, "y": 2},
        {"matrix": [5, 14], "x": 7, "y": 2},
        {"matrix": [6, 14], "x": 8, "y": 2},
        {"matrix": [6, 4], "x": 9, "y": 2},
        {"matrix": [1, 10], "x": 10, "y": 2},
        {"matrix": [6, 6], "x": 11, "y": 2},

        {"matrix": [2, 0], "x": 0, "y": 3},
        {"matrix": [0, 0], "x": 1, "y": 3},
        {"matrix": [0, 1], "x": 2, "y": 3},
        {"matrix": [0, 2], "x": 3, "y": 3},
        {"matrix": [0, 4], "x": 4, "y": 3},
        {"matrix": [0, 5], "x": 5, "y": 3, "w": 2},
        {"matrix": [0, 11], "x": 7, "y": 3},
        {"matrix": [5, 6], "x": 8, "y": 3},
        {"matrix": [5, 8], "x": 9, "y": 3},
        {"matrix": [5, 7], "x": 10, "y": 3},
        {"matrix": [5, 9], "x": 11, "y": 3}
      ]
    }
  }
}

D keyboards/mt/mt40/mt40.h => keyboards/mt/mt40/mt40.h +0 -42
@@ 1,42 0,0 @@
/* Copyright 2017 REPLACE_WITH_YOUR_NAME
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#pragma once

#include "quantum.h"

#define XXX KC_NO

// This a shortcut to help you visually see your layout.
// The following is an example using the Planck MIT layout
// The first section contains all of the arguments
// The second converts the arguments into a two-dimensional array
#define LAYOUT_planck_mit( \
    k40, k31, k32, k33, k34, k35, k52, k5C, k6C, k62, k3A, k4E, \
    k30, k21, k22, k23, k24, k25, k53, k5D, k6D, k63, k2A, k2B, \
    k10, k11, k12, k13, k14, k15, k54, k5E, k6E, k64, k1A, k66, \
    k20, k00, k01, k02, k04,    k05,   k0B, k56, k58, k57, k59 \
) { \
    { k00, k01, k02, XXX, k04, k05, XXX, XXX, XXX, XXX, XXX, k0B, XXX, XXX, XXX }, \
    { k10, k11, k12, k13, k14, k15, XXX, XXX, XXX, XXX, k1A, XXX, XXX, XXX, XXX }, \
    { k20, k21, k22, k23, k24, k25, XXX, XXX, XXX, XXX, k2A, k2B, XXX, XXX, XXX }, \
    { k30, k31, k32, k33, k34, k35, XXX, XXX, XXX, XXX, k3A, XXX, XXX, XXX, XXX }, \
    { k40, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k4E }, \
    { XXX, XXX, k52, k53, k54, k05, k56, k57, k58, k59, XXX, XXX, k5C, k5D, k5E }, \
    { XXX, XXX, k62, k63, k64, XXX, k66, XXX, XXX, XXX, XXX, XXX, k6C, k6D, k6E } \
}

#define LAYOUT LAYOUT_planck_mit

M keyboards/sx60/info.json => keyboards/sx60/info.json +336 -4
@@ 20,19 20,351 @@
    "bootloader": "atmel-dfu",
    "layouts": {
        "LAYOUT": {
            "layout": [{"label":"Esc", "x":1.25, "y":0}, {"label":"1!", "x":2.25, "y":0}, {"label":"2@", "x":3.25, "y":0}, {"label":"3#", "x":4.25, "y":0}, {"label":"4$", "x":5.25, "y":0}, {"label":"5%", "x":6.25, "y":0}, {"label":"6^", "x":7.25, "y":0}, {"label":"7&", "x":9.25, "y":0}, {"label":"8*", "x":10.25, "y":0}, {"label":"9(", "x":11.25, "y":0}, {"label":"0)", "x":12.25, "y":0}, {"label":"-_", "x":13.25, "y":0}, {"label":"=+", "x":14.25, "y":0}, {"label":"\\|", "x":15.25, "y":0}, {"label":"`~", "x":16.25, "y":0}, {"label":"M1", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":8.75, "y":1}, {"label":"U", "x":9.75, "y":1}, {"label":"I", "x":10.75, "y":1}, {"label":"O", "x":11.75, "y":1}, {"label":"P", "x":12.75, "y":1}, {"label":"{", "x":13.75, "y":1}, {"label":"}", "x":14.75, "y":1}, {"label":"Backspace", "x":15.75, "y":1, "w":1.5}, {"label":"M2", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":9, "y":2}, {"label":"J", "x":10, "y":2}, {"label":"K", "x":11, "y":2}, {"label":"L", "x":12, "y":2}, {"label":":", "x":13, "y":2}, {"label":"\"", "x":14, "y":2}, {"label":"ANSIEnter", "x":15, "y":2}, {"label":"ISOEnter", "x":16, "y":2, "w":1.25}, {"label":"M3", "x":0, "y":3}, {"label":"Shift", "x":1.25, "y":3, "w":1.25}, {"label":"\\|", "x":2.5, "y":3}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"N", "x":9.5, "y":3}, {"label":"M", "x":10.5, "y":3}, {"label":"<", "x":11.5, "y":3}, {"label":">", "x":12.5, "y":3}, {"label":"?", "x":13.5, "y":3}, {"label":"Shift", "x":14.5, "y":3, "w":1.75}, {"label":"Fn", "x":16.25, "y":3}, {"label":"M4", "x":0, "y":4}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.25}, {"label":"Win", "x":2.5, "y":4, "w":1.25}, {"label":"Alt", "x":3.75, "y":4, "w":1.25}, {"x":5, "y":4, "w":2}, {"x":7, "y":4}, {"x":9, "y":4, "w":2.75}, {"label":"Alt", "x":11.75, "y":4, "w":1.25}, {"label":"Win", "x":13, "y":4, "w":1.25}, {"label":"Menu", "x":14.25, "y":4}, {"label":"Ctrl", "x":15.25, "y":4}, {"label":"Fn2", "x":16.25, "y":4}]
            "layout": [
                {"matrix": [0, 0], "x": 1.25, "y": 0},
                {"matrix": [0, 1], "x": 2.25, "y": 0},
                {"matrix": [0, 2], "x": 3.25, "y": 0},
                {"matrix": [0, 3], "x": 4.25, "y": 0},
                {"matrix": [0, 4], "x": 5.25, "y": 0},
                {"matrix": [0, 5], "x": 6.25, "y": 0},
                {"matrix": [0, 6], "x": 7.25, "y": 0},

                {"matrix": [0, 8], "x": 9.25, "y": 0},
                {"matrix": [0, 9], "x": 10.25, "y": 0},
                {"matrix": [0, 10], "x": 11.25, "y": 0},
                {"matrix": [0, 11], "x": 12.25, "y": 0},
                {"matrix": [0, 12], "x": 13.25, "y": 0},
                {"matrix": [0, 13], "x": 14.25, "y": 0},
                {"matrix": [0, 14], "x": 15.25, "y": 0},
                {"matrix": [0, 15], "x": 16.25, "y": 0},

                {"matrix": [1, 0], "x": 0, "y": 1},

                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
                {"matrix": [1, 2], "x": 2.75, "y": 1},
                {"matrix": [1, 3], "x": 3.75, "y": 1},
                {"matrix": [1, 4], "x": 4.75, "y": 1},
                {"matrix": [1, 5], "x": 5.75, "y": 1},
                {"matrix": [1, 6], "x": 6.75, "y": 1},

                {"matrix": [1, 8], "x": 8.75, "y": 1},
                {"matrix": [1, 9], "x": 9.75, "y": 1},
                {"matrix": [1, 10], "x": 10.75, "y": 1},
                {"matrix": [1, 11], "x": 11.75, "y": 1},
                {"matrix": [1, 12], "x": 12.75, "y": 1},
                {"matrix": [1, 13], "x": 13.75, "y": 1},
                {"matrix": [1, 14], "x": 14.75, "y": 1},
                {"matrix": [1, 15], "x": 15.75, "y": 1, "w": 1.5},

                {"matrix": [2, 0], "x": 0, "y": 2},

                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
                {"matrix": [2, 2], "x": 3, "y": 2},
                {"matrix": [2, 3], "x": 4, "y": 2},
                {"matrix": [2, 4], "x": 5, "y": 2},
                {"matrix": [2, 5], "x": 6, "y": 2},
                {"matrix": [2, 6], "x": 7, "y": 2},

                {"matrix": [2, 8], "x": 9, "y": 2},
                {"matrix": [2, 9], "x": 10, "y": 2},
                {"matrix": [2, 10], "x": 11, "y": 2},
                {"matrix": [2, 11], "x": 12, "y": 2},
                {"matrix": [2, 12], "x": 13, "y": 2},
                {"matrix": [2, 13], "x": 14, "y": 2},
                {"matrix": [2, 14], "x": 15, "y": 2},
                {"matrix": [2, 15], "x": 16, "y": 2, "w": 1.25},

                {"matrix": [3, 0], "x": 0, "y": 3},

                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 1.25},
                {"matrix": [3, 2], "x": 2.5, "y": 3},
                {"matrix": [3, 3], "x": 3.5, "y": 3},
                {"matrix": [3, 4], "x": 4.5, "y": 3},
                {"matrix": [3, 5], "x": 5.5, "y": 3},
                {"matrix": [3, 6], "x": 6.5, "y": 3},
                {"matrix": [3, 7], "x": 7.5, "y": 3},

                {"matrix": [3, 8], "x": 9.5, "y": 3},
                {"matrix": [3, 9], "x": 10.5, "y": 3},
                {"matrix": [3, 10], "x": 11.5, "y": 3},
                {"matrix": [3, 11], "x": 12.5, "y": 3},
                {"matrix": [3, 12], "x": 13.5, "y": 3},
                {"matrix": [3, 13], "x": 14.5, "y": 3, "w": 1.75},
                {"matrix": [3, 14], "x": 16.25, "y": 3},

                {"matrix": [4, 0], "x": 0, "y": 4},

                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
                {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
                {"matrix": [4, 3], "x": 3.75, "y": 4, "w": 1.25},
                {"matrix": [4, 4], "x": 5, "y": 4, "w": 2},
                {"matrix": [4, 5], "x": 7, "y": 4},

                {"matrix": [4, 8], "x": 9, "y": 4, "w": 2.75},
                {"matrix": [4, 9], "x": 11.75, "y": 4, "w": 1.25},
                {"matrix": [4, 10], "x": 13, "y": 4, "w": 1.25},
                {"matrix": [4, 11], "x": 14.25, "y": 4},
                {"matrix": [4, 12], "x": 15.25, "y": 4},
                {"matrix": [4, 13], "x": 16.25, "y": 4}
            ]
        },

        "LAYOUT_ansi_split_bs_rshift": {
            "layout": [{"label":"Esc", "x":1.25, "y":0}, {"label":"1!", "x":2.25, "y":0}, {"label":"2@", "x":3.25, "y":0}, {"label":"3#", "x":4.25, "y":0}, {"label":"4$", "x":5.25, "y":0}, {"label":"5%", "x":6.25, "y":0}, {"label":"6^", "x":7.25, "y":0}, {"label":"7&", "x":9.25, "y":0}, {"label":"8*", "x":10.25, "y":0}, {"label":"9(", "x":11.25, "y":0}, {"label":"0)", "x":12.25, "y":0}, {"label":"-_", "x":13.25, "y":0}, {"label":"=+", "x":14.25, "y":0}, {"label":"\\|", "x":15.25, "y":0}, {"label":"`~", "x":16.25, "y":0}, {"label":"M1", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":8.75, "y":1}, {"label":"U", "x":9.75, "y":1}, {"label":"I", "x":10.75, "y":1}, {"label":"O", "x":11.75, "y":1}, {"label":"P", "x":12.75, "y":1}, {"label":"{", "x":13.75, "y":1}, {"label":"}", "x":14.75, "y":1}, {"label":"Backspace", "x":15.75, "y":1, "w":1.5}, {"label":"M2", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":9, "y":2}, {"label":"J", "x":10, "y":2}, {"label":"K", "x":11, "y":2}, {"label":"L", "x":12, "y":2}, {"label":":", "x":13, "y":2}, {"label":"\"", "x":14, "y":2}, {"label":"Enter", "x":15, "y":2, "w":2.25}, {"label":"M3", "x":0, "y":3}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"N", "x":9.5, "y":3}, {"label":"M", "x":10.5, "y":3}, {"label":"<", "x":11.5, "y":3}, {"label":">", "x":12.5, "y":3}, {"label":"?", "x":13.5, "y":3}, {"label":"Shift", "x":14.5, "y":3, "w":1.75}, {"label":"Fn", "x":16.25, "y":3}, {"label":"M4", "x":0, "y":4}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.25}, {"label":"Win", "x":2.5, "y":4, "w":1.25}, {"label":"Alt", "x":3.75, "y":4, "w":1.25}, {"x":5, "y":4, "w":2}, {"x":7, "y":4}, {"x":9, "y":4, "w":2.75}, {"label":"Alt", "x":11.75, "y":4, "w":1.25}, {"label":"Win", "x":13, "y":4, "w":1.25}, {"label":"Menu", "x":14.25, "y":4}, {"label":"Ctrl", "x":15.25, "y":4}, {"label":"Fn2", "x":16.25, "y":4}]
            "layout": [
                {"matrix": [0, 0], "x": 1.25, "y": 0},
                {"matrix": [0, 1], "x": 2.25, "y": 0},
                {"matrix": [0, 2], "x": 3.25, "y": 0},
                {"matrix": [0, 3], "x": 4.25, "y": 0},
                {"matrix": [0, 4], "x": 5.25, "y": 0},
                {"matrix": [0, 5], "x": 6.25, "y": 0},
                {"matrix": [0, 6], "x": 7.25, "y": 0},

                {"matrix": [0, 8], "x": 9.25, "y": 0},
                {"matrix": [0, 9], "x": 10.25, "y": 0},
                {"matrix": [0, 10], "x": 11.25, "y": 0},
                {"matrix": [0, 11], "x": 12.25, "y": 0},
                {"matrix": [0, 12], "x": 13.25, "y": 0},
                {"matrix": [0, 13], "x": 14.25, "y": 0},
                {"matrix": [0, 14], "x": 15.25, "y": 0},
                {"matrix": [0, 15], "x": 16.25, "y": 0},

                {"matrix": [1, 0], "x": 0, "y": 1},

                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
                {"matrix": [1, 2], "x": 2.75, "y": 1},
                {"matrix": [1, 3], "x": 3.75, "y": 1},
                {"matrix": [1, 4], "x": 4.75, "y": 1},
                {"matrix": [1, 5], "x": 5.75, "y": 1},
                {"matrix": [1, 6], "x": 6.75, "y": 1},

                {"matrix": [1, 8], "x": 8.75, "y": 1},
                {"matrix": [1, 9], "x": 9.75, "y": 1},
                {"matrix": [1, 10], "x": 10.75, "y": 1},
                {"matrix": [1, 11], "x": 11.75, "y": 1},
                {"matrix": [1, 12], "x": 12.75, "y": 1},
                {"matrix": [1, 13], "x": 13.75, "y": 1},
                {"matrix": [1, 14], "x": 14.75, "y": 1},
                {"matrix": [1, 15], "x": 15.75, "y": 1, "w": 1.5},

                {"matrix": [2, 0], "x": 0, "y": 2},

                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
                {"matrix": [2, 2], "x": 3, "y": 2},
                {"matrix": [2, 3], "x": 4, "y": 2},
                {"matrix": [2, 4], "x": 5, "y": 2},
                {"matrix": [2, 5], "x": 6, "y": 2},
                {"matrix": [2, 6], "x": 7, "y": 2},

                {"matrix": [2, 8], "x": 9, "y": 2},
                {"matrix": [2, 9], "x": 10, "y": 2},
                {"matrix": [2, 10], "x": 11, "y": 2},
                {"matrix": [2, 11], "x": 12, "y": 2},
                {"matrix": [2, 12], "x": 13, "y": 2},
                {"matrix": [2, 13], "x": 14, "y": 2},
                {"matrix": [2, 14], "x": 15, "y": 2, "w": 2.25},

                {"matrix": [3, 0], "x": 0, "y": 3},

                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
                {"matrix": [3, 3], "x": 3.5, "y": 3},
                {"matrix": [3, 4], "x": 4.5, "y": 3},
                {"matrix": [3, 5], "x": 5.5, "y": 3},
                {"matrix": [3, 6], "x": 6.5, "y": 3},
                {"matrix": [3, 7], "x": 7.5, "y": 3},
                {"matrix": [3, 8], "x": 9.5, "y": 3},
                {"matrix": [3, 9], "x": 10.5, "y": 3},
                {"matrix": [3, 10], "x": 11.5, "y": 3},
                {"matrix": [3, 11], "x": 12.5, "y": 3},
                {"matrix": [3, 12], "x": 13.5, "y": 3},
                {"matrix": [3, 13], "x": 14.5, "y": 3, "w": 1.75},
                {"matrix": [3, 15], "x": 16.25, "y": 3},

                {"matrix": [4, 0], "x": 0, "y": 4},

                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
                {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
                {"matrix": [4, 3], "x": 3.75, "y": 4, "w": 1.25},
                {"matrix": [4, 4], "x": 5, "y": 4, "w": 2},
                {"matrix": [4, 5], "x": 7, "y": 4},

                {"matrix": [4, 8], "x": 9, "y": 4, "w": 2.75},
                {"matrix": [4, 9], "x": 11.75, "y": 4, "w": 1.25},
                {"matrix": [4, 10], "x": 13, "y": 4, "w": 1.25},
                {"matrix": [4, 11], "x": 14.25, "y": 4},
                {"matrix": [4, 12], "x": 15.25, "y": 4},
                {"matrix": [4, 13], "x": 16.25, "y": 4}
            ]
        },

        "LAYOUT_ansi_split_bs": {
            "layout": [{"label":"Esc", "x":1.25, "y":0}, {"label":"1!", "x":2.25, "y":0}, {"label":"2@", "x":3.25, "y":0}, {"label":"3#", "x":4.25, "y":0}, {"label":"4$", "x":5.25, "y":0}, {"label":"5%", "x":6.25, "y":0}, {"label":"6^", "x":7.25, "y":0}, {"label":"7&", "x":9.25, "y":0}, {"label":"8*", "x":10.25, "y":0}, {"label":"9(", "x":11.25, "y":0}, {"label":"0)", "x":12.25, "y":0}, {"label":"-_", "x":13.25, "y":0}, {"label":"=+", "x":14.25, "y":0}, {"label":"\\|", "x":15.25, "y":0}, {"label":"`~", "x":16.25, "y":0}, {"label":"M1", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":8.75, "y":1}, {"label":"U", "x":9.75, "y":1}, {"label":"I", "x":10.75, "y":1}, {"label":"O", "x":11.75, "y":1}, {"label":"P", "x":12.75, "y":1}, {"label":"{", "x":13.75, "y":1}, {"label":"}", "x":14.75, "y":1}, {"label":"Backspace", "x":15.75, "y":1, "w":1.5}, {"label":"M2", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":9, "y":2}, {"label":"J", "x":10, "y":2}, {"label":"K", "x":11, "y":2}, {"label":"L", "x":12, "y":2}, {"label":":", "x":13, "y":2}, {"label":"\"", "x":14, "y":2}, {"label":"Enter", "x":15, "y":2, "w":2.25}, {"label":"M3", "x":0, "y":3}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"N", "x":9.5, "y":3}, {"label":"M", "x":10.5, "y":3}, {"label":"<", "x":11.5, "y":3}, {"label":">", "x":12.5, "y":3}, {"label":"?", "x":13.5, "y":3}, {"label":"Shift", "x":14.5, "y":3, "w":2.75}, {"label":"M4", "x":0, "y":4}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.25}, {"label":"Win", "x":2.5, "y":4, "w":1.25}, {"label":"Alt", "x":3.75, "y":4, "w":1.25}, {"x":5, "y":4, "w":2}, {"x":7, "y":4}, {"x":9, "y":4, "w":2.75}, {"label":"Alt", "x":11.75, "y":4, "w":1.25}, {"label":"Win", "x":13, "y":4, "w":1.25}, {"label":"Menu", "x":14.25, "y":4}, {"label":"Ctrl", "x":15.25, "y":4}, {"label":"Fn", "x":16.25, "y":4}]
            "layout": [
                {"matrix": [0, 0], "x": 1.25, "y": 0},
                {"matrix": [0, 1], "x": 2.25, "y": 0},
                {"matrix": [0, 2], "x": 3.25, "y": 0},
                {"matrix": [0, 3], "x": 4.25, "y": 0},
                {"matrix": [0, 4], "x": 5.25, "y": 0},
                {"matrix": [0, 5], "x": 6.25, "y": 0},
                {"matrix": [0, 6], "x": 7.25, "y": 0},

                {"matrix": [0, 8], "x": 9.25, "y": 0},
                {"matrix": [0, 9], "x": 10.25, "y": 0},
                {"matrix": [0, 10], "x": 11.25, "y": 0},
                {"matrix": [0, 11], "x": 12.25, "y": 0},
                {"matrix": [0, 12], "x": 13.25, "y": 0},
                {"matrix": [0, 13], "x": 14.25, "y": 0},
                {"matrix": [0, 14], "x": 15.25, "y": 0},
                {"matrix": [0, 15], "x": 16.25, "y": 0},

                {"matrix": [1, 0], "x": 0, "y": 1},

                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
                {"matrix": [1, 2], "x": 2.75, "y": 1},
                {"matrix": [1, 3], "x": 3.75, "y": 1},
                {"matrix": [1, 4], "x": 4.75, "y": 1},
                {"matrix": [1, 5], "x": 5.75, "y": 1},
                {"matrix": [1, 6], "x": 6.75, "y": 1},

                {"matrix": [1, 8], "x": 8.75, "y": 1},
                {"matrix": [1, 9], "x": 9.75, "y": 1},
                {"matrix": [1, 10], "x": 10.75, "y": 1},
                {"matrix": [1, 11], "x": 11.75, "y": 1},
                {"matrix": [1, 12], "x": 12.75, "y": 1},
                {"matrix": [1, 13], "x": 13.75, "y": 1},
                {"matrix": [1, 14], "x": 14.75, "y": 1},
                {"matrix": [1, 15], "x": 15.75, "y": 1, "w": 1.5},

                {"matrix": [2, 0], "x": 0, "y": 2},

                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
                {"matrix": [2, 2], "x": 3, "y": 2},
                {"matrix": [2, 3], "x": 4, "y": 2},
                {"matrix": [2, 4], "x": 5, "y": 2},
                {"matrix": [2, 5], "x": 6, "y": 2},
                {"matrix": [2, 6], "x": 7, "y": 2},

                {"matrix": [2, 8], "x": 9, "y": 2},
                {"matrix": [2, 9], "x": 10, "y": 2},
                {"matrix": [2, 10], "x": 11, "y": 2},
                {"matrix": [2, 11], "x": 12, "y": 2},
                {"matrix": [2, 12], "x": 13, "y": 2},
                {"matrix": [2, 13], "x": 14, "y": 2},
                {"matrix": [2, 14], "x": 15, "y": 2, "w": 2.25},

                {"matrix": [3, 0], "x": 0, "y": 3},

                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
                {"matrix": [3, 3], "x": 3.5, "y": 3},
                {"matrix": [3, 4], "x": 4.5, "y": 3},
                {"matrix": [3, 5], "x": 5.5, "y": 3},
                {"matrix": [3, 6], "x": 6.5, "y": 3},
                {"matrix": [3, 7], "x": 7.5, "y": 3},

                {"matrix": [3, 8], "x": 9.5, "y": 3},
                {"matrix": [3, 9], "x": 10.5, "y": 3},
                {"matrix": [3, 10], "x": 11.5, "y": 3},
                {"matrix": [3, 11], "x": 12.5, "y": 3},
                {"matrix": [3, 12], "x": 13.5, "y": 3},
                {"matrix": [3, 14], "x": 14.5, "y": 3, "w": 2.75},

                {"matrix": [4, 0], "x": 0, "y": 4},
                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
                {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
                {"matrix": [4, 3], "x": 3.75, "y": 4, "w": 1.25},
                {"matrix": [4, 4], "x": 5, "y": 4, "w": 2},
                {"matrix": [4, 5], "x": 7, "y": 4},

                {"matrix": [4, 8], "x": 9, "y": 4, "w": 2.75},
                {"matrix": [4, 9], "x": 11.75, "y": 4, "w": 1.25},
                {"matrix": [4, 10], "x": 13, "y": 4, "w": 1.25},
                {"matrix": [4, 11], "x": 14.25, "y": 4},
                {"matrix": [4, 12], "x": 15.25, "y": 4},
                {"matrix": [4, 13], "x": 16.25, "y": 4}
            ]
        },

        "LAYOUT_ansi_split_rshift": {
            "layout": [{"label":"Esc", "x":1.25, "y":0}, {"label":"1!", "x":2.25, "y":0}, {"label":"2@", "x":3.25, "y":0}, {"label":"3#", "x":4.25, "y":0}, {"label":"4$", "x":5.25, "y":0}, {"label":"5%", "x":6.25, "y":0}, {"label":"6^", "x":7.25, "y":0}, {"label":"7&", "x":9.25, "y":0}, {"label":"8*", "x":10.25, "y":0}, {"label":"9(", "x":11.25, "y":0}, {"label":"0)", "x":12.25, "y":0}, {"label":"-_", "x":13.25, "y":0}, {"label":"=+", "x":14.25, "y":0}, {"label":"Backspace", "x":15.25, "y":0, "w":2}, {"label":"M1", "x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":8.75, "y":1}, {"label":"U", "x":9.75, "y":1}, {"label":"I", "x":10.75, "y":1}, {"label":"O", "x":11.75, "y":1}, {"label":"P", "x":12.75, "y":1}, {"label":"{", "x":13.75, "y":1}, {"label":"}", "x":14.75, "y":1}, {"label":"\\|", "x":15.75, "y":1, "w":1.5}, {"label":"M2", "x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":9, "y":2}, {"label":"J", "x":10, "y":2}, {"label":"K", "x":11, "y":2}, {"label":"L", "x":12, "y":2}, {"label":":", "x":13, "y":2}, {"label":"\"", "x":14, "y":2}, {"label":"Enter", "x":15, "y":2, "w":2.25}, {"label":"M3", "x":0, "y":3}, {"label":"Shift", "x":1.25, "y":3, "w":2.25}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"N", "x":9.5, "y":3}, {"label":"M", "x":10.5, "y":3}, {"label":"<", "x":11.5, "y":3}, {"label":">", "x":12.5, "y":3}, {"label":"?", "x":13.5, "y":3}, {"label":"Shift", "x":14.5, "y":3, "w":1.75}, {"label":"Fn", "x":16.25, "y":3}, {"label":"M4", "x":0, "y":4}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.25}, {"label":"Win", "x":2.5, "y":4, "w":1.25}, {"label":"Alt", "x":3.75, "y":4, "w":1.25}, {"x":5, "y":4, "w":2}, {"x":7, "y":4}, {"x":9, "y":4, "w":2.75}, {"label":"Alt", "x":11.75, "y":4, "w":1.25}, {"label":"Win", "x":13, "y":4, "w":1.25}, {"label":"Menu", "x":14.25, "y":4}, {"label":"Ctrl", "x":15.25, "y":4}, {"label":"Fn2", "x":16.25, "y":4}]
            "layout": [
                {"matrix": [0, 0], "x": 1.25, "y": 0},
                {"matrix": [0, 1], "x": 2.25, "y": 0},
                {"matrix": [0, 2], "x": 3.25, "y": 0},
                {"matrix": [0, 3], "x": 4.25, "y": 0},
                {"matrix": [0, 4], "x": 5.25, "y": 0},
                {"matrix": [0, 5], "x": 6.25, "y": 0},
                {"matrix": [0, 6], "x": 7.25, "y": 0},

                {"matrix": [0, 8], "x": 9.25, "y": 0},
                {"matrix": [0, 9], "x": 10.25, "y": 0},
                {"matrix": [0, 10], "x": 11.25, "y": 0},
                {"matrix": [0, 11], "x": 12.25, "y": 0},
                {"matrix": [0, 12], "x": 13.25, "y": 0},
                {"matrix": [0, 13], "x": 14.25, "y": 0},
                {"matrix": [0, 14], "x": 15.25, "y": 0, "w": 2},

                {"matrix": [1, 0], "x": 0, "y": 1},

                {"matrix": [1, 1], "x": 1.25, "y": 1, "w": 1.5},
                {"matrix": [1, 2], "x": 2.75, "y": 1},
                {"matrix": [1, 3], "x": 3.75, "y": 1},
                {"matrix": [1, 4], "x": 4.75, "y": 1},
                {"matrix": [1, 5], "x": 5.75, "y": 1},
                {"matrix": [1, 6], "x": 6.75, "y": 1},

                {"matrix": [1, 8], "x": 8.75, "y": 1},
                {"matrix": [1, 9], "x": 9.75, "y": 1},
                {"matrix": [1, 10], "x": 10.75, "y": 1},
                {"matrix": [1, 11], "x": 11.75, "y": 1},
                {"matrix": [1, 12], "x": 12.75, "y": 1},
                {"matrix": [1, 13], "x": 13.75, "y": 1},
                {"matrix": [1, 14], "x": 14.75, "y": 1},
                {"matrix": [1, 15], "x": 15.75, "y": 1, "w": 1.5},

                {"matrix": [2, 0], "x": 0, "y": 2},

                {"matrix": [2, 1], "x": 1.25, "y": 2, "w": 1.75},
                {"matrix": [2, 2], "x": 3, "y": 2},
                {"matrix": [2, 3], "x": 4, "y": 2},
                {"matrix": [2, 4], "x": 5, "y": 2},
                {"matrix": [2, 5], "x": 6, "y": 2},
                {"matrix": [2, 6], "x": 7, "y": 2},
                {"matrix": [2, 8], "x": 9, "y": 2},
                {"matrix": [2, 9], "x": 10, "y": 2},
                {"matrix": [2, 10], "x": 11, "y": 2},
                {"matrix": [2, 11], "x": 12, "y": 2},
                {"matrix": [2, 12], "x": 13, "y": 2},
                {"matrix": [2, 13], "x": 14, "y": 2},
                {"matrix": [2, 14], "x": 15, "y": 2, "w": 2.25},

                {"matrix": [3, 0], "x": 0, "y": 3},

                {"matrix": [3, 1], "x": 1.25, "y": 3, "w": 2.25},
                {"matrix": [3, 3], "x": 3.5, "y": 3},
                {"matrix": [3, 4], "x": 4.5, "y": 3},
                {"matrix": [3, 5], "x": 5.5, "y": 3},
                {"matrix": [3, 6], "x": 6.5, "y": 3},
                {"matrix": [3, 7], "x": 7.5, "y": 3},
                {"matrix": [3, 8], "x": 9.5, "y": 3},
                {"matrix": [3, 9], "x": 10.5, "y": 3},
                {"matrix": [3, 10], "x": 11.5, "y": 3},
                {"matrix": [3, 11], "x": 12.5, "y": 3},
                {"matrix": [3, 12], "x": 13.5, "y": 3},
                {"matrix": [3, 13], "x": 14.5, "y": 3, "w": 1.75},
                {"matrix": [3, 15], "x": 16.25, "y": 3},

                {"matrix": [4, 0], "x": 0, "y": 4},

                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
                {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
                {"matrix": [4, 3], "x": 3.75, "y": 4, "w": 1.25},
                {"matrix": [4, 4], "x": 5, "y": 4, "w": 2},
                {"matrix": [4, 5], "x": 7, "y": 4},

                {"matrix": [4, 8], "x": 9, "y": 4, "w": 2.75},
                {"matrix": [4, 9], "x": 11.75, "y": 4, "w": 1.25},
                {"matrix": [4, 10], "x": 13, "y": 4, "w": 1.25},
                {"matrix": [4, 11], "x": 14.25, "y": 4},
                {"matrix": [4, 12], "x": 15.25, "y": 4},
                {"matrix": [4, 13], "x": 16.25, "y": 4}
            ]
        }
    }
}

M keyboards/sx60/sx60.h => keyboards/sx60/sx60.h +0 -58
@@ 21,61 21,3 @@
extern uint8_t mcp23018_status;

uint8_t init_mcp23018(void);

#define XXX KC_NO

#define LAYOUT( \
          k00, k01, k02, k03, k04, k05, k06,    k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \
    k10,  k11,    k12, k13, k14, k15, k16,    k18, k19, k1A, k1B, k1C, k1D, k1E,  k1F, \
    k20,    k21,    k22, k23, k24, k25, k26,    k28, k29, k2A, k2B, k2C, k2D, k2E, k2F, \
    k30,   k31,  k32, k33, k34, k35, k36, k37,    k38, k39, k3A, k3B, k3C,  k3D,   k3E, \
    k40,  k41,   k42,   k43,   k44,   k45,       k48,     k49,    k4A,   k4B, k4C, k4D \
) { \
    { k00, k01, k02, k03, k04, k05, k06, XXX, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2A, k2B, k2C, k2D, k2E, k2F }, \
    { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3E }, \
    { k40, k41, k42, k43, k44, k45, XXX, XXX, k48, k49, k4A, k4B, k4C, k4D, XXX, XXX } \
}

#define LAYOUT_ansi_split_bs_rshift( \
          k00, k01, k02, k03, k04, k05, k06,    k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \
    k10,  k11,   k12, k13, k14, k15, k16,    k18, k19, k1A, k1B, k1C, k1D, k1E,   k1F, \
    k20,    k21,  k22, k23, k24, k25, k26,    k28, k29, k2A, k2B, k2C, k2D,      k2E, \
    k30,     k31,   k33, k34, k35, k36, k37,    k38, k39, k3A, k3B, k3C,   k3D,    k3E, \
    k40,  k41,   k42,   k43,   k44,   k45,        k48,     k49,   k4A,   k4B, k4C, k4E \
) { \
    { k00, k01, k02, k03, k04, k05, k06, XXX, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2A, k2B, k2C, k2D, k2E, XXX }, \
    { k30, k31, XXX, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3E }, \
    { k40, k41, k42, k43, k44, k45, XXX, XXX, k48, k49, k4A, k4B, k4C, k4E, XXX, XXX } \
}

#define LAYOUT_ansi_split_bs( \
          k00, k01, k02, k03, k04, k05, k06,    k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \
    k10,  k11,   k12, k13, k14, k15, k16,    k18, k19, k1A, k1B, k1C, k1D, k1E,   k1F, \
    k20,    k21,  k22, k23, k24, k25, k26,    k28, k29, k2A, k2B, k2C, k2D,      k2E, \
    k30,     k31,   k33, k34, k35, k36, k37,    k38, k39, k3A, k3B, k3C,     k3D, \
    k40,  k41,   k42,   k43,   k44,   k45,        k48,     k49,   k4A,   k4B, k4C, k4D \
) { \
    { k00, k01, k02, k03, k04, k05, k06, XXX, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2A, k2B, k2C, k2D, k2E, XXX }, \
    { k30, k31, XXX, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, XXX }, \
    { k40, k41, k42, k43, k44, k45, XXX, XXX, k48, k49, k4A, k4B, k4C, k4D, XXX, XXX } \
}

#define LAYOUT_ansi_split_rshift( \
         k00, k01, k02, k03, k04, k05, k06,    k08, k09, k0A, k0B, k0C, k0D, k0E, \
    k10,  k11,   k12, k13, k14, k15, k16,    k18, k19, k1A, k1B, k1C, k1D, k1E,   k1F, \
    k20,    k21,  k22, k23, k24, k25, k26,    k28, k29, k2A, k2B, k2C, k2D,      k2E, \
    k30,     k31,   k33, k34, k35, k36, k37,    k38, k39, k3A, k3B, k3C,   k3D,    k3E, \
    k40,  k41,   k42,   k43,   k44,   k45,        k48,     k49,   k4A,   k4B, k4C, k4D \
) { \
    { k00, k01, k02, k03, k04, k05, k06, XXX, k08, k09, k0A, k0B, k0C, k0D, k0E, k0E }, \
    { k10, k11, k12, k13, k14, k15, k16, XXX, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \
    { k20, k21, k22, k23, k24, k25, k26, XXX, k28, k29, k2A, k2B, k2C, k2D, k2E, XXX }, \
    { k30, k31, XXX, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3E }, \
    { k40, k41, k42, k43, k44, k45, XXX, XXX, k48, k49, k4A, k4B, k4C, k4D, XXX, XXX } \
}

M keyboards/xiudi/xd96/info.json => keyboards/xiudi/xd96/info.json +303 -313
@@ 22,342 22,332 @@
  "layouts": {  
    "LAYOUT_96_ansi": {
      "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":"F11", "x":11, "y":0},
        {"label":"F12", "x":12, "y":0},
        {"label":"Insert", "x":13, "y":0},
        {"label":"Delete", "x":14, "y":0},
        {"label":"Home", "x":15, "y":0},
        {"label":"End", "x":16, "y":0},
        {"label":"PgUp", "x":17, "y":0},
        {"label":"PgDn", "x":18, "y":0},
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 13], "x": 13, "y": 0},
        {"matrix": [5, 6], "x": 14, "y": 0},
        {"matrix": [0, 14], "x": 15, "y": 0},
        {"matrix": [0, 15], "x": 16, "y": 0},
        {"matrix": [0, 16], "x": 17, "y": 0},
        {"matrix": [0, 17], "x": 18, "y": 0},

        {"label":"~", "x":0, "y":1},
        {"label":"!", "x":1, "y":1},
        {"label":"@", "x":2, "y":1},
        {"label":"#", "x":3, "y":1},
        {"label":"$", "x":4, "y":1},
        {"label":"%", "x":5, "y":1},
        {"label":"^", "x":6, "y":1},
        {"label":"&", "x":7, "y":1},
        {"label":"*", "x":8, "y":1},
        {"label":"(", "x":9, "y":1},
        {"label":")", "x":10, "y":1},
        {"label":"_", "x":11, "y":1},
        {"label":"+", "x":12, "y":1},
        {"label":"Backspace", "x":13, "y":1, "w":2},
        {"matrix": [1, 0], "x": 0, "y": 1},
        {"matrix": [1, 1], "x": 1, "y": 1},
        {"matrix": [1, 2], "x": 2, "y": 1},
        {"matrix": [1, 3], "x": 3, "y": 1},
        {"matrix": [1, 4], "x": 4, "y": 1},
        {"matrix": [1, 5], "x": 5, "y": 1},
        {"matrix": [1, 6], "x": 6, "y": 1},
        {"matrix": [1, 7], "x": 7, "y": 1},
        {"matrix": [1, 8], "x": 8, "y": 1},
        {"matrix": [1, 9], "x": 9, "y": 1},
        {"matrix": [1, 10], "x": 10, "y": 1},
        {"matrix": [1, 11], "x": 11, "y": 1},
        {"matrix": [1, 12], "x": 12, "y": 1},
        {"matrix": [1, 13], "x": 13, "y": 1, "w": 2},
        {"matrix": [1, 14], "x": 15, "y": 1},
        {"matrix": [1, 15], "x": 16, "y": 1},
        {"matrix": [1, 16], "x": 17, "y": 1},
        {"matrix": [1, 17], "x": 18, "y": 1},

        {"label":"Num Lock", "x":15, "y":1},
        {"label":"/", "x":16, "y":1},
        {"label":"*", "x":17, "y":1},
        {"label":"-", "x":18, "y":1},
        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
        {"matrix": [2, 1], "x": 1.5, "y": 2},
        {"matrix": [2, 2], "x": 2.5, "y": 2},
        {"matrix": [2, 3], "x": 3.5, "y": 2},
        {"matrix": [2, 4], "x": 4.5, "y": 2},
        {"matrix": [2, 5], "x": 5.5, "y": 2},
        {"matrix": [2, 6], "x": 6.5, "y": 2},
        {"matrix": [2, 7], "x": 7.5, "y": 2},
        {"matrix": [2, 8], "x": 8.5, "y": 2},
        {"matrix": [2, 9], "x": 9.5, "y": 2},
        {"matrix": [2, 10], "x": 10.5, "y": 2},
        {"matrix": [2, 11], "x": 11.5, "y": 2},
        {"matrix": [2, 12], "x": 12.5, "y": 2},
        {"matrix": [2, 13], "x": 13.5, "y": 2, "w": 1.5},
        {"matrix": [2, 14], "x": 15, "y": 2},
        {"matrix": [2, 15], "x": 16, "y": 2},
        {"matrix": [2, 16], "x": 17, "y": 2},

        {"label":"Tab", "x":0, "y":2, "w":1.5},
        {"label":"Q", "x":1.5, "y":2},
        {"label":"W", "x":2.5, "y":2},
        {"label":"E", "x":3.5, "y":2},
        {"label":"R", "x":4.5, "y":2},
        {"label":"T", "x":5.5, "y":2},
        {"label":"Y", "x":6.5, "y":2},
        {"label":"U", "x":7.5, "y":2},
        {"label":"I", "x":8.5, "y":2},
        {"label":"O", "x":9.5, "y":2},
        {"label":"P", "x":10.5, "y":2},
        {"label":"{", "x":11.5, "y":2},
        {"label":"}", "x":12.5, "y":2},
        {"label":"|", "x":13.5, "y":2, "w":1.5},
        {"label":"7", "x":15, "y":2},
        {"label":"8", "x":16, "y":2},
        {"label":"9", "x":17, "y":2},
        {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75},
        {"matrix": [3, 1], "x": 1.75, "y": 3},
        {"matrix": [3, 2], "x": 2.75, "y": 3},
        {"matrix": [3, 3], "x": 3.75, "y": 3},
        {"matrix": [3, 4], "x": 4.75, "y": 3},
        {"matrix": [3, 5], "x": 5.75, "y": 3},
        {"matrix": [3, 6], "x": 6.75, "y": 3},
        {"matrix": [3, 7], "x": 7.75, "y": 3},
        {"matrix": [3, 8], "x": 8.75, "y": 3},
        {"matrix": [3, 9], "x": 9.75, "y": 3},
        {"matrix": [3, 10], "x": 10.75, "y": 3},
        {"matrix": [3, 11], "x": 11.75, "y": 3},
        {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25},
        {"matrix": [3, 14], "x": 15, "y": 3},
        {"matrix": [3, 15], "x": 16, "y": 3},
        {"matrix": [3, 16], "x": 17, "y": 3},
        {"matrix": [2, 17], "x": 18, "y": 2, "h": 2},

        {"label":"Caps Lock", "x":0, "y":3, "w":1.75},
        {"label":"A", "x":1.75, "y":3},
        {"label":"S", "x":2.75, "y":3},
        {"label":"D", "x":3.75, "y":3},
        {"label":"F", "x":4.75, "y":3},
        {"label":"G", "x":5.75, "y":3},
        {"label":"H", "x":6.75, "y":3},
        {"label":"J", "x":7.75, "y":3},
        {"label":"K", "x":8.75, "y":3},
        {"label":"L", "x":9.75, "y":3},
        {"label":":", "x":10.75, "y":3},
        {"label":"\"", "x":11.75, "y":3},
        {"label":"Enter", "x":12.75, "y":3, "w":2.25},
        {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25},
        {"matrix": [4, 2], "x": 2.25, "y": 4},
        {"matrix": [4, 3], "x": 3.25, "y": 4},
        {"matrix": [4, 4], "x": 4.25, "y": 4},
        {"matrix": [4, 5], "x": 5.25, "y": 4},
        {"matrix": [4, 6], "x": 6.25, "y": 4},
        {"matrix": [4, 7], "x": 7.25, "y": 4},
        {"matrix": [4, 8], "x": 8.25, "y": 4},
        {"matrix": [4, 9], "x": 9.25, "y": 4},
        {"matrix": [4, 10], "x": 10.25, "y": 4},
        {"matrix": [4, 11], "x": 11.25, "y": 4},
        {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75},
        {"matrix": [4, 13], "x": 14, "y": 4},
        {"matrix": [4, 14], "x": 15, "y": 4},
        {"matrix": [4, 15], "x": 16, "y": 4},
        {"matrix": [4, 16], "x": 17, "y": 4},

        {"label":"4", "x":15, "y":3},
        {"label":"5", "x":16, "y":3},
        {"label":"6", "x":17, "y":3},
        {"label":"+", "x":18, "y":2, "h":2},

        {"label":"Shift", "x":0, "y":4, "w":2.25},
        {"label":"Z", "x":2.25, "y":4},
        {"label":"X", "x":3.25, "y":4},
        {"label":"C", "x":4.25, "y":4},
        {"label":"V", "x":5.25, "y":4},
        {"label":"B", "x":6.25, "y":4},
        {"label":"N", "x":7.25, "y":4},
        {"label":"M", "x":8.25, "y":4},
        {"label":"<", "x":9.25, "y":4},
        {"label":">", "x":10.25, "y":4},
        {"label":"?", "x":11.25, "y":4},
        {"label":"Shift", "x":12.25, "y":4, "w":1.75},
        {"label":"\u2191", "x":14, "y":4},

        {"label":"1", "x":15, "y":4},
        {"label":"2", "x":16, "y":4},
        {"label":"3", "x":17, "y":4},

        {"label":"Ctrl", "x":0, "y":5, "w":1.25},
        {"label":"Win", "x":1.25, "y":5, "w":1.25},
        {"label":"Alt", "x":2.5, "y":5, "w":1.25},
        {"x":3.75, "y":5, "w":6.25},
        {"label":"Alt", "x":10, "y":5, "w":1.5},
        {"label":"Ctrl", "x":11.5, "y":5, "w":1.5},
        {"label":"\u2190", "x":13, "y":5},
        {"label":"\u2193", "x":14, "y":5},
        {"label":"\u2192", "x":15, "y":5},

        {"label":"0", "x":16, "y":5},
        {"label":".", "x":17, "y":5},
        {"label":"Enter", "x":18, "y":4, "h":2}
        {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25},
        {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25},
        {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25},
        {"matrix": [5, 5], "x": 3.75, "y": 5, "w": 6.25},
        {"matrix": [5, 10], "x": 10, "y": 5, "w": 1.5},
        {"matrix": [5, 8], "x": 11.5, "y": 5, "w": 1.5},
        {"matrix": [5, 12], "x": 13, "y": 5},
        {"matrix": [5, 13], "x": 14, "y": 5},
        {"matrix": [5, 14], "x": 15, "y": 5},
        {"matrix": [5, 15], "x": 16, "y": 5},
        {"matrix": [5, 16], "x": 17, "y": 5},
        {"matrix": [4, 17], "x": 18, "y": 4, "h": 2}
      ]
    },
    "LAYOUT_96_iso": {
      "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":"F11", "x":11, "y":0},
        {"label":"F12", "x":12, "y":0},
        {"label":"Insert", "x":13, "y":0},
        {"label":"Delete", "x":14, "y":0},
        {"label":"Home", "x":15, "y":0},
        {"label":"End", "x":16, "y":0},
        {"label":"PgUp", "x":17, "y":0},
        {"label":"PgDn", "x":18, "y":0},

        {"label":"~", "x":0, "y":1},
        {"label":"!", "x":1, "y":1},
        {"label":"\"", "x":2, "y":1},
        {"label":"\u00a3", "x":3, "y":1},
        {"label":"$", "x":4, "y":1},
        {"label":"%", "x":5, "y":1},
        {"label":"^", "x":6, "y":1},
        {"label":"&", "x":7, "y":1},
        {"label":"*", "x":8, "y":1},
        {"label":"(", "x":9, "y":1},
        {"label":")", "x":10, "y":1},
        {"label":"_", "x":11, "y":1},
        {"label":"+", "x":12, "y":1},
        {"label":"Backspace", "x":13, "y":1, "w":2},
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 13], "x": 13, "y": 0},
        {"matrix": [5, 6], "x": 14, "y": 0},
        {"matrix": [0, 14], "x": 15, "y": 0},
        {"matrix": [0, 15], "x": 16, "y": 0},
        {"matrix": [0, 16], "x": 17, "y": 0},
        {"matrix": [0, 17], "x": 18, "y": 0},

        {"label":"Num Lock", "x":15, "y":1},
        {"label":"/", "x":16, "y":1},
        {"label":"*", "x":17, "y":1},
        {"label":"-", "x":18, "y":1},
        {"matrix": [1, 0], "x": 0, "y": 1},
        {"matrix": [1, 1], "x": 1, "y": 1},
        {"matrix": [1, 2], "x": 2, "y": 1},
        {"matrix": [1, 3], "x": 3, "y": 1},
        {"matrix": [1, 4], "x": 4, "y": 1},
        {"matrix": [1, 5], "x": 5, "y": 1},
        {"matrix": [1, 6], "x": 6, "y": 1},
        {"matrix": [1, 7], "x": 7, "y": 1},
        {"matrix": [1, 8], "x": 8, "y": 1},
        {"matrix": [1, 9], "x": 9, "y": 1},
        {"matrix": [1, 10], "x": 10, "y": 1},
        {"matrix": [1, 11], "x": 11, "y": 1},
        {"matrix": [1, 12], "x": 12, "y": 1},
        {"matrix": [1, 13], "x": 13, "y": 1, "w": 2},
        {"matrix": [1, 14], "x": 15, "y": 1},
        {"matrix": [1, 15], "x": 16, "y": 1},
        {"matrix": [1, 16], "x": 17, "y": 1},
        {"matrix": [1, 17], "x": 18, "y": 1},

        {"label":"Tab", "x":0, "y":2, "w":1.5},
        {"label":"Q", "x":1.5, "y":2},
        {"label":"W", "x":2.5, "y":2},
        {"label":"E", "x":3.5, "y":2},
        {"label":"R", "x":4.5, "y":2},
        {"label":"T", "x":5.5, "y":2},
        {"label":"Y", "x":6.5, "y":2},
        {"label":"U", "x":7.5, "y":2},
        {"label":"I", "x":8.5, "y":2},
        {"label":"O", "x":9.5, "y":2},
        {"label":"P", "x":10.5, "y":2},
        {"label":"{", "x":11.5, "y":2},
        {"label":"}", "x":12.5, "y":2},
        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
        {"matrix": [2, 1], "x": 1.5, "y": 2},
        {"matrix": [2, 2], "x": 2.5, "y": 2},
        {"matrix": [2, 3], "x": 3.5, "y": 2},
        {"matrix": [2, 4], "x": 4.5, "y": 2},
        {"matrix": [2, 5], "x": 5.5, "y": 2},
        {"matrix": [2, 6], "x": 6.5, "y": 2},
        {"matrix": [2, 7], "x": 7.5, "y": 2},
        {"matrix": [2, 8], "x": 8.5, "y": 2},
        {"matrix": [2, 9], "x": 9.5, "y": 2},
        {"matrix": [2, 10], "x": 10.5, "y": 2},
        {"matrix": [2, 11], "x": 11.5, "y": 2},
        {"matrix": [2, 12], "x": 12.5, "y": 2},
        {"matrix": [2, 14], "x": 15, "y": 2},
        {"matrix": [2, 15], "x": 16, "y": 2},
        {"matrix": [2, 16], "x": 17, "y": 2},

        {"label":"7", "x":15, "y":2},
        {"label":"8", "x":16, "y":2},
        {"label":"9", "x":17, "y":2},
        {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75},
        {"matrix": [3, 1], "x": 1.75, "y": 3},
        {"matrix": [3, 2], "x": 2.75, "y": 3},
        {"matrix": [3, 3], "x": 3.75, "y": 3},
        {"matrix": [3, 4], "x": 4.75, "y": 3},
        {"matrix": [3, 5], "x": 5.75, "y": 3},
        {"matrix": [3, 6], "x": 6.75, "y": 3},
        {"matrix": [3, 7], "x": 7.75, "y": 3},
        {"matrix": [3, 8], "x": 8.75, "y": 3},
        {"matrix": [3, 9], "x": 9.75, "y": 3},
        {"matrix": [3, 10], "x": 10.75, "y": 3},
        {"matrix": [3, 11], "x": 11.75, "y": 3},
        {"matrix": [3, 13], "x": 12.75, "y": 3},
        {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25, "h": 2},
        {"matrix": [3, 14], "x": 15, "y": 3},
        {"matrix": [3, 15], "x": 16, "y": 3},
        {"matrix": [3, 16], "x": 17, "y": 3},
        {"matrix": [2, 17], "x": 18, "y": 2, "h": 2},

        {"label":"Caps Lock", "x":0, "y":3, "w":1.75},
        {"label":"A", "x":1.75, "y":3},
        {"label":"S", "x":2.75, "y":3},
        {"label":"D", "x":3.75, "y":3},
        {"label":"F", "x":4.75, "y":3},
        {"label":"G", "x":5.75, "y":3},
        {"label":"H", "x":6.75, "y":3},
        {"label":"J", "x":7.75, "y":3},
        {"label":"K", "x":8.75, "y":3},
        {"label":"L", "x":9.75, "y":3},
        {"label":":", "x":10.75, "y":3},
        {"label":"@", "x":11.75, "y":3},
        {"label":"~", "x":12.75, "y":3},
        {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2},
        {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
        {"matrix": [4, 1], "x": 1.25, "y": 4},
        {"matrix": [4, 2], "x": 2.25, "y": 4},
        {"matrix": [4, 3], "x": 3.25, "y": 4},
        {"matrix": [4, 4], "x": 4.25, "y": 4},
        {"matrix": [4, 5], "x": 5.25, "y": 4},
        {"matrix": [4, 6], "x": 6.25, "y": 4},
        {"matrix": [4, 7], "x": 7.25, "y": 4},
        {"matrix": [4, 8], "x": 8.25, "y": 4},
        {"matrix": [4, 9], "x": 9.25, "y": 4},
        {"matrix": [4, 10], "x": 10.25, "y": 4},
        {"matrix": [4, 11], "x": 11.25, "y": 4},
        {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75},
        {"matrix": [4, 13], "x": 14, "y": 4},
        {"matrix": [4, 14], "x": 15, "y": 4},
        {"matrix": [4, 15], "x": 16, "y": 4},
        {"matrix": [4, 16], "x": 17, "y": 4},

        {"label":"4", "x":15, "y":3},
        {"label":"5", "x":16, "y":3},
        {"label":"6", "x":17, "y":3},
        {"label":"+", "x":18, "y":2, "h":2},

        {"label":"Shift", "x":0, "y":4, "w":1.25},
        {"label":"|", "x":1.25, "y":4},
        {"label":"Z", "x":2.25, "y":4},
        {"label":"X", "x":3.25, "y":4},
        {"label":"C", "x":4.25, "y":4},
        {"label":"V", "x":5.25, "y":4},
        {"label":"B", "x":6.25, "y":4},
        {"label":"N", "x":7.25, "y":4},
        {"label":"M", "x":8.25, "y":4},
        {"label":"<", "x":9.25, "y":4},
        {"label":">", "x":10.25, "y":4},
        {"label":"?", "x":11.25, "y":4},
        {"label":"Shift", "x":12.25, "y":4, "w":1.75},
        {"label":"\u2191", "x":14, "y":4},

        {"label":"1", "x":15, "y":4},
        {"label":"2", "x":16, "y":4},
        {"label":"3", "x":17, "y":4},

        {"label":"Ctrl", "x":0, "y":5, "w":1.25},
        {"label":"Win", "x":1.25, "y":5, "w":1.25},
        {"label":"Alt", "x":2.5, "y":5, "w":1.25},
        {"x":3.75, "y":5, "w":6.25},
        {"label":"Alt", "x":10, "y":5, "w":1.5},
        {"label":"Ctrl", "x":11.5, "y":5, "w":1.5},
        {"label":"\u2190", "x":13, "y":5},
        {"label":"\u2193", "x":14, "y":5},
        {"label":"\u2192", "x":15, "y":5},

        {"label":"0", "x":16, "y":5},
        {"label":".", "x":17, "y":5},
        {"label":"Enter", "x":18, "y":4, "h":2}
        {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25},
        {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25},
        {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25},
        {"matrix": [5, 5], "x": 3.75, "y": 5, "w": 6.25},
        {"matrix": [5, 10], "x": 10, "y": 5, "w": 1.5},
        {"matrix": [5, 8], "x": 11.5, "y": 5, "w": 1.5},
        {"matrix": [5, 12], "x": 13, "y": 5},
        {"matrix": [5, 13], "x": 14, "y": 5},
        {"matrix": [5, 14], "x": 15, "y": 5},
        {"matrix": [5, 15], "x": 16, "y": 5},
        {"matrix": [5, 16], "x": 17, "y": 5},
        {"matrix": [4, 17], "x": 18, "y": 4, "h": 2}
      ]
    },
    "LAYOUT_all": {
      "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":"F11", "x":11, "y":0},
        {"label":"F12", "x":12, "y":0},
        {"label":"Insert", "x":13, "y":0},
        {"label":"Delete", "x":14, "y":0},
        {"label":"Home", "x":15, "y":0},
        {"label":"End", "x":16, "y":0},
        {"label":"PgUp", "x":17, "y":0},
        {"label":"PgDn", "x":18, "y":0},

        {"label":"~", "x":0, "y":1},
        {"label":"!", "x":1, "y":1},
        {"label":"@", "x":2, "y":1},
        {"label":"#", "x":3, "y":1},
        {"label":"$", "x":4, "y":1},
        {"label":"%", "x":5, "y":1},
        {"label":"^", "x":6, "y":1},
        {"label":"&", "x":7, "y":1},
        {"label":"*", "x":8, "y":1},
        {"label":"(", "x":9, "y":1},
        {"label":")", "x":10, "y":1},
        {"label":"_", "x":11, "y":1},
        {"label":"+", "x":12, "y":1},
        {"label":"Backspace", "x":13, "y":1},
        {"label":"Backspace", "x":14, "y":1},
        {"label":"Num Lock", "x":15, "y":1},
        {"label":"/", "x":16, "y":1},
        {"label":"*", "x":17, "y":1},
        {"label":"-", "x":18, "y":1},
        {"matrix": [0, 0], "x": 0, "y": 0},
        {"matrix": [0, 1], "x": 1, "y": 0},
        {"matrix": [0, 2], "x": 2, "y": 0},
        {"matrix": [0, 3], "x": 3, "y": 0},
        {"matrix": [0, 4], "x": 4, "y": 0},
        {"matrix": [0, 5], "x": 5, "y": 0},
        {"matrix": [0, 6], "x": 6, "y": 0},
        {"matrix": [0, 7], "x": 7, "y": 0},
        {"matrix": [0, 8], "x": 8, "y": 0},
        {"matrix": [0, 9], "x": 9, "y": 0},
        {"matrix": [0, 10], "x": 10, "y": 0},
        {"matrix": [0, 11], "x": 11, "y": 0},
        {"matrix": [0, 12], "x": 12, "y": 0},
        {"matrix": [0, 13], "x": 13, "y": 0},
        {"matrix": [5, 6], "x": 14, "y": 0},
        {"matrix": [0, 14], "x": 15, "y": 0},
        {"matrix": [0, 15], "x": 16, "y": 0},
        {"matrix": [0, 16], "x": 17, "y": 0},
        {"matrix": [0, 17], "x": 18, "y": 0},

        {"label":"Tab", "x":0, "y":2, "w":1.5},
        {"label":"Q", "x":1.5, "y":2},
        {"label":"W", "x":2.5, "y":2},
        {"label":"E", "x":3.5, "y":2},
        {"label":"R", "x":4.5, "y":2},
        {"label":"T", "x":5.5, "y":2},
        {"label":"Y", "x":6.5, "y":2},
        {"label":"U", "x":7.5, "y":2},
        {"label":"I", "x":8.5, "y":2},
        {"label":"O", "x":9.5, "y":2},
        {"label":"P", "x":10.5, "y":2},
        {"label":"{", "x":11.5, "y":2},
        {"label":"}", "x":12.5, "y":2},
        {"label":"|", "x":13.5, "y":2, "w":1.5},
        {"label":"7", "x":15, "y":2},
        {"label":"8", "x":16, "y":2},
        {"label":"9", "x":17, "y":2},
        {"label":"+", "x":18, "y":2},
        {"matrix": [1, 0], "x": 0, "y": 1},
        {"matrix": [1, 1], "x": 1, "y": 1},
        {"matrix": [1, 2], "x": 2, "y": 1},
        {"matrix": [1, 3], "x": 3, "y": 1},
        {"matrix": [1, 4], "x": 4, "y": 1},
        {"matrix": [1, 5], "x": 5, "y": 1},
        {"matrix": [1, 6], "x": 6, "y": 1},
        {"matrix": [1, 7], "x": 7, "y": 1},
        {"matrix": [1, 8], "x": 8, "y": 1},
        {"matrix": [1, 9], "x": 9, "y": 1},
        {"matrix": [1, 10], "x": 10, "y": 1},
        {"matrix": [1, 11], "x": 11, "y": 1},
        {"matrix": [1, 12], "x": 12, "y": 1},
        {"matrix": [1, 13], "x": 13, "y": 1},
        {"matrix": [5, 3], "x": 14, "y": 1},
        {"matrix": [1, 14], "x": 15, "y": 1},
        {"matrix": [1, 15], "x": 16, "y": 1},
        {"matrix": [1, 16], "x": 17, "y": 1},
        {"matrix": [1, 17], "x": 18, "y": 1},

        {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
        {"matrix": [2, 1], "x": 1.5, "y": 2},
        {"matrix": [2, 2], "x": 2.5, "y": 2},
        {"matrix": [2, 3], "x": 3.5, "y": 2},
        {"matrix": [2, 4], "x": 4.5, "y": 2},
        {"matrix": [2, 5], "x": 5.5, "y": 2},
        {"matrix": [2, 6], "x": 6.5, "y": 2},
        {"matrix": [2, 7], "x": 7.5, "y": 2},
        {"matrix": [2, 8], "x": 8.5, "y": 2},
        {"matrix": [2, 9], "x": 9.5, "y": 2},
        {"matrix": [2, 10], "x": 10.5, "y": 2},
        {"matrix": [2, 11], "x": 11.5, "y": 2},
        {"matrix": [2, 12], "x": 12.5, "y": 2},
        {"matrix": [2, 13], "x": 13.5, "y": 2, "w": 1.5},
        {"matrix": [2, 14], "x": 15, "y": 2},
        {"matrix": [2, 15], "x": 16, "y": 2},
        {"matrix": [2, 16], "x": 17, "y": 2},
        {"matrix": [2, 17], "x": 18, "y": 2},

        {"label":"Caps Lock", "x":0, "y":3, "w":1.75},
        {"label":"A", "x":1.75, "y":3},
        {"label":"S", "x":2.75, "y":3},
        {"label":"D", "x":3.75, "y":3},
        {"label":"F", "x":4.75, "y":3},
        {"label":"G", "x":5.75, "y":3},
        {"label":"H", "x":6.75, "y":3},
        {"label":"J", "x":7.75, "y":3},
        {"label":"K", "x":8.75, "y":3},
        {"label":"L", "x":9.75, "y":3},
        {"label":":", "x":10.75, "y":3},
        {"label":"\"", "x":11.75, "y":3},
        {"label":"Enter", "x":12.75, "y":3},
        {"label":"Enter", "x":13.75, "y":3, "w":1.25},
        {"label":"4", "x":15, "y":3},
        {"label":"5", "x":16, "y":3},
        {"label":"6", "x":17, "y":3},
        {"label":"+", "x":18, "y":3},
        {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75},
        {"matrix": [3, 1], "x": 1.75, "y": 3},
        {"matrix": [3, 2], "x": 2.75, "y": 3},
        {"matrix": [3, 3], "x": 3.75, "y": 3},
        {"matrix": [3, 4], "x": 4.75, "y": 3},
        {"matrix": [3, 5], "x": 5.75, "y": 3},
        {"matrix": [3, 6], "x": 6.75, "y": 3},
        {"matrix": [3, 7], "x": 7.75, "y": 3},
        {"matrix": [3, 8], "x": 8.75, "y": 3},
        {"matrix": [3, 9], "x": 9.75, "y": 3},
        {"matrix": [3, 10], "x": 10.75, "y": 3},
        {"matrix": [3, 11], "x": 11.75, "y": 3},
        {"matrix": [3, 12], "x": 12.75, "y": 3},
        {"matrix": [3, 13], "x": 13.75, "y": 3, "w": 1.25},
        {"matrix": [3, 14], "x": 15, "y": 3},
        {"matrix": [3, 15], "x": 16, "y": 3},
        {"matrix": [3, 16], "x": 17, "y": 3},
        {"matrix": [3, 17], "x": 18, "y": 3},

        {"label":"Shift", "x":0, "y":4, "w":1.25},
        {"label":"Shift", "x":1.25, "y":4},
        {"label":"Z", "x":2.25, "y":4},
        {"label":"X", "x":3.25, "y":4},
        {"label":"C", "x":4.25, "y":4},
        {"label":"V", "x":5.25, "y":4},
        {"label":"B", "x":6.25, "y":4},
        {"label":"N", "x":7.25, "y":4},
        {"label":"M", "x":8.25, "y":4},
        {"label":"<", "x":9.25, "y":4},
        {"label":">", "x":10.25, "y":4},
        {"label":"?", "x":11.25, "y":4},
        {"label":"Shift", "x":12.25, "y":4, "w":1.75},
        {"label":"\u2191", "x":14, "y":4},
        {"label":"1", "x":15, "y":4},
        {"label":"2", "x":16, "y":4},
        {"label":"3", "x":17, "y":4},
        {"label":"Enter", "x":18, "y":4},
        {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
        {"matrix": [4, 1], "x": 1.25, "y": 4},
        {"matrix": [4, 2], "x": 2.25, "y": 4},
        {"matrix": [4, 3], "x": 3.25, "y": 4},
        {"matrix": [4, 4], "x": 4.25, "y": 4},
        {"matrix": [4, 5], "x": 5.25, "y": 4},
        {"matrix": [4, 6], "x": 6.25, "y": 4},
        {"matrix": [4, 7], "x": 7.25, "y": 4},
        {"matrix": [4, 8], "x": 8.25, "y": 4},
        {"matrix": [4, 9], "x": 9.25, "y": 4},
        {"matrix": [4, 10], "x": 10.25, "y": 4},
        {"matrix": [4, 11], "x": 11.25, "y": 4},
        {"matrix": [4, 12], "x": 12.25, "y": 4, "w": 1.75},
        {"matrix": [4, 13], "x": 14, "y": 4},
        {"matrix": [4, 14], "x": 15, "y": 4},
        {"matrix": [4, 15], "x": 16, "y": 4},
        {"matrix": [4, 16], "x": 17, "y": 4},
        {"matrix": [4, 17], "x": 18, "y": 4},

        {"label":"Ctrl", "x":0, "y":5, "w":1.25},
        {"label":"Win", "x":1.25, "y":5, "w":1.25},
        {"label":"Alt", "x":2.5, "y":5, "w":1.25},
        {"x":3.75, "y":5, "w":6.25},
        {"label":"Alt", "x":10, "y":5, "w":1.5},
        {"label":"Ctrl", "x":11.5, "y":5, "w":1.5},
        {"label":"\u2190", "x":13, "y":5},
        {"label":"\u2193", "x":14, "y":5},
        {"label":"\u2192", "x":15, "y":5},
        {"label":"0", "x":16, "y":5},
        {"label":".", "x":17, "y":5},
        {"label":"Enter", "x":18, "y":5}
        {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25},
        {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25},
        {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25},
        {"matrix": [5, 5], "x": 3.75, "y": 5, "w": 6.25},
        {"matrix": [5, 10], "x": 10, "y": 5, "w": 1.5},
        {"matrix": [5, 8], "x": 11.5, "y": 5, "w": 1.5},
        {"matrix": [5, 12], "x": 13, "y": 5},
        {"matrix": [5, 13], "x": 14, "y": 5},
        {"matrix": [5, 14], "x": 15, "y": 5},
        {"matrix": [5, 15], "x": 16, "y": 5},
        {"matrix": [5, 16], "x": 17, "y": 5},
        {"matrix": [5, 17], "x": 18, "y": 5}
      ]
    }
  }

D keyboards/xiudi/xd96/xd96.h => keyboards/xiudi/xd96/xd96.h +0 -75
@@ 1,75 0,0 @@
/* Copyright 2019
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#pragma once

#include "quantum.h"
#define ____ KC_NO

/* This a shortcut to help you visually see your layout.
 *
 * The first section contains all of the arguments representing the physical
 * layout of the board and position of the keys.
 *
 * The second converts the arguments into a two-dimensional array which
 * represents the switch matrix.
 */
#define LAYOUT_96_ansi( \
    K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, K117, K118, K119, \
    K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214,       K216, K217, K218, K219, \
    K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314,       K316, K317, K318,       \
    K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412,       K414,       K416, K417, K418, K419, \
    K501,       K503, K504, K505, K506, K507, K508, K509, K510, K511, K512, K513,       K515, K516, K517, K518,       \
    K601, K602, K603,                       K607,               K611, K612,       K614, K615, K616, K617, K618, K619  \
) { \
    { K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K116, K117, K118, K119 }, \
    { K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K216, K217, K218, K219 }, \
    { K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, K316, K317, K318, K419 }, \
    { K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, ____, K414, K416, K417, K418, ____ }, \
    { K501, ____, K503, K504, K505, K506, K507, K508, K509, K510, K511, K512, K513, K515, K516, K517, K518, K619 }, \
    { K601, K602, K603, ____, ____, K607, K115, ____, K612, ____, K611, K612, K614, K615, K616, K617, K618, ____ }  \
}

#define LAYOUT_96_iso( \
    K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, K117, K118, K119, \
    K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214,       K216, K217, K218, K219, \
    K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313,             K316, K317, K318,       \
    K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412,       K414, K415, K416, K417, K418, K419, \
    K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K512, K513,       K515, K516, K517, K518,       \
    K601, K602, K603,                       K607,               K611, K612,       K614, K615, K616, K617, K618, K619  \
) { \
    { K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K116, K117, K118, K119 }, \
    { K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K216, K217, K218, K219 }, \
    { K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, ____, K316, K317, K318, K419 }, \
    { K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K414, K415, K416, K417, K418, ____ }, \
    { K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K512, K513, K515, K516, K517, K518, K619 }, \
    { K601, K602, K603, ____, ____, K607, K115, ____, K612, ____, K611, K612, K614, K615, K616, K617, K618, ____ }  \
}

#define LAYOUT_all( \
    K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, K117, K118, K119, \
    K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, K217, K218, K219, \
    K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314,       K316, K317, K318, K319, \
    K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412,       K414, K415, K416, K417, K418, K419, \
    K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K512, K513,       K515, K516, K517, K518, K519, \
    K601, K602, K603,                       K607,               K611, K612,       K614, K615, K616, K617, K618, K619  \
) { \
    { K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K116, K117, K118, K119 }, \
    { K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K216, K217, K218, K219 }, \
    { K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, K316, K317, K318, K319 }, \
    { K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K414, K415, K416, K417, K418, K419 }, \
    { K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K512, K513, K515, K516, K517, K518, K519 }, \
    { K601, K602, K603, K215, ____, K607, K115, ____, K612, K215, K611, ____, K614, K615, K616, K617, K618, K619 }  \
}