aboutsummaryrefslogtreecommitdiffstats
path: root/keyboards/ergodox_ez/keymaps/hacker_dvorak/keymap.c
diff options
context:
space:
mode:
authorGravatar Ismael Venegas Castelló <ismael.vc1337@gmail.com>2018-12-19 18:49:56 -0600
committerGravatar Drashna Jaelre <drashna@live.com>2018-12-19 16:49:56 -0800
commit5eb8f3f6b51cecc067aaedfb8b2f08cb626381bb (patch)
treeb9e1b89d43ec3be60d03daa052556f90a7190dd6 /keyboards/ergodox_ez/keymaps/hacker_dvorak/keymap.c
parentb13162f7fd5a4c09dff15ff6f9713526622925a7 (diff)
downloadqmk_firmware-5eb8f3f6b51cecc067aaedfb8b2f08cb626381bb.tar.gz
Keymap: Refactor Hacker Dvorak (#4688)
Programmer Dvorak based layout for the Ergodox EZ.
Diffstat (limited to 'keyboards/ergodox_ez/keymaps/hacker_dvorak/keymap.c')
-rw-r--r--keyboards/ergodox_ez/keymaps/hacker_dvorak/keymap.c800
1 files changed, 19 insertions, 781 deletions
diff --git a/keyboards/ergodox_ez/keymaps/hacker_dvorak/keymap.c b/keyboards/ergodox_ez/keymaps/hacker_dvorak/keymap.c
index c42b55108..af06d2bd8 100644
--- a/keyboards/ergodox_ez/keymaps/hacker_dvorak/keymap.c
+++ b/keyboards/ergodox_ez/keymaps/hacker_dvorak/keymap.c
@@ -1,781 +1,19 @@
-#include QMK_KEYBOARD_H
-#include "keymap_dvorak.h"
-#include "sendstring_dvorak.h"
-#include "keymap_plover.h"
-#include "keymap_plover_dvorak.h"
-
-
-#define SCTL(kc) LSFT(LCTL(kc))
-
-// Layers
-enum layers {
- DVORAK_US = 0,
- PLOVER_US,
- GAMING_US,
- ARROWS_US,
- MOUSE_US,
- NUMPAD_US,
- LAYERS_US,
- DVORAK_DV,
- PLOVER_DV,
- GAMING_DV,
- ARROWS_DV,
- MOUSE_DV,
- NUMPAD_DV,
- LAYERS_DV,
- MEDIA_FN,
- HYPER_FN,
- MEH_FN,
- MEH_FN_PLUS,
- FIRMWARE
-};
-
-int CAPS_LOCK = 0;
-int NUM_LOCK = 0;
-int SCROLL_LOCK = 0;
-
-enum tap_dances {
- TD_ESC_CAPS = 0
-};
-
-qk_tap_dance_action_t tap_dance_actions[] = {
- [TD_ESC_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_CLCK)
-};
-
-
-enum custom_keycodes {
- PLACEHOLDER = SAFE_RANGE, // can always be here
- RGB_GREEN // to set default RGB layer as green once
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
- * |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
- * | 7 | 8 | 9 | 10 | 11 | 12 | 13 | | 45 | 46 | 47 | 48 | 49 | 50 | 51 |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | 14 | 15 | 16 | 17 | 18 | 19 |------| |------| 52 | 53 | 54 | 55 | 56 | 57 |
- * |--------+------+------+------+------+------| 26 | | 58 |------+------+------+------+------+--------|
- * | 20 | 21 | 22 | 23 | 24 | 25 | | | | 59 | 60 | 61 | 62 | 63 | 64 |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | 27 | 28 | 29 | 30 | 31 | | 65 | 66 | 67 | 68 | 69 |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | 32 | 33 | | 70 | 71 |
- * ,------+------+------| |------+------+------.
- * | | | 34 | | 72 | | |
- * | 35 | 36 |------| |------| 74 | 75 |
- * | | | 37 | | 73 | | |
- * `--------------------' `--------------------'
- */
- [DVORAK_US] = LAYOUT_ergodox(
- // left hand
- KC_ESC, KC_LABK, KC_LCBR, KC_LBRC, KC_LPRN, KC_EXLM, KC_AMPR,
- KC_TAB, KC_QUOT, SCMD_T(KC_COMM), MEH_T(KC_DOT), ALL_T(KC_P), KC_Y, KC_AT,
- KC_EQL, CTL_T(KC_A), SFT_T(KC_O), LT(NUMPAD_US, KC_E), LT(ARROWS_US, KC_U), KC_I,
- KC_BSLS, ALGR_T(KC_SCLN), ALT_T(KC_Q), LT(MEDIA_FN, KC_J), GUI_T(KC_K), KC_X, KC_PERC,
- MO(MEH_FN), TG(LAYERS_US), KC_CIRC, KC_PLUS, KC_COLN,
-
- // left thumb
- KC_LEFT, KC_RGHT,
- KC_HOME,
- KC_SPC, KC_BSPC, KC_END,
-
- // right hand
- KC_PIPE, KC_QUES, KC_RPRN, KC_RBRC, KC_RCBR, KC_RABK, KC_ASTR,
- KC_HASH, KC_F, ALL_T(KC_G), MEH_T(KC_C), SCMD_T(KC_R), KC_L, KC_SLSH,
- KC_D, LT(MOUSE_US, KC_H), LT(HYPER_FN, KC_T), SFT_T(KC_N), CTL_T(KC_S), KC_MINS,
- KC_DLR, KC_B, GUI_T(KC_M), LT(MEDIA_FN, KC_W), ALT_T(KC_V), ALGR_T(KC_Z), KC_GRV,
- KC_DQUO, KC_UNDS, KC_TILD, TG(DVORAK_DV), MO(MEH_FN_PLUS),
-
- // right thumb
- KC_UP, KC_DOWN,
- KC_PGUP,
- KC_PGDN, KC_DEL, KC_ENT
- ),
-
- [PLOVER_US] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, KC_MS_BTN3, GUI_T(KC_NO),
- KC_ESC, KC_MS_BTN4, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_MS_BTN5, PV_NUM,
- KC_TAB, PV_LS, PV_LT, PV_LP, PV_LH, PV_STAR,
- KC_CLCK, PV_LS, PV_LK, PV_LW, PV_LR, PV_STAR, PV_STAR,
- MO(MEH_FN), TG(LAYERS_US), PV_NUM, PV_NUM, PV_NUM,
-
- // left thumb
- KC_SPACE, KC_BSPACE,
- KC_HOME,
- PV_A, PV_O, KC_END,
-
- // right hand
- KC_MS_ACCEL2, KC_MS_ACCEL1, KC_MS_ACCEL0, KC_UP, KC_APPLICATION, XXXXXXX, KC_MS_WH_UP,
- PV_NUM, KC_MS_WH_LEFT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_MS_WH_RIGHT, KC_MS_WH_DOWN,
- PV_STAR, PV_RF, PV_RP, PV_RL, PV_RT, PV_RD,
- PV_STAR, PV_STAR, PV_RR, PV_RB, PV_RG, PV_RS, PV_RZ,
- PV_NUM, PV_NUM, PV_NUM, PV_NUM, MO(MEH_FN_PLUS),
-
- // right thumb
- KC_DELETE, KC_ENTER,
- KC_PGUP,
- KC_PGDOWN, PV_E, PV_U
- ),
-
- [GAMING_US] = LAYOUT_ergodox(
- // left hand
- KC_ESCAPE, GUI_T(KC_MINS), KC_I, KC_O, KC_P, ALGR_T(KC_EQL), KC_T,
- KC_TAB, KC_LALT, KC_Q, KC_W, KC_E, ALL_T(KC_R), KC_G,
- LT(MOUSE_US, KC_GRV), KC_LCTRL, KC_A, KC_S, KC_D, MEH_T(KC_F),
- KC_BSLS, KC_LSHIFT, KC_Z, KC_X, KC_C, SCMD_T(KC_V), KC_M,
- MO(MEH_FN), TG(LAYERS_US), KC_COMM, KC_DOT, KC_LBRC,
-
- // left thumb
- MO(MEDIA_FN), KC_NLCK,
- KC_SCLN,
- KC_SPACE, KC_ENTER, KC_BSPACE,
-
- // right hand
- KC_QUOT, KC_Y, KC_K, KC_U, KC_KP_7, KC_KP_8, KC_KP_9,
- KC_MS_WH_UP, KC_H, KC_J, KC_L, KC_KP_4, KC_KP_2, KC_KP_6,
- KC_B, KC_MS_UP, KC_N, KC_KP_1, KC_KP_5, KC_KP_3,
- KC_MS_WH_DOWN, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_UP, KC_KP_0, KC_SLASH,
- KC_RBRC, KC_LEFT, KC_DOWN, KC_RIGHT, MO(MEH_FN_PLUS),
-
- // right thumb
- KC_MS_BTN5, MO(HYPER_FN),
- KC_MS_BTN4,
- KC_MS_BTN3, KC_MS_BTN2, KC_MS_BTN1
- ),
-
- [ARROWS_US] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, SCMD_T(KC_NO), MEH_T(KC_NO), ALL_T(KC_NO), XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, KC_LCTRL, KC_LSHIFT, XXXXXXX, _______, XXXXXXX,
- XXXXXXX, KC_RALT, KC_LALT, GUI_T(KC_NO), XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- KC_HOME,
- KC_SPACE, KC_BSPACE, KC_END,
-
- // right hand
- LGUI(KC_X), XXXXXXX, LCTL(KC_X), KC_MS_WH_UP, XXXXXXX, XXXXXXX, XXXXXXX,
- LGUI(KC_C), XXXXXXX, LCTL(KC_C), KC_UP, SCTL(KC_C), LCTL(KC_Z), LGUI(KC_Z),
- KC_MS_WH_LEFT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_MS_WH_RIGHT, KC_APPLICATION,
- LGUI(KC_V), XXXXXXX, LCTL(KC_V), KC_MS_WH_DOWN, SCTL(KC_V), LCTL(KC_Y), SGUI(KC_Z),
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SLCK,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- KC_PGUP,
- KC_PGDOWN, KC_DELETE, KC_ENTER
- ),
-
- [MOUSE_US] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, KC_MS_WH_UP, LCTL(KC_X), XXXXXXX, LGUI(KC_X),
- LGUI(KC_Z), LCTL(KC_Z), SCTL(KC_C), KC_MS_UP, LCTL(KC_C), KC_MS_BTN4, LGUI(KC_C),
- KC_MS_BTN3, KC_MS_WH_LEFT, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_MS_WH_RIGHT,
- LGUI(KC_Z), LCTL(KC_Y), SCTL(KC_V), KC_MS_WH_DOWN, LCTL(KC_V), KC_MS_BTN5, LGUI(KC_V),
- KC_SLCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- KC_MS_BTN1, KC_MS_BTN2, XXXXXXX,
-
- // right hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, ALL_T(KC_NO), MEH_T(KC_NO), SCMD_T(KC_NO), XXXXXXX,
- XXXXXXX, _______, KC_MS_ACCEL1, KC_LSHIFT, KC_LCTRL, KC_MS_ACCEL2,
- XXXXXXX, XXXXXXX, XXXXXXX, GUI_T(KC_NO), KC_LALT, KC_RALT, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, KC_MS_ACCEL0
- ),
-
- [NUMPAD_US] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, GUI_T(KC_NO), XXXXXXX, ALL_T(KC_NO), XXXXXXX, XXXXXXX,
- _______, KC_LCTRL, KC_LSHIFT, _______, MEH_T(KC_NO), XXXXXXX,
- XXXXXXX, KC_RALT, KC_LALT, XXXXXXX, SCMD_T(KC_NO), XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- KC_HOME,
- KC_SPACE, KC_BSPACE, KC_END,
-
- // right hand
- KC_X, KC_A, KC_B, KC_C, KC_D, KC_E, KC_F,
- KC_O, KC_I, KC_1, KC_2, KC_3, KC_SLSH, KC_PERC,
- KC_M, KC_4, KC_5, KC_6, KC_PLUS, KC_MINS,
- KC_L, KC_J, KC_7, KC_8, KC_9, KC_ASTR, KC_CIRC,
- KC_DOT, KC_0, KC_COMM, KC_UNDS, KC_BSLS,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- KC_PGUP,
- KC_PGDOWN, KC_DELETE, KC_ENTER
- ),
-
- [LAYERS_US] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, TO(DVORAK_US), TO(PLOVER_US), TO(GAMING_US), XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [DVORAK_DV] = LAYOUT_ergodox(
- // left hand
- KC_ESC, DV_LABK, DV_LCBR, DV_LBRC, DV_LPRN, DV_EXLM, DV_AMPR,
- KC_TAB, DV_QUOT, SCMD_T(DV_COMM), MEH_T(DV_DOT), ALL_T(DV_P), DV_Y, DV_AT,
- DV_EQL, CTL_T(DV_A), SFT_T(DV_O), LT(NUMPAD_DV, DV_E), LT(ARROWS_DV, DV_U), DV_I,
- DV_BSLS, ALGR_T(DV_SCLN), ALT_T(DV_Q), LT(MEDIA_FN, DV_J), GUI_T(DV_K), DV_X, DV_PERC,
- MO(MEH_FN), TG(LAYERS_DV), DV_CIRC, DV_PLUS, DV_COLN,
-
- // left thumb
- KC_LEFT, KC_RGHT,
- KC_HOME,
- KC_SPC, KC_BSPC, KC_END,
-
- // right hand
- DV_PIPE, DV_QUES, DV_RPRN, DV_RBRC, DV_RCBR, DV_RABK, DV_ASTR,
- DV_HASH, DV_F, ALL_T(DV_G), MEH_T(DV_C), SCMD_T(DV_R), DV_L, DV_SLSH,
- DV_D, LT(MOUSE_DV, DV_H), LT(HYPER_FN, DV_T), SFT_T(DV_N), CTL_T(DV_S), DV_MINS,
- DV_DLR, DV_B, GUI_T(DV_M), LT(MEDIA_FN, DV_W), ALT_T(DV_V), ALGR_T(DV_Z), DV_GRV,
- DV_DQUO, DV_UNDS, DV_TILD, _______, MO(MEH_FN_PLUS),
-
- // right thumb
- KC_UP, KC_DOWN,
- KC_PGUP,
- KC_PGDN, KC_DEL, KC_ENT
- ),
-
- [PLOVER_DV] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, KC_MS_BTN3, GUI_T(KC_NO),
- KC_ESC, KC_MS_BTN4, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_MS_BTN5, PD_NUM,
- KC_TAB, PD_LS, PD_LT, PD_LP, PD_LH, PD_STAR,
- KC_CLCK, PD_LS, PD_LK, PD_LW, PD_LR, PD_STAR, PD_STAR,
- MO(MEH_FN), TG(LAYERS_DV), PD_NUM, PD_NUM, PD_NUM,
-
- // left thumb
- KC_SPACE, KC_BSPACE,
- KC_HOME,
- PD_A, PD_O, KC_END,
-
- // right hand
- KC_MS_ACCEL2, KC_MS_ACCEL1, KC_MS_ACCEL0, KC_UP, KC_APPLICATION, XXXXXXX, KC_MS_WH_UP,
- PD_NUM, KC_MS_WH_LEFT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_MS_WH_RIGHT, KC_MS_WH_DOWN,
- PD_STAR, PD_RF, PD_RP, PD_RL, PD_RT, PD_RD,
- PD_STAR, PD_STAR, PD_RR, PD_RB, PD_RG, PD_RS, PD_RZ,
- PD_NUM, PD_NUM, PD_NUM, PD_NUM, MO(MEH_FN_PLUS),
-
- // right thumb
- KC_DELETE, KC_ENTER,
- KC_PGUP,
- KC_PGDOWN, PD_E, PD_U
- ),
-
- [GAMING_DV] = LAYOUT_ergodox(
- // left hand
- KC_ESCAPE, GUI_T(DV_MINS), DV_I, DV_O, DV_P, ALGR_T(DV_EQL), DV_T,
- KC_TAB, KC_LALT, DV_Q, DV_W, DV_E, ALL_T(DV_R), DV_G,
- LT(MOUSE_DV, DV_GRV), KC_LCTRL, DV_A, DV_S, DV_D, MEH_T(DV_F),
- DV_BSLS, KC_LSHIFT, DV_Z, DV_X, DV_C, SCMD_T(DV_V), DV_M,
- MO(MEH_FN), TG(LAYERS_DV), DV_COMM, DV_DOT, DV_LBRC,
-
- // left thumb
- MO(MEDIA_FN), KC_NLCK,
- DV_SCLN,
- KC_SPACE, KC_ENTER, KC_BSPACE,
-
- // right hand
- DV_QUOT, DV_Y, DV_K, DV_U, KC_KP_7, KC_KP_8, KC_KP_9,
- KC_MS_WH_UP, DV_H, DV_J, DV_L, KC_KP_4, KC_KP_2, KC_KP_6,
- DV_B, KC_MS_UP, DV_N, KC_KP_1, KC_KP_5, KC_KP_3,
- KC_MS_WH_DOWN, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_UP, KC_KP_0, DV_SLSH,
- DV_RBRC, KC_LEFT, KC_DOWN, KC_RIGHT, MO(MEH_FN_PLUS),
-
- // right thumb
- KC_MS_BTN5, MO(HYPER_FN),
- KC_MS_BTN4,
- KC_MS_BTN3, KC_MS_BTN2, KC_MS_BTN1
- ),
-
- [ARROWS_DV] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, SCMD_T(KC_NO), MEH_T(KC_NO), ALL_T(KC_NO), XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, KC_LCTRL, KC_LSHIFT, XXXXXXX, _______, XXXXXXX,
- XXXXXXX, KC_RALT, KC_LALT, GUI_T(KC_NO), XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- KC_HOME,
- KC_SPACE, KC_BSPACE, KC_END,
-
- // right hand
- LGUI(DV_X), XXXXXXX, LCTL(DV_X), KC_MS_WH_UP, XXXXXXX, XXXXXXX, XXXXXXX,
- LGUI(DV_C), XXXXXXX, LCTL(DV_C), KC_UP, SCTL(DV_C), LCTL(DV_Z), LGUI(DV_Z),
- KC_MS_WH_LEFT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_MS_WH_RIGHT, KC_APPLICATION,
- LGUI(DV_V), XXXXXXX, LCTL(DV_V), KC_MS_WH_DOWN, SCTL(DV_V), LCTL(DV_Y), SGUI(DV_Z),
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SLCK,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- KC_PGUP,
- KC_PGDOWN, KC_DELETE, KC_ENTER
- ),
-
- [MOUSE_DV] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, KC_MS_WH_UP, LCTL(DV_X), XXXXXXX, LGUI(DV_X),
- LGUI(DV_Z), LCTL(DV_Z), SCTL(DV_C), KC_MS_UP, LCTL(DV_C), KC_MS_BTN4, LGUI(DV_C),
- KC_MS_BTN3, KC_MS_WH_LEFT, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_MS_WH_RIGHT,
- LGUI(DV_Z), LCTL(DV_Y), SCTL(DV_V), KC_MS_WH_DOWN, LCTL(DV_V), KC_MS_BTN5, LGUI(DV_V),
- KC_SLCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- KC_MS_BTN1, KC_MS_BTN2, XXXXXXX,
-
- // right hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, ALL_T(KC_NO), MEH_T(KC_NO), SCMD_T(KC_NO), XXXXXXX,
- XXXXXXX, _______, KC_MS_ACCEL1, KC_LSHIFT, KC_LCTRL, KC_MS_ACCEL2,
- XXXXXXX, XXXXXXX, XXXXXXX, GUI_T(KC_NO), KC_LALT, KC_RALT, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, KC_MS_ACCEL0
- ),
-
- [NUMPAD_DV] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, GUI_T(KC_NO), XXXXXXX, ALL_T(KC_NO), XXXXXXX, XXXXXXX,
- _______, KC_LCTRL, KC_LSHIFT, _______, MEH_T(KC_NO), XXXXXXX,
- XXXXXXX, KC_RALT, KC_LALT, XXXXXXX, SCMD_T(KC_NO), XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- KC_HOME,
- KC_SPACE, KC_BSPACE, KC_END,
-
- // right hand
- DV_X, DV_A, DV_B, DV_C, DV_D, DV_E, DV_F,
- DV_O, DV_I, DV_1, DV_2, DV_3, DV_SLSH, DV_PERC,
- DV_M, DV_4, DV_5, DV_6, DV_PLUS, DV_MINS,
- DV_L, DV_J, DV_7, DV_8, DV_9, DV_ASTR, DV_CIRC,
- DV_DOT, DV_0, DV_COMM, DV_UNDS, DV_BSLS,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- KC_PGUP,
- KC_PGDOWN, KC_DELETE, KC_ENTER
- ),
-
- [LAYERS_DV] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, TO(DVORAK_DV), TO(PLOVER_DV), TO(GAMING_DV), XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [MEDIA_FN] = LAYOUT_ergodox(
- // left hand
- KC_AUDIO_VOL_DOWN, KC_AUDIO_MUTE, RGB_TOG, XXXXXXX, KC_MAIL, KC_FIND, KC_WWW_REFRESH,
- KC_MEDIA_PREV_TRACK, KC_F9, KC_F7, KC_F5, KC_F3, KC_F1, KC_WWW_HOME,
- KC_PAUSE, KC_F19, KC_F17, KC_F15, KC_F13, KC_F11,
- RGB_HUD, XXXXXXX, XXXXXXX, _______, KC_F23, KC_F21, KC_WWW_BACK,
- RGB_VAD, KC_CLCK, KC_PSCREEN, XXXXXXX, MO(FIRMWARE),
-
- // left thumb
- _______, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, KC_MEDIA_EJECT,
-
- // right hand
- KC_WWW_FAVORITES, KC_MY_COMPUTER, KC_CALCULATOR, XXXXXXX, RGB_MOD, RGB_M_P, KC_AUDIO_VOL_UP,
- KC_WWW_SEARCH, KC_F2, KC_F4, KC_F6, KC_F8, KC_F10, KC_MEDIA_NEXT_TRACK,
- KC_F12, KC_F14, KC_F16, KC_F18, KC_F20, KC_MEDIA_PLAY_PAUSE,
- KC_WWW_FORWARD, KC_F22, KC_F24, _______, XXXXXXX, XXXXXXX, RGB_HUI,
- KC_SYSTEM_POWER, XXXXXXX, KC_SYSTEM_SLEEP, KC_SYSTEM_WAKE, RGB_VAI,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- RGB_GREEN, XXXXXXX, XXXXXXX
- ),
-
- [HYPER_FN] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, HYPR(KC_F1), HYPR(KC_F2), HYPR(KC_F3), HYPR(KC_F4), HYPR(KC_F5), XXXXXXX,
- XXXXXXX, HYPR(KC_F6), HYPR(KC_F7), HYPR(KC_F8), HYPR(KC_F9), HYPR(KC_F10), XXXXXXX,
- XXXXXXX, HYPR(KC_F11), HYPR(KC_F12), HYPR(KC_F13), HYPR(KC_F14), HYPR(KC_F15),
- XXXXXXX, HYPR(KC_F16), HYPR(KC_F17), HYPR(KC_F18), HYPR(KC_F19), HYPR(KC_F20), XXXXXXX,
- XXXXXXX, HYPR(KC_F21), HYPR(KC_F22), HYPR(KC_F23), HYPR(KC_F24),
-
- // left thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right thumb
- XXXXXXX, _______,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [MEH_FN] = LAYOUT_ergodox(
- // left hand
- LCA(KC_F11), LCA(KC_F9), LCA(KC_F7), LCA(KC_F5), LCA(KC_F3), LCA(KC_F1), XXXXXXX,
- LCAG(KC_F11), LCAG(KC_F9), LCAG(KC_F7), LCAG(KC_F5), LCAG(KC_F3), LCAG(KC_F1), XXXXXXX,
- MEH(KC_F11), MEH(KC_F9), MEH(KC_F7), MEH(KC_F5), MEH(KC_F3), MEH(KC_F1),
- SGUI(KC_F11), SGUI(KC_F9), SGUI(KC_F7), SGUI(KC_F5), SGUI(KC_F3), SGUI(KC_F1), XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right hand
- XXXXXXX, LCA(KC_F2), LCA(KC_F4), LCA(KC_F6), LCA(KC_F8), LCA(KC_F10), LCA(KC_F12),
- XXXXXXX, LCAG(KC_F2), LCAG(KC_F4), LCAG(KC_F6), LCAG(KC_F8), LCAG(KC_F10), LCAG(KC_F12),
- MEH(KC_F2), MEH(KC_F4), MEH(KC_F6), MEH(KC_F8), MEH(KC_F10), MEH(KC_F12),
- XXXXXXX, SGUI(KC_F2), SGUI(KC_F4), SGUI(KC_F6), SGUI(KC_F8), SGUI(KC_F10), SGUI(KC_F12),
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [MEH_FN_PLUS] = LAYOUT_ergodox(
- // left hand
- LCA(KC_F23), LCA(KC_F21), LCA(KC_F19), LCA(KC_F17), LCA(KC_F15), LCA(KC_F13), XXXXXXX,
- LCAG(KC_F23), LCAG(KC_F21), LCAG(KC_F19), LCAG(KC_F17), LCAG(KC_F15), LCAG(KC_F13), XXXXXXX,
- MEH(KC_F23), MEH(KC_F21), MEH(KC_F19), MEH(KC_F17), MEH(KC_F15), MEH(KC_F13),
- SGUI(KC_F23), SGUI(KC_F21), SGUI(KC_F19), SGUI(KC_F17), SGUI(KC_F15), SGUI(KC_F13), XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right hand
- XXXXXXX, LCA(KC_F14), LCA(KC_F16), LCA(KC_F18), LCA(KC_F20), LCA(KC_F22), LCA(KC_F24),
- XXXXXXX, LCAG(KC_F14), LCAG(KC_F16), LCAG(KC_F18), LCAG(KC_F20), LCAG(KC_F22), LCAG(KC_F24),
- MEH(KC_F14), MEH(KC_F16), MEH(KC_F18), MEH(KC_F20), MEH(KC_F22), MEH(KC_F24),
- XXXXXXX, SGUI(KC_F14), SGUI(KC_F16), SGUI(KC_F18), SGUI(KC_F20), SGUI(KC_F22), SGUI(KC_F24),
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [FIRMWARE] = LAYOUT_ergodox(
- // left hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
-
- // left thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- RESET, XXXXXXX, XXXXXXX,
-
- // right hand
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- // right thumb
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, EEP_RST
- )
-};
-
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case RGB_GREEN:
- if (record->event.pressed) {
- #ifdef RGBLIGHT_ENABLE
- rgblight_enable();
- rgblight_mode(1);
- rgblight_sethsv_red();
- #endif
- }
-
- return false;
-
- case KC_CLCK:
- if (record->event.pressed) {
- if (!(CAPS_LOCK)) {
- ergodox_right_led_1_on();
- CAPS_LOCK = 1;
- } else {
- ergodox_right_led_1_off();
- CAPS_LOCK = 0;
- }
- }
-
- return true;
-
- case KC_NLCK:
- if (record->event.pressed) {
- if (!(NUM_LOCK)) {
- ergodox_right_led_2_on();
- NUM_LOCK = 1;
- } else {
- ergodox_right_led_2_off();
- NUM_LOCK = 0;
- }
- }
-
- return true;
-
- case KC_SLCK:
- if (record->event.pressed) {
- if (!(SCROLL_LOCK)) {
- ergodox_right_led_3_on();
- SCROLL_LOCK = 1;
- } else {
- ergodox_right_led_3_off();
- SCROLL_LOCK = 0;
- }
- }
-
- case KC_MS_WH_LEFT:
- if (record->event.pressed) {
- if (SCROLL_LOCK) {
- return false;
- } else {
- return true;
- }
- }
-
- case KC_MS_WH_UP:
- if (record->event.pressed) {
- if (SCROLL_LOCK) {
- return false;
- } else {
- return true;
- }
- }
-
- case KC_MS_WH_DOWN:
- if (record->event.pressed) {
- if (SCROLL_LOCK) {
- return false;
- } else {
- return true;
- }
- }
-
- case KC_MS_WH_RIGHT:
- if (record->event.pressed) {
- if (SCROLL_LOCK) {
- return false;
- } else {
- return true;
- }
- }
-
- default:
- return true;
- }
-}
-
-uint32_t layer_state_set_user(uint32_t state) {
- uint8_t layer = biton32(state);
-
- switch (layer) {
- case DVORAK_US:
- rgblight_sethsv_noeeprom_red();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
-
- break;
-
- case PLOVER_US:
- rgblight_sethsv_noeeprom_red();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3);
-
- break;
-
- case GAMING_US:
- rgblight_sethsv_noeeprom_red();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3);
-
- break;
-
- case ARROWS_US:
- rgblight_sethsv_noeeprom_blue();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case MOUSE_US:
- rgblight_sethsv_noeeprom_blue();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case NUMPAD_US:
- rgblight_sethsv_noeeprom_blue();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case LAYERS_US:
- rgblight_sethsv_noeeprom_cyan();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case DVORAK_DV:
- rgblight_sethsv_noeeprom_green();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- break;
-
- case PLOVER_DV:
- rgblight_sethsv_noeeprom_green();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3);
-
- break;
-
- case GAMING_DV:
- rgblight_sethsv_noeeprom_green();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3);
-
- break;
-
- case ARROWS_DV:
- rgblight_sethsv_noeeprom_blue();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case MOUSE_DV:
- rgblight_sethsv_noeeprom_blue();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case NUMPAD_DV:
- rgblight_sethsv_noeeprom_blue();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case LAYERS_DV:
- rgblight_sethsv_noeeprom_cyan();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case MEDIA_FN:
- rgblight_sethsv_noeeprom_yellow();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case HYPER_FN:
- rgblight_sethsv_noeeprom_magenta();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- case MEH_FN:
- rgblight_sethsv_noeeprom_magenta();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_SNAKE + 4);
-
- break;
-
- case MEH_FN_PLUS:
- rgblight_sethsv_noeeprom_magenta();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_SNAKE + 5);
-
- break;
-
- case FIRMWARE:
- rgblight_sethsv_noeeprom_pink();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_KNIGHT + 2);
-
- break;
-
- default:
- break;
- }
-
- return state;
-};
+#include QMK_KEYBOARD_H // Includes the QMK-verse.
+#include "keymap_plover.h" // Includes the Plover keymap for easier readability.
+
+
+// TODO: No eeprom changes unless needed, custom rgb settings for animations.
+#include "keycodes/aliases_definitions.c"
+#include "layers/layers_definitions.c"
+#include "tap_dance/tap_dance_setup.c"
+#include "tap_dance/tap_dances.c"
+#include "user/matrix_scan_user.c"
+#include "tap_dance/mod_tap_layer_dances/none_lead.c"
+#include "tap_dance/tap_dance_actions.c"
+#include "keycodes/custom_keycodes.c"
+#include "dynamic_macro.h" // Includes dynamic macro definitions, needed *after* the custom keycodes.
+#include "hacker_dvorak.c"
+#include "user/eeconfig_init_user.c"
+#include "user/process_record_user.c"
+#include "plover/plover_mode.c"
+#include "user/layer_set_state_user.c"