1
0
Fork 0

[Keyboard] Subatomic refactor (#3194)

* Refactor: matrix

* New readme file

* Configurator support

* change info.json to debug linting

* use an enum to manage the layers

* readme cleanup

file header, docs links

* use #pragma once in keyboard header file

* use new-style OLKB layout macro naming scheme

* fix layout macro references in keymap.c

* correct Keyboard Maintainer
This commit is contained in:
noroadsleft 2019-09-25 13:17:29 -07:00 committed by Drashna Jaelre
parent 475f832b0f
commit dccafb64e6
4 changed files with 462 additions and 130 deletions

View file

@ -0,0 +1,233 @@
{
"keyboard_name": "Subatomic",
"url": "",
"maintainer": "qmk",
"width": 14,
"height": 5,
"layouts": {
"LAYOUT_ortho_5x14": {
"key_count": 70,
"layout": [
{"label":"k00", "x":0, "y":0},
{"label":"k01", "x":1, "y":0},
{"label":"k02", "x":2, "y":0},
{"label":"k03", "x":3, "y":0},
{"label":"k04", "x":4, "y":0},
{"label":"k05", "x":5, "y":0},
{"label":"k06", "x":6, "y":0},
{"label":"k07", "x":7, "y":0},
{"label":"k08", "x":8, "y":0},
{"label":"k09", "x":9, "y":0},
{"label":"k0a", "x":10, "y":0},
{"label":"k0b", "x":11, "y":0},
{"label":"k0c", "x":12, "y":0},
{"label":"k0d", "x":13, "y":0},
{"label":"k10", "x":0, "y":1},
{"label":"k11", "x":1, "y":1},
{"label":"k12", "x":2, "y":1},
{"label":"k13", "x":3, "y":1},
{"label":"k14", "x":4, "y":1},
{"label":"k15", "x":5, "y":1},
{"label":"k16", "x":6, "y":1},
{"label":"k17", "x":7, "y":1},
{"label":"k18", "x":8, "y":1},
{"label":"k19", "x":9, "y":1},
{"label":"k1a", "x":10, "y":1},
{"label":"k1b", "x":11, "y":1},
{"label":"k1c", "x":12, "y":1},
{"label":"k1d", "x":13, "y":1},
{"label":"k20", "x":0, "y":2},
{"label":"k21", "x":1, "y":2},
{"label":"k22", "x":2, "y":2},
{"label":"k23", "x":3, "y":2},
{"label":"k24", "x":4, "y":2},
{"label":"k25", "x":5, "y":2},
{"label":"k26", "x":6, "y":2},
{"label":"k27", "x":7, "y":2},
{"label":"k28", "x":8, "y":2},
{"label":"k29", "x":9, "y":2},
{"label":"k2a", "x":10, "y":2},
{"label":"k2b", "x":11, "y":2},
{"label":"k2c", "x":12, "y":2},
{"label":"k2d", "x":13, "y":2},
{"label":"k30", "x":0, "y":3},
{"label":"k31", "x":1, "y":3},
{"label":"k32", "x":2, "y":3},
{"label":"k33", "x":3, "y":3},
{"label":"k34", "x":4, "y":3},
{"label":"k35", "x":5, "y":3},
{"label":"k36", "x":6, "y":3},
{"label":"k37", "x":7, "y":3},
{"label":"k38", "x":8, "y":3},
{"label":"k39", "x":9, "y":3},
{"label":"k3a", "x":10, "y":3},
{"label":"k3b", "x":11, "y":3},
{"label":"k3c", "x":12, "y":3},
{"label":"k3d", "x":13, "y":3},
{"label":"k40", "x":0, "y":4},
{"label":"k41", "x":1, "y":4},
{"label":"k42", "x":2, "y":4},
{"label":"k43", "x":3, "y":4},
{"label":"k44", "x":4, "y":4},
{"label":"k45", "x":5, "y":4},
{"label":"k46", "x":6, "y":4},
{"label":"k47", "x":7, "y":4},
{"label":"k48", "x":8, "y":4},
{"label":"k49", "x":9, "y":4},
{"label":"k4a", "x":10, "y":4},
{"label":"k4b", "x":11, "y":4},
{"label":"k4c", "x":12, "y":4},
{"label":"k4d", "x":13, "y":4}
]
},
"LAYOUT_ortho_5x14_1x2uC": {
"key_count": 69,
"layout": [
{"label":"k00", "x":0, "y":0},
{"label":"k01", "x":1, "y":0},
{"label":"k02", "x":2, "y":0},
{"label":"k03", "x":3, "y":0},
{"label":"k04", "x":4, "y":0},
{"label":"k05", "x":5, "y":0},
{"label":"k06", "x":6, "y":0},
{"label":"k07", "x":7, "y":0},
{"label":"k08", "x":8, "y":0},
{"label":"k09", "x":9, "y":0},
{"label":"k0a", "x":10, "y":0},
{"label":"k0b", "x":11, "y":0},
{"label":"k0c", "x":12, "y":0},
{"label":"k0d", "x":13, "y":0},
{"label":"k10", "x":0, "y":1},
{"label":"k11", "x":1, "y":1},
{"label":"k12", "x":2, "y":1},
{"label":"k13", "x":3, "y":1},
{"label":"k14", "x":4, "y":1},
{"label":"k15", "x":5, "y":1},
{"label":"k16", "x":6, "y":1},
{"label":"k17", "x":7, "y":1},
{"label":"k18", "x":8, "y":1},
{"label":"k19", "x":9, "y":1},
{"label":"k1a", "x":10, "y":1},
{"label":"k1b", "x":11, "y":1},
{"label":"k1c", "x":12, "y":1},
{"label":"k1d", "x":13, "y":1},
{"label":"k20", "x":0, "y":2},
{"label":"k21", "x":1, "y":2},
{"label":"k22", "x":2, "y":2},
{"label":"k23", "x":3, "y":2},
{"label":"k24", "x":4, "y":2},
{"label":"k25", "x":5, "y":2},
{"label":"k26", "x":6, "y":2},
{"label":"k27", "x":7, "y":2},
{"label":"k28", "x":8, "y":2},
{"label":"k29", "x":9, "y":2},
{"label":"k2a", "x":10, "y":2},
{"label":"k2b", "x":11, "y":2},
{"label":"k2c", "x":12, "y":2},
{"label":"k2d", "x":13, "y":2},
{"label":"k30", "x":0, "y":3},
{"label":"k31", "x":1, "y":3},
{"label":"k32", "x":2, "y":3},
{"label":"k33", "x":3, "y":3},
{"label":"k34", "x":4, "y":3},
{"label":"k35", "x":5, "y":3},
{"label":"k36", "x":6, "y":3},
{"label":"k37", "x":7, "y":3},
{"label":"k38", "x":8, "y":3},
{"label":"k39", "x":9, "y":3},
{"label":"k3a", "x":10, "y":3},
{"label":"k3b", "x":11, "y":3},
{"label":"k3c", "x":12, "y":3},
{"label":"k3d", "x":13, "y":3},
{"label":"k40", "x":0, "y":4},
{"label":"k41", "x":1, "y":4},
{"label":"k42", "x":2, "y":4},
{"label":"k43", "x":3, "y":4},
{"label":"k44", "x":4, "y":4},
{"label":"k45", "x":5, "y":4},
{"label":"k46", "x":6, "y":4, "w":2},
{"label":"k48", "x":8, "y":4},
{"label":"k49", "x":9, "y":4},
{"label":"k4a", "x":10, "y":4},
{"label":"k4b", "x":11, "y":4},
{"label":"k4c", "x":12, "y":4},
{"label":"k4d", "x":13, "y":4}
]
},
"LAYOUT_ortho_5x14_2x2u": {
"key_count": 68,
"layout": [
{"label":"k00", "x":0, "y":0},
{"label":"k01", "x":1, "y":0},
{"label":"k02", "x":2, "y":0},
{"label":"k03", "x":3, "y":0},
{"label":"k04", "x":4, "y":0},
{"label":"k05", "x":5, "y":0},
{"label":"k06", "x":6, "y":0},
{"label":"k07", "x":7, "y":0},
{"label":"k08", "x":8, "y":0},
{"label":"k09", "x":9, "y":0},
{"label":"k0a", "x":10, "y":0},
{"label":"k0b", "x":11, "y":0},
{"label":"k0c", "x":12, "y":0},
{"label":"k0d", "x":13, "y":0},
{"label":"k10", "x":0, "y":1},
{"label":"k11", "x":1, "y":1},
{"label":"k12", "x":2, "y":1},
{"label":"k13", "x":3, "y":1},
{"label":"k14", "x":4, "y":1},
{"label":"k15", "x":5, "y":1},
{"label":"k16", "x":6, "y":1},
{"label":"k17", "x":7, "y":1},
{"label":"k18", "x":8, "y":1},
{"label":"k19", "x":9, "y":1},
{"label":"k1a", "x":10, "y":1},
{"label":"k1b", "x":11, "y":1},
{"label":"k1c", "x":12, "y":1},
{"label":"k1d", "x":13, "y":1},
{"label":"k20", "x":0, "y":2},
{"label":"k21", "x":1, "y":2},
{"label":"k22", "x":2, "y":2},
{"label":"k23", "x":3, "y":2},
{"label":"k24", "x":4, "y":2},
{"label":"k25", "x":5, "y":2},
{"label":"k26", "x":6, "y":2},
{"label":"k27", "x":7, "y":2},
{"label":"k28", "x":8, "y":2},
{"label":"k29", "x":9, "y":2},
{"label":"k2a", "x":10, "y":2},
{"label":"k2b", "x":11, "y":2},
{"label":"k2c", "x":12, "y":2},
{"label":"k2d", "x":13, "y":2},
{"label":"k30", "x":0, "y":3},
{"label":"k31", "x":1, "y":3},
{"label":"k32", "x":2, "y":3},
{"label":"k33", "x":3, "y":3},
{"label":"k34", "x":4, "y":3},
{"label":"k35", "x":5, "y":3},
{"label":"k36", "x":6, "y":3},
{"label":"k37", "x":7, "y":3},
{"label":"k38", "x":8, "y":3},
{"label":"k39", "x":9, "y":3},
{"label":"k3a", "x":10, "y":3},
{"label":"k3b", "x":11, "y":3},
{"label":"k3c", "x":12, "y":3},
{"label":"k3d", "x":13, "y":3},
{"label":"k40", "x":0, "y":4},
{"label":"k41", "x":1, "y":4},
{"label":"k42", "x":2, "y":4},
{"label":"k43", "x":3, "y":4},
{"label":"k44", "x":4, "y":4},
{"label":"k45", "x":5, "y":4, "w":2},
{"label":"k47", "x":7, "y":4, "w":2},
{"label":"k49", "x":9, "y":4},
{"label":"k4a", "x":10, "y":4},
{"label":"k4b", "x":11, "y":4},
{"label":"k4c", "x":12, "y":4},
{"label":"k4d", "x":13, "y":4}
]
}
}
}

View file

@ -4,12 +4,14 @@
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _QWERTY 0
#define _COLEMAK 1
#define _DVORAK 2
#define _LOWER 3
#define _RAISE 4
#define _ADJUST 16
enum layer_names {
_QWERTY,
_COLEMAK,
_DVORAK,
_LOWER,
_RAISE,
_ADJUST,
};
enum subatomic_keycodes {
QWERTY = SAFE_RANGE,
@ -22,132 +24,131 @@ enum subatomic_keycodes {
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,-------------------------------------------------------------------------------------------------.
* | Ins | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | Del |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | - | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | = | Esc | A | S | D | F | G | H | J | K | L | ; | " |Enter |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | Pg Up| Shift| Z | X | C | V | B | N | M | , | . | / | Home | End |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Pg Dn| Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up | Right| \ |
* `-------------------------------------------------------------------------------------------------'
*/
[_QWERTY] = {
{KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TRNS},
{KC_TRNS, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_TRNS},
{KC_TRNS, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_TRNS},
{KC_TRNS, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_TRNS},
{KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS}
},
/* Qwerty
* ,-------------------------------------------------------------------------------------------------.
* | Ins | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | Del |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | - | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | = | Esc | A | S | D | F | G | H | J | K | L | ; | " |Enter |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | Pg Up| Shift| Z | X | C | V | B | N | M | , | . | / | Home | End |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Pg Dn| Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up | Right| \ |
* `-------------------------------------------------------------------------------------------------'
*/
[_QWERTY] = LAYOUT_ortho_5x14_1x2uC(
KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TRNS,
KC_TRNS, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_TRNS,
KC_TRNS, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_TRNS,
KC_TRNS, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_TRNS,
KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS
),
/* Colemak
* ,-------------------------------------------------------------------------------------------------.
* | Ins | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | Del |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | - | Tab | Q | W | F | P | G | J | L | U | Y | ; | [ | ] |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | = | Esc | A | R | S | T | D | H | N | E | I | O | " |Enter |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | Pg Up| Shift| Z | X | C | V | B | K | M | , | . | / | Home | End |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Pg Dn| Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up | Right| \ |
* `-------------------------------------------------------------------------------------------------'
*/
[_COLEMAK] = {
{KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TRNS},
{KC_TRNS, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, KC_TRNS},
{KC_TRNS, KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_TRNS},
{KC_TRNS, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_TRNS},
{KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS}
},
/* Colemak
* ,-------------------------------------------------------------------------------------------------.
* | Ins | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | Del |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | - | Tab | Q | W | F | P | G | J | L | U | Y | ; | [ | ] |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | = | Esc | A | R | S | T | D | H | N | E | I | O | " |Enter |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | Pg Up| Shift| Z | X | C | V | B | K | M | , | . | / | Home | End |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Pg Dn| Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up | Right| \ |
* `-------------------------------------------------------------------------------------------------'
*/
[_COLEMAK] = LAYOUT_ortho_5x14_1x2uC(
KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TRNS,
KC_TRNS, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, KC_TRNS,
KC_TRNS, KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_TRNS,
KC_TRNS, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_TRNS,
KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS
),
/* Dvorak
* ,-------------------------------------------------------------------------------------------------.
* | Ins | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | Del |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | [ | Tab | " | , | . | P | Y | F | G | C | R | L | / | = |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | ] | Esc | A | O | E | U | I | D | H | T | N | S | - |Enter |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | Pg Up| Shift| ; | Q | J | K | X | B | M | W | V | Z | Home | End |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Pg Dn| Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up | Right| \ |
* `-------------------------------------------------------------------------------------------------'
*/
[_DVORAK] = {
{KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TRNS},
{KC_TRNS, KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_DEL, KC_TRNS},
{KC_TRNS, KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, KC_TRNS},
{KC_TRNS, KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT, KC_TRNS},
{KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS}
},
/* Dvorak
* ,-------------------------------------------------------------------------------------------------.
* | Ins | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | Del |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | [ | Tab | " | , | . | P | Y | F | G | C | R | L | / | = |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | ] | Esc | A | O | E | U | I | D | H | T | N | S | - |Enter |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | Pg Up| Shift| ; | Q | J | K | X | B | M | W | V | Z | Home | End |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Pg Dn| Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up | Right| \ |
* `-------------------------------------------------------------------------------------------------'
*/
[_DVORAK] = LAYOUT_ortho_5x14_1x2uC(
KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TRNS,
KC_TRNS, KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_DEL, KC_TRNS,
KC_TRNS, KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, KC_TRNS,
KC_TRNS, KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT, KC_TRNS,
KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS
),
/* Lower
* ,-------------------------------------------------------------------------------------------------.
* | | ~ | F1 | F3 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | _ | Tab | ! | @ | # | $ | % | ^ | & | * | ( | ) | { | } |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | + | Esc | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | | Shift| F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | Next | Vol- | Vol+ | Play | |
* `-------------------------------------------------------------------------------------------------'
*/
[_LOWER] = {
{KC_TRNS, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_TRNS},
{KC_TRNS, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_TRNS},
{KC_TRNS, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS},
{KC_TRNS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______,KC_TRNS},
{KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, KC_TRNS}
},
/* Lower
* ,-------------------------------------------------------------------------------------------------.
* | | ~ | F1 | F3 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | _ | Tab | ! | @ | # | $ | % | ^ | & | * | ( | ) | { | } |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | + | Esc | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | | Shift| F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | Next | Vol- | Vol+ | Play | |
* `-------------------------------------------------------------------------------------------------'
*/
[_LOWER] = LAYOUT_ortho_5x14_1x2uC(
KC_TRNS, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_TRNS,
KC_TRNS, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_TRNS,
KC_TRNS, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
KC_TRNS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______,KC_TRNS,
KC_TRNS, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, KC_TRNS
),
/* Raise
* ,-------------------------------------------------------------------------------------------------.
* | | ~ | F1 | F3 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | _ | Tab | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | { | } |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | + | Esc | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | | |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | | Shift| F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | Next | Vol- | Vol+ | | Play |
* `-------------------------------------------------------------------------------------------------'
*/
[_RAISE] = {
{KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TRNS},
{KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_TRNS},
{KC_TRNS, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_TRNS},
{KC_TRNS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______, KC_TRNS},
{KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, KC_TRNS}
},
/* Adjust (Lower + Raise)
* ,-------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | Reset| | | | | | | | | | | |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | | | | |Aud on|AudOff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | | | | | |
* `-------------------------------------------------------------------------------------------------'
*/
[_ADJUST] = {
{KC_TRNS, 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_TRNS},
{KC_TRNS, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_TRNS},
{KC_TRNS, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, KC_TRNS},
{KC_TRNS, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, KC_TRNS},
{KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS}
}
/* Raise
* ,-------------------------------------------------------------------------------------------------.
* | | ~ | F1 | F3 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | _ | Tab | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | { | } |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | + | Esc | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | | |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | | Shift| F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | Next | Vol- | Vol+ | | Play |
* `-------------------------------------------------------------------------------------------------'
*/
[_RAISE] = LAYOUT_ortho_5x14_1x2uC(
KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TRNS,
KC_TRNS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_TRNS,
KC_TRNS, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_TRNS,
KC_TRNS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______, KC_TRNS,
KC_TRNS, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, KC_TRNS
),
/* Adjust (Lower + Raise)
* ,-------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | Reset| | | | | | | | | | | |
* |------+------+------+------+------+------+-------------+------+------+------+------+------+------|
* | | | | |Aud on|AudOff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | |
* |------+------+------+------+------+------+------|------+------+------+------+------+------+------|
* | | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | | | | | |
* `-------------------------------------------------------------------------------------------------'
*/
[_ADJUST] = LAYOUT_ortho_5x14_1x2uC(
KC_TRNS, 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_TRNS,
KC_TRNS, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_TRNS,
KC_TRNS, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, KC_TRNS,
KC_TRNS, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, KC_TRNS,
KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS
)
};

View file

@ -0,0 +1,15 @@
# Subatomic
![Subatomic](https://i.imgur.com/EWrY7Bel.png)
A compact 70% (15x4) ortholinear keyboard kit made and sold by OLKB. [More info on qmk.fm](http://qmk.fm/subatomic/)
Keyboard Maintainer: [Jack Humbert](https://github.com/jackhumbert)
Hardware Supported: Subatomic PCB
Hardware Availability: TBD
Make example for this keyboard (after setting up your build environment):
make subatomic:default
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).

View file

@ -1,6 +1,89 @@
#ifndef SUBATOMIC_H
#define SUBATOMIC_H
#pragma once
#include "quantum.h"
#endif
#define XXX KC_NO
/* Subatomic Grid layout
*
*
*
*
*
*
*
*
*
*
*
*/
#define LAYOUT_ortho_5x14( \
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, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, 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, k2d }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d } \
}
/*
*
*
*
*
*
*
*
*
*
*
*
*/
#define LAYOUT_ortho_5x14_1x2uC( \
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, \
k40, k41, k42, k43, k44, k45, k46, k48, k49, k4a, 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, k2d }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d }, \
{ k40, k41, k42, k43, k44, k45, k46, XXX, k48, k49, k4a, k4b, k4c, k4d } \
}
/*
*
*
*
*
*
*
*
*
*
*
*
*/
#define LAYOUT_ortho_5x14_2x2u( \
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, \
k40, k41, k42, k43, k44, k45, k47, k49, k4a, 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, k2d }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d }, \
{ k40, k41, k42, k43, k44, k45, XXX, k47, XXX, k49, k4a, k4b, k4c, k4d } \
}