~ruther/qmk_firmware

7c09b2667b49839d6c1a27133751d43642149a84 — James Young 4 years ago 0c1341d
Nix Studio OXALYS80 Refactor (#14473)

* update grid alignment of keycodes

* update key assignments on via keymap

A seemingly-misplaced key assignment on Layers 1 through 3 of the via keymap led to keys being off by one in comparison to the default keymap.

* switch Backslash and Backspace on via keymap base layer

Matches the via keymap's key mapping to that of the default keymap.

* use QMK 3-character notation in oxalys80.h

* add matrix diagram; remove Planck reference

* add LAYOUT_tkl_ansi and LAYOUT_tkl_ansi_wkl layout macros

* add LAYOUT_tkl_ansi_tsangan macro

* add ISO layouts

Add LAYOUT_tkl_iso, LAYOUT_tkl_iso_tsangan, and LAYOUT_tkl_iso_wkl macros.

* enable Community Layouts support

* tidy up rules.mk

* readme tidy-up
M keyboards/nix_studio/oxalys80/info.json => keyboards/nix_studio/oxalys80/info.json +382 -0
@@ 198,6 198,101 @@
                {"label":"\u2192", "x":17.25, "y":5.5}
            ]
        },
        "LAYOUT_tkl_ansi_tsangan": {
            "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.5, "y":0},
                {"label":"F6", "x":7.5, "y":0},
                {"label":"F7", "x":8.5, "y":0},
                {"label":"F8", "x":9.5, "y":0},
                {"label":"F9", "x":11, "y":0},
                {"label":"F10", "x":12, "y":0},
                {"label":"F11", "x":13, "y":0},
                {"label":"F12", "x":14, "y":0},
                {"label":"PrtSc", "x":15.25, "y":0},
                {"label":"Scroll Lock", "x":16.25, "y":0},
                {"label":"Pause", "x":17.25, "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":"Bksp", "x":13, "y":1.5, "w":2},
                {"label":"Insert", "x":15.25, "y":1.5},
                {"label":"Home", "x":16.25, "y":1.5},
                {"label":"PgUp", "x":17.25, "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":"|", "x":13.5, "y":2.5, "w":1.5},
                {"label":"Delete", "x":15.25, "y":2.5},
                {"label":"End", "x":16.25, "y":2.5},
                {"label":"PgDn", "x":17.25, "y":2.5},

                {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75},
                {"label":"A", "x":1.75, "y":3.5},
                {"label":"S", "x":2.75, "y":3.5},
                {"label":"D", "x":3.75, "y":3.5},
                {"label":"F", "x":4.75, "y":3.5},
                {"label":"G", "x":5.75, "y":3.5},
                {"label":"H", "x":6.75, "y":3.5},
                {"label":"J", "x":7.75, "y":3.5},
                {"label":"K", "x":8.75, "y":3.5},
                {"label":"L", "x":9.75, "y":3.5},
                {"label":":", "x":10.75, "y":3.5},
                {"label":"\"", "x":11.75, "y":3.5},
                {"label":"Enter", "x":12.75, "y":3.5, "w":2.25},

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

                {"label":"Ctrl", "x":0, "y":5.5, "w":1.5},
                {"label":"Win", "x":1.5, "y":5.5},
                {"label":"Alt", "x":2.5, "y":5.5, "w":1.5},
                { "x":4, "y":5.5, "w":7},
                {"label":"Win", "x":11, "y":5.5, "w":1.5},
                {"label":"Menu", "x":12.5, "y":5.5},
                {"label":"Ctrl", "x":13.5, "y":5.5, "w":1.5},
                {"label":"\u2190", "x":15.25, "y":5.5},
                {"label":"\u2193", "x":16.25, "y":5.5},
                {"label":"\u2192", "x":17.25, "y":5.5}
            ]
        },
        "LAYOUT_tkl_ansi_wkl": {
            "layout": [
                {"label":"Esc", "x":0, "y":0},


@@ 290,6 385,293 @@
                {"label":"\u2193", "x":16.25, "y":5.5},
                {"label":"\u2192", "x":17.25, "y":5.5}
            ]
        },
        "LAYOUT_tkl_iso": {
            "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.5, "y":0},
                {"label":"F6", "x":7.5, "y":0},
                {"label":"F7", "x":8.5, "y":0},
                {"label":"F8", "x":9.5, "y":0},
                {"label":"F9", "x":11, "y":0},
                {"label":"F10", "x":12, "y":0},
                {"label":"F11", "x":13, "y":0},
                {"label":"F12", "x":14, "y":0},
                {"label":"PrtSc", "x":15.25, "y":0},
                {"label":"Scroll Lock", "x":16.25, "y":0},
                {"label":"Pause", "x":17.25, "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":"Bksp", "x":13, "y":1.5, "w":2},
                {"label":"Insert", "x":15.25, "y":1.5},
                {"label":"Home", "x":16.25, "y":1.5},
                {"label":"PgUp", "x":17.25, "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":"Delete", "x":15.25, "y":2.5},
                {"label":"End", "x":16.25, "y":2.5},
                {"label":"PgDn", "x":17.25, "y":2.5},

                {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75},
                {"label":"A", "x":1.75, "y":3.5},
                {"label":"S", "x":2.75, "y":3.5},
                {"label":"D", "x":3.75, "y":3.5},
                {"label":"F", "x":4.75, "y":3.5},
                {"label":"G", "x":5.75, "y":3.5},
                {"label":"H", "x":6.75, "y":3.5},
                {"label":"J", "x":7.75, "y":3.5},
                {"label":"K", "x":8.75, "y":3.5},
                {"label":"L", "x":9.75, "y":3.5},
                {"label":":", "x":10.75, "y":3.5},
                {"label":"\"", "x":11.75, "y":3.5},
                {"label":"~", "x":12.75, "y":3.5},
                {"label":"Enter", "x":13.75, "y":2.5, "w":1.25, "h":2},

                {"label":"Shift", "x":0, "y":4.5, "w":1.25},
                {"label":"NUBS", "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":"\u2191", "x":16.25, "y":4.5},

                {"label":"Ctrl", "x":0, "y":5.5, "w":1.25},
                {"label":"Win", "x":1.25, "y":5.5, "w":1.25},
                {"label":"Alt", "x":2.5, "y":5.5, "w":1.25},
                {"label":"Space", "x":3.75, "y":5.5, "w":6.25},
                {"label":"Alt", "x":10, "y":5.5, "w":1.25},
                {"label":"Win", "x":11.25, "y":5.5, "w":1.25},
                {"label":"Menu", "x":12.5, "y":5.5, "w":1.25},
                {"label":"Ctrl", "x":13.75, "y":5.5, "w":1.25},
                {"label":"\u2190", "x":15.25, "y":5.5},
                {"label":"\u2193", "x":16.25, "y":5.5},
                {"label":"\u2192", "x":17.25, "y":5.5}
            ]
        },
        "LAYOUT_tkl_iso_tsangan": {
            "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.5, "y":0},
                {"label":"F6", "x":7.5, "y":0},
                {"label":"F7", "x":8.5, "y":0},
                {"label":"F8", "x":9.5, "y":0},
                {"label":"F9", "x":11, "y":0},
                {"label":"F10", "x":12, "y":0},
                {"label":"F11", "x":13, "y":0},
                {"label":"F12", "x":14, "y":0},
                {"label":"PrtSc", "x":15.25, "y":0},
                {"label":"Scroll Lock", "x":16.25, "y":0},
                {"label":"Pause", "x":17.25, "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":"Bksp", "x":13, "y":1.5, "w":2},
                {"label":"Insert", "x":15.25, "y":1.5},
                {"label":"Home", "x":16.25, "y":1.5},
                {"label":"PgUp", "x":17.25, "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":"Delete", "x":15.25, "y":2.5},
                {"label":"End", "x":16.25, "y":2.5},
                {"label":"PgDn", "x":17.25, "y":2.5},

                {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75},
                {"label":"A", "x":1.75, "y":3.5},
                {"label":"S", "x":2.75, "y":3.5},
                {"label":"D", "x":3.75, "y":3.5},
                {"label":"F", "x":4.75, "y":3.5},
                {"label":"G", "x":5.75, "y":3.5},
                {"label":"H", "x":6.75, "y":3.5},
                {"label":"J", "x":7.75, "y":3.5},
                {"label":"K", "x":8.75, "y":3.5},
                {"label":"L", "x":9.75, "y":3.5},
                {"label":":", "x":10.75, "y":3.5},
                {"label":"\"", "x":11.75, "y":3.5},
                {"label":"~", "x":12.75, "y":3.5},
                {"label":"Enter", "x":13.75, "y":2.5, "w":1.25, "h":2},

                {"label":"Shift", "x":0, "y":4.5, "w":1.25},
                {"label":"NUBS", "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":"\u2191", "x":16.25, "y":4.5},

                {"label":"Ctrl", "x":0, "y":5.5, "w":1.5},
                {"label":"Win", "x":1.5, "y":5.5},
                {"label":"Alt", "x":2.5, "y":5.5, "w":1.5},
                {"label":"Space", "x":4, "y":5.5, "w":7},
                {"label":"Win", "x":11, "y":5.5, "w":1.5},
                {"label":"Menu", "x":12.5, "y":5.5},
                {"label":"Ctrl", "x":13.5, "y":5.5, "w":1.5},
                {"label":"\u2190", "x":15.25, "y":5.5},
                {"label":"\u2193", "x":16.25, "y":5.5},
                {"label":"\u2192", "x":17.25, "y":5.5}
            ]
        },
        "LAYOUT_tkl_iso_wkl": {
            "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.5, "y":0},
                {"label":"F6", "x":7.5, "y":0},
                {"label":"F7", "x":8.5, "y":0},
                {"label":"F8", "x":9.5, "y":0},
                {"label":"F9", "x":11, "y":0},
                {"label":"F10", "x":12, "y":0},
                {"label":"F11", "x":13, "y":0},
                {"label":"F12", "x":14, "y":0},
                {"label":"PrtSc", "x":15.25, "y":0},
                {"label":"Scroll Lock", "x":16.25, "y":0},
                {"label":"Pause", "x":17.25, "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":"Bksp", "x":13, "y":1.5, "w":2},
                {"label":"Insert", "x":15.25, "y":1.5},
                {"label":"Home", "x":16.25, "y":1.5},
                {"label":"PgUp", "x":17.25, "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":"Delete", "x":15.25, "y":2.5},
                {"label":"End", "x":16.25, "y":2.5},
                {"label":"PgDn", "x":17.25, "y":2.5},

                {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75},
                {"label":"A", "x":1.75, "y":3.5},
                {"label":"S", "x":2.75, "y":3.5},
                {"label":"D", "x":3.75, "y":3.5},
                {"label":"F", "x":4.75, "y":3.5},
                {"label":"G", "x":5.75, "y":3.5},
                {"label":"H", "x":6.75, "y":3.5},
                {"label":"J", "x":7.75, "y":3.5},
                {"label":"K", "x":8.75, "y":3.5},
                {"label":"L", "x":9.75, "y":3.5},
                {"label":":", "x":10.75, "y":3.5},
                {"label":"\"", "x":11.75, "y":3.5},
                {"label":"~", "x":12.75, "y":3.5},
                {"label":"Enter", "x":13.75, "y":2.5, "w":1.25, "h":2},

                {"label":"Shift", "x":0, "y":4.5, "w":1.25},
                {"label":"NUBS", "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":"\u2191", "x":16.25, "y":4.5},

                {"label":"Ctrl", "x":0, "y":5.5, "w":1.5},
                {"label":"Alt", "x":2.5, "y":5.5, "w":1.5},
                {"label":"Space", "x":4, "y":5.5, "w":7},
                {"label":"Alt", "x":11, "y":5.5, "w":1.5},
                {"label":"Ctrl", "x":13.5, "y":5.5, "w":1.5},
                {"label":"\u2190", "x":15.25, "y":5.5},
                {"label":"\u2193", "x":16.25, "y":5.5},
                {"label":"\u2192", "x":17.25, "y":5.5}
            ]
        }
    }
}

M keyboards/nix_studio/oxalys80/keymaps/default/keymap.c => keyboards/nix_studio/oxalys80/keymaps/default/keymap.c +14 -14
@@ 17,20 17,20 @@

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  [0] = LAYOUT_all(
    KC_ESC,           KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,    KC_F10,     KC_F11,     KC_F12,                  KC_PSCR, KC_SLCK, KC_PAUS,
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,     KC_MINS,    KC_EQL,     KC_BSLS, KC_GRV,        KC_INS,  KC_HOME, KC_PGUP,
    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,     KC_LBRC,    KC_RBRC,    KC_BSPC,                 KC_DEL,  KC_END,  KC_PGDN,
    KC_CAPS, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN,  KC_QUOT,                KC_ENT,
    KC_LSFT, KC_NUBS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,   KC_SLSH,    KC_RSFT,    KC_TRNS,                          KC_UP,
    KC_LCTL, KC_LGUI, KC_LALT,                   KC_SPC,                                      KC_RALT,  MO(1),      KC_RGUI,      KC_RCTL,               KC_LEFT, KC_DOWN, KC_RGHT),
    [0] = LAYOUT_all(
        KC_ESC,           KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,              KC_PSCR, KC_SLCK, KC_PAUS,
        KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSLS, KC_GRV,     KC_INS,  KC_HOME, KC_PGUP,
        KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSPC,             KC_DEL,  KC_END,  KC_PGDN,
        KC_CAPS, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,          KC_ENT,
        KC_LSFT, KC_NUBS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_TRNS,                      KC_UP,
        KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC,                             KC_RALT, MO(1),   KC_RGUI, KC_RCTL,             KC_LEFT, KC_DOWN, KC_RGHT),

  [1] = LAYOUT_all(
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,          RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI,                        BL_TOGG, BL_DEC,  BL_INC,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,               KC_TRNS, KC_TRNS, KC_VOLU,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET,  KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                        KC_MPLY, KC_MNXT, KC_VOLD,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
    [1] = LAYOUT_all(
        KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI,             BL_TOGG, BL_DEC,  BL_INC,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_VOLU,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET,   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_MPLY, KC_MNXT, KC_VOLD,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                      KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS,                            KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_TRNS, KC_TRNS, KC_TRNS),

};

M keyboards/nix_studio/oxalys80/keymaps/via/keymap.c => keyboards/nix_studio/oxalys80/keymaps/via/keymap.c +28 -28
@@ 17,36 17,36 @@

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  [0] = LAYOUT_all(
    KC_ESC,           KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,    KC_F10,     KC_F11,     KC_F12,                  KC_PSCR, KC_SLCK, KC_PAUS,
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,     KC_MINS,    KC_EQL,     KC_BSPC, KC_GRV,         KC_INS,  KC_HOME, KC_PGUP,
    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,     KC_LBRC,    KC_RBRC,    KC_BSLS,                 KC_DEL,  KC_END,  KC_PGDN,
    KC_CAPS, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN,  KC_QUOT,                KC_ENT,
    KC_LSFT, KC_NUBS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,   KC_SLSH,    KC_RSFT,    KC_TRNS,                          KC_UP,
    KC_LCTL, KC_LGUI, KC_LALT,                   KC_SPC,                                      KC_RALT,  MO(1),      KC_RGUI,      KC_RCTL,               KC_LEFT, KC_DOWN, KC_RGHT),
    [0] = LAYOUT_all(
        KC_ESC,           KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,              KC_PSCR, KC_SLCK, KC_PAUS,
        KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSLS, KC_GRV,     KC_INS,  KC_HOME, KC_PGUP,
        KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSPC,             KC_DEL,  KC_END,  KC_PGDN,
        KC_CAPS, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,          KC_ENT,
        KC_LSFT, KC_NUBS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_TRNS,                      KC_UP,
        KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC,                             KC_RALT, MO(1),   KC_RGUI, KC_RCTL,             KC_LEFT, KC_DOWN, KC_RGHT),

  [1] = LAYOUT_all(
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,          RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI,                        BL_TOGG, BL_DEC,  BL_INC,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,               KC_TRNS, KC_TRNS, KC_VOLU, 
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET,  KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,                        KC_MPLY, KC_MNXT, KC_VOLD,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
    [1] = LAYOUT_all(
        KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI,             BL_TOGG, BL_DEC,  BL_INC,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_VOLU,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET,   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_MPLY, KC_MNXT, KC_VOLD,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                      KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS,                            KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_TRNS, KC_TRNS, KC_TRNS),

  [2] = LAYOUT_all(
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,          RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI,                        BL_TOGG, BL_DEC,  BL_INC,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,               KC_TRNS, KC_TRNS, KC_VOLU,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET,  KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,                        KC_MPLY, KC_MNXT, KC_VOLD,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
    [2] = LAYOUT_all(
        KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI,             BL_TOGG, BL_DEC,  BL_INC,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_VOLU,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET,   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_MPLY, KC_MNXT, KC_VOLD,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                      KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS,                            KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_TRNS, KC_TRNS, KC_TRNS),

  [3] = LAYOUT_all(
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,          RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI,                        BL_TOGG, BL_DEC,  BL_INC,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,               KC_TRNS, KC_TRNS, KC_VOLU,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET,  KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,                        KC_MPLY, KC_MNXT, KC_VOLD,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
    [3] = LAYOUT_all(
        KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI,             BL_TOGG, BL_DEC,  BL_INC,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_VOLU,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET,   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_MPLY, KC_MNXT, KC_VOLD,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                      KC_TRNS,
        KC_TRNS, KC_TRNS, KC_TRNS,                            KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_TRNS, KC_TRNS, KC_TRNS),

};

M keyboards/nix_studio/oxalys80/oxalys80.h => keyboards/nix_studio/oxalys80/oxalys80.h +175 -19
@@ 17,29 17,185 @@

#include "quantum.h"

#define ___ KC_NO

/* LAYOUT_all
 *              ┌───┐   ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
 *              │00 │   │01 │11 │02 │12 │ │03 │13 │04 │14 │ │05 │15 │06 │16 │ │07 │17 │08 │
 *              └───┘   └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘
 *              ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┐      ┌───────┐
 *              │20 │30 │21 │31 │22 │32 │23 │33 │24 │34 │25 │35 │26 │36 │66 │ │27 │37 │28 │      │36     │ 2u Backspace
 *              ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┤      └─┬─────┤
 *              │40   │50 │41 │51 │42 │52 │43 │53 │44 │54 │45 │55 │46 │56   │ │47 │57 │48 │        │     │
 *  2.25u       ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘     ┌──┴┐76  │ ISO Enter
 *  LShift      │60    │70 │61 │71 │62 │72 │63 │73 │64 │74 │65 │75 │76      │                   │56 │    │
 * ┌────────┐   ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤     ┌───┐       ┌─┴───┴────┤
 * │80      │   │80  │90 │81 │91 │82 │92 │83 │93 │84 │94 │85 │95 │86    │96 │     │97 │       │86        │ 2.75u RShift
 * └────────┘   ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤ ┌───┼───┼───┐   └──────────┘
 *              │A0  │B0  │A1  │A3                      │A5  │B5  │A6  │B6  │ │A7 │B7 │A8 │
 *              └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘
 *              ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
 *              │A0   │B0 │A1   │A3                         │B5   │A6 │B6   │ Tsangan
 *              └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
 *              ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
 *              │A0   │   │A1   │A3                         │B5   │   │B6   │ WKL
 *              └─────┘   └─────┴───────────────────────────┴─────┘   └─────┘
 */

// 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_all(\
	K000,       K001, K011, K002, K012,    K003, K013, K004, K014,    K005, K015, K006, K016,    K007, K017, K008,  \
	K020, K030, K021, K031, K022, K032, K023, K033, K024, K034, K025, K035, K026, K036,	K066,    K027, K037, K028,  \
	K040, K050, K041, K051, K042, K052, K043, K053, K044, K054, K045, K055, K046, K056,          K047, K057, K048,  \
	K060, K070, K061, K071, K062, K072, K063, K073, K064, K074, K065, K075,       K076,                             \
 	K080, K090, K081, K091, K082, K092, K083, K093, K084, K094, K085, K095, K086, K096,                K097,        \
	K100, K110, K101,                   K103,                   K105, K115, K106, K116,          K107, K117, K108   \
    K00,      K01, K11, K02, K12,   K03, K13, K04, K14,    K05, K15, K06, K16,   K07, K17, K08, \
    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36, K66,   K27, K37, K28, \
    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56,        K47, K57, K48, \
    K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75,      K76,                       \
    K80, K90, K81, K91, K82, K92, K83, K93, K84, K94, K85, K95, K86, K96,             K97,      \
    KA0, KB0, KA1,                KA3,                KA5, KB5, KA6, KB6,        KA7, KB7, KA8  \
) { \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \
    { ___, K11, K12, K13, K14, K15, K16, K17, ___ }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \
    { K30, K31, K32, K33, K34, K35, K36, K37, ___ }, \
    { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \
    { K50, K51, K52, K53, K54, K55, K56, K57, ___ }, \
    { K60, K61, K62, K63, K64, K65, K66, ___, ___ }, \
    { K70, K71, K72, K73, K74, K75, K76, ___, ___ }, \
    { K80, K81, K82, K83, K84, K85, K86, ___, ___ }, \
    { K90, K91, K92, K93, K94, K95, K96, K97, ___ }, \
    { KA0, KA1, ___, KA3, ___, KA5, KA6, KA7, KA8 }, \
    { KB0, ___, ___, ___, ___, KB5, KB6, KB7, ___ }  \
}

#define LAYOUT_tkl_ansi(\
    K00,      K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16,   K07, K17, K08, \
    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36,   K27, K37, K28, \
    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56,   K47, K57, K48, \
    K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75,      K76,                  \
    K80,      K81, K91, K82, K92, K83, K93, K84, K94, K85, K95,      K86,        K97,      \
    KA0, KB0, KA1,                KA3,                KA5, KB5, KA6, KB6,   KA7, KB7, KA8  \
) { \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \
    { ___, K11, K12, K13, K14, K15, K16, K17, ___ }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \
    { K30, K31, K32, K33, K34, K35, K36, K37, ___ }, \
    { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \
    { K50, K51, K52, K53, K54, K55, K56, K57, ___ }, \
    { K60, K61, K62, K63, K64, K65, ___, ___, ___ }, \
    { K70, K71, K72, K73, K74, K75, K76, ___, ___ }, \
    { K80, K81, K82, K83, K84, K85, K86, ___, ___ }, \
    { ___, K91, K92, K93, K94, K95, ___, K97, ___ }, \
    { KA0, KA1, ___, KA3, ___, KA5, KA6, KA7, KA8 }, \
    { KB0, ___, ___, ___, ___, KB5, KB6, KB7, ___ }  \
}

#define LAYOUT_tkl_ansi_tsangan(\
    K00,      K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16,   K07, K17, K08, \
    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36,   K27, K37, K28, \
    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56,   K47, K57, K48, \
    K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75,      K76,                  \
    K80,      K81, K91, K82, K92, K83, K93, K84, K94, K85, K95,      K86,        K97,      \
    KA0, KB0, KA1,                KA3,                     KB5, KA6, KB6,   KA7, KB7, KA8  \
) { \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \
    { ___, K11, K12, K13, K14, K15, K16, K17, ___ }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \
    { K30, K31, K32, K33, K34, K35, K36, K37, ___ }, \
    { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \
    { K50, K51, K52, K53, K54, K55, K56, K57, ___ }, \
    { K60, K61, K62, K63, K64, K65, ___, ___, ___ }, \
    { K70, K71, K72, K73, K74, K75, K76, ___, ___ }, \
    { K80, K81, K82, K83, K84, K85, K86, ___, ___ }, \
    { ___, K91, K92, K93, K94, K95, ___, K97, ___ }, \
    { KA0, KA1, ___, KA3, ___, ___, KA6, KA7, KA8 }, \
    { KB0, ___, ___, ___, ___, KB5, KB6, KB7, ___ }  \
}

#define LAYOUT_tkl_ansi_wkl(\
    K00,      K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16,   K07, K17, K08, \
    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36,   K27, K37, K28, \
    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56,   K47, K57, K48, \
    K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75,      K76,                  \
    K80,      K81, K91, K82, K92, K83, K93, K84, K94, K85, K95,      K86,        K97,      \
    KA0,      KA1,                KA3,                     KB5,      KB6,   KA7, KB7, KA8  \
) { \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \
    { ___, K11, K12, K13, K14, K15, K16, K17, ___ }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \
    { K30, K31, K32, K33, K34, K35, K36, K37, ___ }, \
    { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \
    { K50, K51, K52, K53, K54, K55, K56, K57, ___ }, \
    { K60, K61, K62, K63, K64, K65, ___, ___, ___ }, \
    { K70, K71, K72, K73, K74, K75, K76, ___, ___ }, \
    { K80, K81, K82, K83, K84, K85, K86, ___, ___ }, \
    { ___, K91, K92, K93, K94, K95, ___, K97, ___ }, \
    { KA0, KA1, ___, KA3, ___, ___, ___, KA7, KA8 }, \
    { ___, ___, ___, ___, ___, KB5, KB6, KB7, ___ }  \
}

#define LAYOUT_tkl_iso(\
    K00,      K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16,   K07, K17, K08, \
    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36,   K27, K37, K28, \
    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46,        K47, K57, K48, \
    K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K56, K76,                  \
    K80, K90, K81, K91, K82, K92, K83, K93, K84, K94, K85, K95,      K86,        K97,      \
    KA0, KB0, KA1,                KA3,                KA5, KB5, KA6, KB6,   KA7, KB7, KA8  \
) { \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \
    { ___, K11, K12, K13, K14, K15, K16, K17, ___ }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \
    { K30, K31, K32, K33, K34, K35, K36, K37, ___ }, \
    { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \
    { K50, K51, K52, K53, K54, K55, K56, K57, ___ }, \
    { K60, K61, K62, K63, K64, K65, ___, ___, ___ }, \
    { K70, K71, K72, K73, K74, K75, K76, ___, ___ }, \
    { K80, K81, K82, K83, K84, K85, K86, ___, ___ }, \
    { K90, K91, K92, K93, K94, K95, ___, K97, ___ }, \
    { KA0, KA1, ___, KA3, ___, KA5, KA6, KA7, KA8 }, \
    { KB0, ___, ___, ___, ___, KB5, KB6, KB7, ___ }  \
}

#define LAYOUT_tkl_iso_tsangan(\
    K00,      K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16,   K07, K17, K08, \
    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36,   K27, K37, K28, \
    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46,        K47, K57, K48, \
    K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K56, K76,                  \
    K80, K90, K81, K91, K82, K92, K83, K93, K84, K94, K85, K95,      K86,        K97,      \
    KA0, KB0, KA1,                KA3,                     KB5, KA6, KB6,   KA7, KB7, KA8  \
) { \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \
    { ___, K11, K12, K13, K14, K15, K16, K17, ___ }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \
    { K30, K31, K32, K33, K34, K35, K36, K37, ___ }, \
    { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \
    { K50, K51, K52, K53, K54, K55, K56, K57, ___ }, \
    { K60, K61, K62, K63, K64, K65, ___, ___, ___ }, \
    { K70, K71, K72, K73, K74, K75, K76, ___, ___ }, \
    { K80, K81, K82, K83, K84, K85, K86, ___, ___ }, \
    { K90, K91, K92, K93, K94, K95, ___, K97, ___ }, \
    { KA0, KA1, ___, KA3, ___, ___, KA6, KA7, KA8 }, \
    { KB0, ___, ___, ___, ___, KB5, KB6, KB7, ___ }  \
}

#define LAYOUT_tkl_iso_wkl(\
    K00,      K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16,   K07, K17, K08, \
    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36,   K27, K37, K28, \
    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46,        K47, K57, K48, \
    K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K56, K76,                  \
    K80, K90, K81, K91, K82, K92, K83, K93, K84, K94, K85, K95,      K86,        K97,      \
    KA0,      KA1,                KA3,                     KB5,      KB6,   KA7, KB7, KA8  \
) { \
	{ K000,  K001,  K002,  K003,  K004,  K005, K006,  K007,  K008 }, \
	{ KC_NO, K011,  K012,  K013,  K014,  K015,  K016,  K017,  KC_NO }, \
	{ K020,  K021,  K022,  K023,  K024,  K025,  K026,  K027,  K028 }, \
	{ K030,  K031,  K032,  K033,  K034,  K035,  K036,  K037,  KC_NO }, \
	{ K040,  K041,  K042,  K043,  K044,  K045,  K046,  K047, K048 }, \
	{ K050,  K051,  K052,  K053,  K054,  K055,  K056,  K057,  KC_NO }, \
	{ K060,  K061,  K062,  K063,  K064,  K065,  K066,  KC_NO, KC_NO }, \
	{ K070,  K071,  K072,  K073,  K074,  K075,  K076,  KC_NO, KC_NO }, \
	{ K080,  K081,  K082,  K083,  K084,  K085,  K086,  KC_NO, KC_NO }, \
	{ K090,  K091,  K092,  K093,  K094,  K095,  K096,  K097, KC_NO }, \
	{ K100,  K101,  KC_NO, K103, KC_NO, K105,  K106,  K107, K108 }, \
	{ K110,  KC_NO, KC_NO, KC_NO,  KC_NO, K115,  K116,  K117,  KC_NO }  \
    { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \
    { ___, K11, K12, K13, K14, K15, K16, K17, ___ }, \
    { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \
    { K30, K31, K32, K33, K34, K35, K36, K37, ___ }, \
    { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \
    { K50, K51, K52, K53, K54, K55, K56, K57, ___ }, \
    { K60, K61, K62, K63, K64, K65, ___, ___, ___ }, \
    { K70, K71, K72, K73, K74, K75, K76, ___, ___ }, \
    { K80, K81, K82, K83, K84, K85, K86, ___, ___ }, \
    { K90, K91, K92, K93, K94, K95, ___, K97, ___ }, \
    { KA0, KA1, ___, KA3, ___, ___, ___, KA7, KA8 }, \
    { ___, ___, ___, ___, ___, KB5, KB6, KB7, ___ }  \
}

M keyboards/nix_studio/oxalys80/readme.md => keyboards/nix_studio/oxalys80/readme.md +35 -29
@@ 1,43 1,49 @@
oxalys80
===
# OXALYS80

A QMK-powered replacement PCB for custom TKL keyboards. This PCB has the same size of the b.87 PCB, Hiney H87a, KBD8X.
A QMK-powered replacement PCB for custom TKL keyboards. This PCB has the same size of the b.87 PCB, Hiney H87a, and KBD8X.

Keyboard Maintainer: [Nix Studio](https://github.com/Nix-Studio)  
Hardware Supported: oxalys80 ver. 1.0
Hardware Availability: [Nix Studio](https://www.instagram.com/nix.studio/)
* Keyboard Maintainer: [Nix Studio](https://github.com/Nix-Studio)
* Hardware Supported: oxalys80 ver. 1.0
* Hardware Availability: [Nix Studio](https://www.instagram.com/nix.studio/)

Make example for this keyboard (after setting up your build environment):
     
     make nix_studio/oxalys80:default
   

    make nix_studio/oxalys80:default

Flashing example for this keyboard:

    make nix_studio/oxalys80:default:flash

See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).

## oxalys80 hardware information
## OXALYS80 Hardware Information

Controller: ATmega32U4

### Column Pin Configuration

| col: | 0  | 1  | 2  | 3  | 4  | 5  | 6  | 7  | 8  |
|------|----|----|----|----|----|----|----|----|----|
| pin: | F0 | F1 | F4 | F5 | F6 | F7 | C7 | B0 | B1 |

### Row Pin Configuration

| row: | 0  | 1  | 2  | 3  | 4  | 5  | 6  | 7  | 8  | 9  | 10 | 11 |
|------|----|----|----|----|----|----|----|----|----|----|----|----|
| pin: | C6 | B6 | B5 | B4 | D7 | D6 | D4 | D5 | D3 | D2 | D1 | D0 |

Controller: Atmega32u4
The OXALYS80 PCB utilizes duplex matrix organization.

    /* Column pin configuration
    * col: 0   1   2   3   4   5   6   7   8   
    * pin: F0  F1  F4  F5  F6  F7  C7  B0  B1
    */
     
    /* Row pin configuration
    * row: 0   1   2   3   4   5   6   7   8   9   10  11
    * pin: C6  B6  B5  B4  D7  D6  D4  D5  D3  D2  D1  D0
    */
    
The oxalys PCB utilizes duplex matrix organization.
### LED Pins

    Caps Lock LED: E6
    Scroll Lock LED: B2
    Num Lock LED: not supported
    Backlight Pin: B7
    RGB Data Pin: B3
    
* Caps Lock LED: E6
* Scroll Lock LED: B2
* Num Lock LED: not supported
* Backlight Pin: B7
* RGB Data Pin: B3

## In-switch Indicators

In-switch indicators:
To connect the Caps Lock LED to the main backlight matrix, turn switch to top position on SW3. To use the Caps Lock LED as an indicator, turn switch to bottom position on SW3.

To connect the Scroll Lock LED to the main backlight matrix, turn switch to left position on SW2. To use the Scroll Lock LED as an indicator, turn switch to right position on SW2.

M keyboards/nix_studio/oxalys80/rules.mk => keyboards/nix_studio/oxalys80/rules.mk +6 -4
@@ 10,14 10,16 @@ BOOTLOADER = atmel-dfu
BOOTMAGIC_ENABLE = lite     # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes       # Mouse keys
EXTRAKEY_ENABLE = yes       # Audio control and System control
CONSOLE_ENABLE = no        # Console for debug
COMMAND_ENABLE = no        # Commands for debug and configuration
CONSOLE_ENABLE = no         # Console for debug
COMMAND_ENABLE = no         # Commands for debug and configuration
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
NKRO_ENABLE = no            # USB Nkey Rollover
BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality on B7 by default
BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes       # Enable RGB underglow
UNICODE_ENABLE = no         # Unicode
BLUETOOTH_ENABLE = no       # Enable Bluetooth
AUDIO_ENABLE = no           # Audio output
LTO_ENABLE = yes

LAYOUTS = tkl_ansi tkl_iso