| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427 |
- /*
- * Keyboard: Ergodox
- * Keymap: replicaJunction
- * Version: 2.1
- */
- #include QMK_KEYBOARD_H
- #include "config.h"
- #include "replicaJunction.h"
- const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [L_COLEMAK] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- KC_ESC ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_GRV ,
- //--------|--------|--------|--------|--------|--------|--------|
- KX_ECTL ,KC_Q ,KC_W ,KC_F ,KC_P ,KC_B ,KC_LBRC ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_TAB ,KC_A ,KC_R_LT ,KC_S_LT ,KC_T ,KC_G,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_LSFT ,KX_Z_MT ,KX_X_MT ,KX_C_MT ,KX_D_MT ,KC_V ,KC_RBRC ,
- //--------|--------|--------|--------|--------|--------|--------|
- TD_LAYR ,KC_LGUI ,KC_HYPR ,KX_CTSF ,KC_LCTL ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_HOME ,KC_END ,
- // |--------|--------|
- KC_PGUP ,
- // |--------|--------|--------|
- KX_BKNM ,KX_DCTL ,KC_PGDN ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|-------|
- TG_GAME ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_EQL ,
- //--------|--------|--------|--------|--------|--------|-------|
- KC_DEL ,KC_J ,KC_L ,KC_U ,KC_Y ,KC_SCLN ,KC_BSLS,
- //--------|--------|--------|--------|--------|--------|-------|
- KC_M ,KC_N ,KC_E_LT ,KC_I_LT ,KC_O ,KC_QUOT,
- //--------|--------|--------|--------|--------|--------|-------|
- KC_LOCK ,KC_K ,KX_H_MT ,KX_COMT ,KX_DOMT ,KX_SLMT ,KC_RSFT,
- //--------|--------|--------|--------|--------|--------|-------|
- KC_LALT ,KC_MINS ,KC_QUOT ,KC_EQL ,TT_NUM ,
- //--------|--------|--------|--------|--------|--------|-------|
- KC_LEFT ,KC_RGHT ,
- //--------|--------|
- KC_UP ,
- //--------|--------|--------|
- KC_DOWN ,KX_NALT ,KX_SPAC
- //--------|--------|--------|
- ),
- [L_QWERTY] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- // |--------|--------|
- _______ ,
- // |--------|--------|--------|
- _______ ,_______ ,_______ ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,KC_EQL ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,KC_QUOT ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_LOCK ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSPC ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_RALT ,KC_MINS ,KC_QUOT ,KC_EQL ,TT_NUM ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_LEFT ,KC_RGHT ,
- //--------|--------|
- KC_UP ,
- //--------|--------|--------|
- KC_DOWN ,KX_NALT ,KX_SPAC
- //--------|--------|--------|
- ),
- [L_NUM] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_SLSH ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_PIPE,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_BSLS ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,KC_AMPR ,KC_LABK ,KC_RABK,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- // |--------|--------|
- _______ ,
- // |--------|--------|--------|
- _______ ,_______ ,_______ ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_COLN ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PSLS ,KC_F12 ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_HASH ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PAST ,KC_BSPC ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_BSPC ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PMNS ,KC_TAB ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_P0 ,KC_PDOT ,KC_PEQL ,KC_PPLS ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- //--------|--------|
- _______ ,
- //--------|--------|--------|
- _______ ,KC_PENT ,MO_FUNC
- //--------|--------|--------|
- ),
- [L_EXTEND] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,KC_APP ,KX_CGR, KC_VOLU,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,KX_SRCH, KX_PAST, KC_VOLD,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- // |--------|--------|--------|
- _______ ,
- // |--------|--------|--------|
- MO_FUNC, _______ ,_______ ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|--------|
- KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,KX_STAB, KC_TAB, _______ ,KC_INS, KC_PSCR,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,KC_PSCR, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______
- //--------|--------|--------|--------|--------|--------|--------|
- ),
- [L_FUNC] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,M_LCLIK, M_RCLIK, M_MCLIK, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, M_WHLUP,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,M_LEFT, M_DOWN, M_UP ,M_RIGHT, M_WHLDN, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- // |--------|--------|--------|
- _______ ,
- // |--------|--------|--------|
- _______ ,_______ ,_______ ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_VOLU, KC_F9, KC_F10, KC_F11, KC_F12, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_MUTE, KC_F5, KC_F6, KC_F7, KC_F8, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_VOLD, KC_F1, KC_F2, KC_F3, KC_F4, _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______
- //--------|--------|--------|--------|--------|--------|--------|
- ),
- [L_GAMING] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_ESC ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,KC_R ,KC_S ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_LSFT, _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,KC_LALT ,KC_LCTL ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- // |--------|--------|
- _______ ,
- // |--------|--------|--------|
- KC_SPC, KC_LSFT, _______ ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,KC_E ,KC_I ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,KC_UP, KC_SLSH,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,KC_LEFT, KC_DOWN, KC_RGHT,
- //--------|--------|--------|--------|--------|--------|--------|
- M_MCLIK ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- M_RCLIK ,
- //--------|--------|--------|--------|--------|--------|--------|
- M_LCLIK ,KC_ENT ,KC_BSPC
- //--------|--------|--------|--------|--------|--------|--------|
- )
- ,
- // "Letter Layers"
- [L_LL_R] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,ooooooo ,KC_AMPR ,KC_PIPE ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- // |--------|--------|
- _______ ,
- // |--------|--------|--------|
- _______ ,_______ ,_______ ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_COLN ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PSLS ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_HASH ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PAST ,KC_TAB ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_BSPC ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PMNS ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- KC_P0 ,KC_PDOT ,KC_PEQL ,KC_PPLS ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- //--------|--------|
- _______ ,
- //--------|--------|--------|
- _______ ,KC_PENT ,MO_FUNC
- //--------|--------|--------|
- )
- ,
- [L_LL_E] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- RJ_QMKV ,RJ_MAKE ,RJ_EQ ,RJ_LEQ ,RJ_GEQ ,RJ_GEQR ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,RJ_SELS ,RJ_DUND ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- // |--------|--------|
- _______ ,
- // |--------|--------|--------|
- _______ ,_______ ,_______ ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,ooooooo ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- //--------|--------|
- _______ ,
- //--------|--------|--------|
- _______ ,_______ ,_______
- //--------|--------|--------|
- )
- ,
- [L_LL_I] = LAYOUT_ergodox(
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_SLSH ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_PIPE,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_BSLS ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,KC_AMPR ,KC_LABK ,KC_RABK,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- // |--------|--------|
- _______ ,
- // |--------|--------|--------|
- _______ ,_______ ,_______ ,
- // |--------|--------|--------|
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,KC_UNDS, KC_GRV ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,KC_MINS ,KC_QUOT ,ooooooo ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,KC_TILD, KC_DQT ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______ ,_______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,
- //--------|--------|--------|--------|--------|--------|--------|
- _______ ,_______ ,_______
- //--------|--------|--------|--------|--------|--------|--------|
- )
- };
- // The normal QMK functions ending in _user are overridden in the
- // replicaJunction userspace. Those functions handle my global
- // settings, and redirect to these _keymap functions if something
- // is unhandled. This allows me to keep most of my global preferences
- // in one place while still allowing keyboard-specific code.
- // The idea was shamelessly copied from the amazing Drashna.
- // Nothing to do here, so I've commented it out.
- // bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- // return true;
- // }
- // void matrix_init_keymap(void) {};
- void matrix_scan_keymap(void) {
- uint8_t layer = biton32(layer_state);
- // uint8_t default_layer = biton32(layer_state);
- ergodox_board_led_off();
- switch (layer) {
- case L_COLEMAK:
- ergodox_right_led_1_on();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- break;
- case L_NUM:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_off();
- break;
- case L_EXTEND:
- ergodox_right_led_1_on();
- ergodox_right_led_2_off();
- ergodox_right_led_3_on();
- break;
- case L_FUNC:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- break;
- case L_GAMING:
- ergodox_right_led_1_off();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- break;
- default:
- // none
- break;
- }
- };
|