forked from forks/qmk_firmware
30b2dbe369
* bastardkb: cleanup blackpill configuration Fixes #17 * bastardkb: fix splinky configuration The pinout of the splinky changed between the last beta batch, and the production one. This commit updates the keyboard definition to support the new pinout by default, while offering backward compatibility. Define `SPLINKY_BETA_PINOUT` to build the firmware with pre-production pinout. Fixes #15 * bastardkb: add support for STeMCell * Update scylla/tbkmini/skeletyl outdated readmes * bastardkb/dilemma: enable circular scroll * bastardkb/dilemma: add initial version of the `via` keymap * bastardkb/dilemma/assembled: add new keyboard Fixes #20 * bastardkb/dilemma: remove elite-c * Initial support for the Dilemma 3x5+3 Assembled RGB * Address code review comments * Address more comments * Address review comments * Address more nits * bastardkb: split splinky-based keyboards to distinguish between Splinky v2 and v3 pinout
85 lines
8 KiB
C
85 lines
8 KiB
C
/**
|
|
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
|
*
|
|
* 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/>.
|
|
*/
|
|
|
|
#include QMK_KEYBOARD_H
|
|
|
|
enum dilemma_keymap_layers {
|
|
LAYER_BASE = 0,
|
|
LAYER_NAV,
|
|
LAYER_SYM,
|
|
LAYER_NUM,
|
|
};
|
|
|
|
#define NAV MO(LAYER_NAV)
|
|
#define SYM MO(LAYER_SYM)
|
|
|
|
// clang-format off
|
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
[LAYER_BASE] = LAYOUT_split_3x5_3(
|
|
// ╭─────────────────────────────────────────────╮ ╭─────────────────────────────────────────────╮
|
|
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
|
|
// ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤
|
|
KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
|
|
// ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤
|
|
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,
|
|
// ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯
|
|
KC_A, NAV, CAPSWRD, KC_SPC, SYM, KC_A
|
|
// ╰───────────────────────────╯ ╰──────────────────────────╯
|
|
),
|
|
|
|
[LAYER_NAV] = LAYOUT_split_3x5_3(
|
|
// ╭─────────────────────────────────────────────╮ ╭─────────────────────────────────────────────╮
|
|
KC_TAB, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, XXXXXXX, KC_HOME, KC_UP, KC_END, KC_DEL,
|
|
// ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤
|
|
KC_LSFT, KC_LCTL, KC_LALT, KC_RGUI, KC_VOLD, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC,
|
|
// ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤
|
|
QK_BOOT, EEP_RST, KC_MPRV, KC_MNXT, KC_MPLY, XXXXXXX, KC_PGDN, KC_PGUP, XXXXXXX, KC_ENT,
|
|
// ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯
|
|
KC_A, _______, KC_LSFT, KC_SPC, _______, KC_A
|
|
// ╰───────────────────────────╯ ╰──────────────────────────╯
|
|
),
|
|
|
|
[LAYER_SYM] = LAYOUT_split_3x5_3(
|
|
// ╭─────────────────────────────────────────────╮ ╭─────────────────────────────────────────────╮
|
|
KC_ESC, KC_LBRC, KC_LCBR, KC_LPRN, KC_TILD, KC_CIRC, KC_RPRN, KC_RCBR, KC_RBRC, KC_GRV,
|
|
// ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤
|
|
KC_MINS, KC_ASTR, KC_EQL, KC_UNDS, KC_DLR, KC_HASH, KC_RGUI, KC_RALT, KC_RCTL, KC_RSFT,
|
|
// ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤
|
|
KC_PLUS, KC_PIPE, KC_AT, KC_SLSH, KC_PERC, _______, KC_BSLS, KC_AMPR, KC_QUES, KC_EXLM,
|
|
// ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯
|
|
KC_A, _______, KC_LSFT, KC_SPC, _______, KC_A
|
|
// ╰───────────────────────────╯ ╰──────────────────────────╯
|
|
),
|
|
|
|
[LAYER_NUM] = LAYOUT_split_3x5_3(
|
|
// ╭─────────────────────────────────────────────╮ ╭─────────────────────────────────────────────╮
|
|
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
|
|
// ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤
|
|
KC_LSFT, KC_LCTL, KC_LALT, KC_LGUI, KC_F11, KC_F12, KC_RGUI, KC_RALT, KC_RCTL, KC_RSFT,
|
|
// ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤
|
|
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
|
|
// ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯
|
|
KC_A, _______, KC_LSFT, KC_SPC, _______, KC_A
|
|
// ╰───────────────────────────╯ ╰──────────────────────────╯
|
|
),
|
|
};
|
|
// clang-format on
|
|
|
|
layer_state_t layer_state_set_user(layer_state_t state) {
|
|
return update_tri_layer_state(state, LAYER_NAV, LAYER_SYM, LAYER_NUM);
|
|
}
|