diff options
author | Charly Delay <0xcharly@users.noreply.github.com> | 2022-11-15 17:51:44 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-15 08:51:44 +0000 |
commit | 30b2dbe369b3a61d1d6681b0a689dbcdd41fc221 (patch) | |
tree | cddf4e7318c2b06d33d4b3750d2e4eb15f1d2333 /keyboards/bastardkb/dilemma/3x5_3/keymaps/default | |
parent | ee7426e7b19c25ddfc53d0b50db68a457d8f992b (diff) |
Bastard Keyboards: upstream recent changes (#18903)
* 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
Diffstat (limited to 'keyboards/bastardkb/dilemma/3x5_3/keymaps/default')
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/keymaps/default/keymap.c | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/keyboards/bastardkb/dilemma/3x5_3/keymaps/default/keymap.c b/keyboards/bastardkb/dilemma/3x5_3/keymaps/default/keymap.c new file mode 100644 index 0000000000..cbee085f26 --- /dev/null +++ b/keyboards/bastardkb/dilemma/3x5_3/keymaps/default/keymap.c @@ -0,0 +1,84 @@ +/** + * 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); +} |