diff options
| author | Jack Humbert <jack.humb@gmail.com> | 2015-10-26 16:57:45 -0400 |
|---|---|---|
| committer | Jack Humbert <jack.humb@gmail.com> | 2015-10-26 16:57:45 -0400 |
| commit | 402122744c26704f378cda828d30bf11e8d6dabf (patch) | |
| tree | c9834b5739f5534cf345e1467d2a34ae9f716e73 /keyboard/ergodox/keymaps/keymap_ergodox_ez.c | |
| parent | 35a81f5b8b081e1607a7c04489b01f551c3213cc (diff) | |
| download | qmk_firmware-402122744c26704f378cda828d30bf11e8d6dabf.tar.gz qmk_firmware-402122744c26704f378cda828d30bf11e8d6dabf.zip | |
ez with leds
Diffstat (limited to 'keyboard/ergodox/keymaps/keymap_ergodox_ez.c')
| -rw-r--r-- | keyboard/ergodox/keymaps/keymap_ergodox_ez.c | 210 |
1 files changed, 210 insertions, 0 deletions
diff --git a/keyboard/ergodox/keymaps/keymap_ergodox_ez.c b/keyboard/ergodox/keymaps/keymap_ergodox_ez.c new file mode 100644 index 000000000..84a17abdd --- /dev/null +++ b/keyboard/ergodox/keymaps/keymap_ergodox_ez.c | |||
| @@ -0,0 +1,210 @@ | |||
| 1 | #include "action_util.h" | ||
| 2 | #include "action_layer.h" | ||
| 3 | #define KC_SW0 KC_FN0 | ||
| 4 | #define DEBUG_ACTION | ||
| 5 | |||
| 6 | static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 7 | |||
| 8 | /* Keymap 0: Basic layer | ||
| 9 | * | ||
| 10 | * ,--------------------------------------------------. ,--------------------------------------------------. | ||
| 11 | * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | | ||
| 12 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
| 13 | * | Del | Q | W | E | R | T | Up | | Up | Y | U | I | O | P | \ | | ||
| 14 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 15 | * | BkSp | A | S | D | F | G |------| |------| H | J | K | L |; / L2| ' | | ||
| 16 | * |--------+------+------+------+------+------| L1 | | L1 |------+------+------+------+------+--------| | ||
| 17 | * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | | ||
| 18 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
| 19 | * |Grv/L1| ~L1 | TAB | Left | Right| | Up | Down | [ | ] | ~L1 | | ||
| 20 | * `----------------------------------' `----------------------------------' | ||
| 21 | * ,-------------. ,-------------. | ||
| 22 | * | Rclk | LGui | | Alt |Ctrl/Esc| | ||
| 23 | * ,------|------|------| |------+--------+------. | ||
| 24 | * | | | Home | | PgUp | | | | ||
| 25 | * | Space| Enter|------| |------| Tab |Enter | | ||
| 26 | * | | | End | | PgDn | | | | ||
| 27 | * `--------------------' `----------------------' | ||
| 28 | */ | ||
| 29 | |||
| 30 | |||
| 31 | // Basic layer | ||
| 32 | |||
| 33 | KEYMAP( | ||
| 34 | EQL, 1, 2, 3, 4, 5, LEFT, | ||
| 35 | DEL, Q, W, E, R, T, UP, | ||
| 36 | BSPC, A, S, D, F, G, | ||
| 37 | LSFT, FN29, X, C, V, B, FN1, | ||
| 38 | FN30, FN4, TAB, LEFT, RIGHT, | ||
| 39 | |||
| 40 | BTN2,LGUI, | ||
| 41 | HOME, | ||
| 42 | SPC, ENT, END, | ||
| 43 | //RIGHT | ||
| 44 | RIGHT,6, 7, 8, 9, 0, MINS, | ||
| 45 | UP, Y, U, I, O, P, BSLS, | ||
| 46 | H, J, K, L, FN31, QUOT, | ||
| 47 | FN1, N, M, COMM, DOT, FN28, RSFT, | ||
| 48 | UP, DOWN, LBRC, RBRC, FN4, | ||
| 49 | LALT, FN27, | ||
| 50 | PGUP, | ||
| 51 | PGDN, TAB, ENT | ||
| 52 | ), | ||
| 53 | |||
| 54 | /* Keymap 1: Symbol Layer | ||
| 55 | * | ||
| 56 | * ,--------------------------------------------------. ,--------------------------------------------------. | ||
| 57 | * | Flash | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | | ||
| 58 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
| 59 | * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | | ||
| 60 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 61 | * | : | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | | ||
| 62 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 63 | * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | | ||
| 64 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
| 65 | * | | | | | | | | . | 0 | = | | | ||
| 66 | * `----------------------------------' `----------------------------------' | ||
| 67 | * ,-------------. ,-------------. | ||
| 68 | * | | | | | | | ||
| 69 | * ,------|------|------| |------+------+------. | ||
| 70 | * | | | | | | | | | ||
| 71 | * | | |------| |------| | | | ||
| 72 | * | | | | | | | | | ||
| 73 | * `--------------------' `--------------------' | ||
| 74 | */ | ||
| 75 | // SYMBOLS | ||
| 76 | KEYMAP( | ||
| 77 | FN0, F1, F2, F3, F4, F5, TRNS, | ||
| 78 | TRNS, FN7, FN8, FN23, FN24, FN18, TRNS, | ||
| 79 | FN22, FN9, FN10, FN15, FN16, GRV, | ||
| 80 | TRNS, FN11, FN12, LBRC, RBRC, FN17, TRNS, | ||
| 81 | TRNS, TRNS, TRNS, TRNS, TRNS, | ||
| 82 | |||
| 83 | TRNS, TRNS, | ||
| 84 | TRNS, | ||
| 85 | TRNS, TRNS, TRNS, | ||
| 86 | // right hand | ||
| 87 | TRNS, F6, F7, F8, F9, F10, F11, | ||
| 88 | TRNS, UP, 7, 8, 9, FN14, F12, | ||
| 89 | DOWN, 4, 5, 6, FN26, TRNS, | ||
| 90 | TRNS, FN13, 1, 2, 3, BSLS, TRNS, | ||
| 91 | TRNS,DOT, 0, EQL, TRNS, | ||
| 92 | TRNS, TRNS, | ||
| 93 | TRNS, | ||
| 94 | TRNS, TRNS, TRNS | ||
| 95 | ), | ||
| 96 | /* Keymap 2: Media and mouse keys | ||
| 97 | * | ||
| 98 | * ,--------------------------------------------------. ,--------------------------------------------------. | ||
| 99 | * | | | | | | | | | | | | | | | | | ||
| 100 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| | ||
| 101 | * | | | MsUp | | | | | | | | | | | | | | ||
| 102 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 103 | * | |MsLeft|MsDown|MsRght| | |------| |------| | | | Play | | | | ||
| 104 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| | ||
| 105 | * | | | | | | | | | | | | Prev | Next | | | | ||
| 106 | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' | ||
| 107 | * | | | | Lclk | Rclk | |VolUp |VolDn | | | | | ||
| 108 | * `----------------------------------' `----------------------------------' | ||
| 109 | * ,-------------. ,-------------. | ||
| 110 | * | | | | | | | ||
| 111 | * ,------|------|------| |------+------+------. | ||
| 112 | * | | | | | | | | | ||
| 113 | * | | |------| |------| | | | ||
| 114 | * | | | | | | | | | ||
| 115 | * `--------------------' `--------------------' | ||
| 116 | */ | ||
| 117 | // MEDIA AND MOUSE | ||
| 118 | KEYMAP( | ||
| 119 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | ||
| 120 | TRNS, TRNS, MS_U, TRNS, TRNS, TRNS, TRNS, | ||
| 121 | TRNS, MS_L, MS_D, MS_R, TRNS, TRNS, | ||
| 122 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | ||
| 123 | TRNS, TRNS, TRNS, BTN3, BTN2, | ||
| 124 | |||
| 125 | TRNS, TRNS, | ||
| 126 | TRNS, | ||
| 127 | TRNS, TRNS, TRNS, | ||
| 128 | // right hand | ||
| 129 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | ||
| 130 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | ||
| 131 | TRNS, TRNS, TRNS, MPLY, TRNS, TRNS, | ||
| 132 | TRNS, TRNS, TRNS, MPRV, MNXT, TRNS, TRNS, | ||
| 133 | VOLU, VOLD, TRNS, TRNS, TRNS, | ||
| 134 | TRNS, TRNS, | ||
| 135 | TRNS, | ||
| 136 | TRNS, TRNS, WBAK | ||
| 137 | ), | ||
| 138 | }; | ||
| 139 | |||
| 140 | /* id for user defined functions */ | ||
| 141 | enum function_id { | ||
| 142 | TEENSY_KEY, | ||
| 143 | }; | ||
| 144 | |||
| 145 | /* | ||
| 146 | * Fn action definition | ||
| 147 | */ | ||
| 148 | static const uint16_t PROGMEM fn_actions[] = { | ||
| 149 | [0] = ACTION_FUNCTION(TEENSY_KEY), // FN0 - Teensy key | ||
| 150 | [1] = ACTION_LAYER_INVERT(1, ON_RELEASE), // FN1 - Toggle 1 | ||
| 151 | [2] = ACTION_LAYER_TOGGLE(2), // FN2 - Toggle 2 | ||
| 152 | [3] = ACTION_LAYER_TOGGLE(3), // FN3 - Toggle 3 | ||
| 153 | [4] = ACTION_LAYER_TAP_TOGGLE(1), // FN4 - Momentary Layer 1 | ||
| 154 | [5] = ACTION_LAYER_MOMENTARY(2), // FN5 - Momentary L2 | ||
| 155 | |||
| 156 | // SYMBOLS | ||
| 157 | ACTION_MODS_KEY(MOD_LSFT, KC_QUOT), // FN6 - " | ||
| 158 | ACTION_MODS_KEY(MOD_LSFT, KC_1), // FN7 - ! | ||
| 159 | ACTION_MODS_KEY(MOD_LSFT, KC_2), // FN8 - @ | ||
| 160 | ACTION_MODS_KEY(MOD_LSFT, KC_3), // FN9 - # | ||
| 161 | ACTION_MODS_KEY(MOD_LSFT, KC_4), // FN10 - $ | ||
| 162 | ACTION_MODS_KEY(MOD_LSFT, KC_5), // FN11 - % | ||
| 163 | ACTION_MODS_KEY(MOD_LSFT, KC_6), // FN12 - ^ | ||
| 164 | ACTION_MODS_KEY(MOD_LSFT, KC_7), // FN13 - & | ||
| 165 | ACTION_MODS_KEY(MOD_LSFT, KC_8), // FN14 - * | ||
| 166 | ACTION_MODS_KEY(MOD_LSFT, KC_9), // FN15 - ( | ||
| 167 | ACTION_MODS_KEY(MOD_LSFT, KC_0), // FN16 - ) | ||
| 168 | ACTION_MODS_KEY(MOD_LSFT, KC_GRV), // FN17 - ~ | ||
| 169 | ACTION_MODS_KEY(MOD_LSFT, KC_BSLS), // FN18 - | | ||
| 170 | ACTION_MODS_KEY(MOD_LSFT, KC_MINS), // FN19 - _ | ||
| 171 | ACTION_MODS_KEY(MOD_LSFT, KC_COMM), // FN20 - < | ||
| 172 | ACTION_MODS_KEY(MOD_LSFT, KC_DOT), // FN21 - > | ||
| 173 | ACTION_MODS_KEY(MOD_LSFT, KC_SCLN), // FN22 - : | ||
| 174 | ACTION_MODS_KEY(MOD_LSFT, KC_LBRC), // FN23 - { | ||
| 175 | ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), // FN24 - } | ||
| 176 | ACTION_MODS_KEY(MOD_LSFT, KC_SLSH), // FN25 - ? | ||
| 177 | ACTION_MODS_KEY(MOD_LSFT, KC_EQL), // FN26 - + | ||
| 178 | |||
| 179 | ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ESC), // FN27 - Control/esc on tap | ||
| 180 | ACTION_MODS_TAP_KEY(MOD_LCTL, KC_SLSH), // FN28 - slash becomes Ctrl when held (right pinky) | ||
| 181 | ACTION_MODS_TAP_KEY(MOD_LCTL, KC_Z), // FN29 - z becomes Ctrl when held (left pinky) | ||
| 182 | |||
| 183 | // Fancy tapping/toggling | ||
| 184 | ACTION_LAYER_TAP_KEY(1, KC_GRV), // FN30 - Layer 1 when holding backtick key | ||
| 185 | ACTION_LAYER_TAP_KEY(2, KC_SCLN), // FN31 - Layer 2 when holding semicolon key | ||
| 186 | |||
| 187 | |||
| 188 | }; | ||
| 189 | |||
| 190 | void action_function(keyrecord_t *event, uint8_t id, uint8_t opt) | ||
| 191 | { | ||
| 192 | print("action_function called\n"); | ||
| 193 | print("id = "); phex(id); print("\n"); | ||
| 194 | print("opt = "); phex(opt); print("\n"); | ||
| 195 | if (id == TEENSY_KEY) { | ||
| 196 | clear_keyboard(); | ||
| 197 | print("\n\nJump to bootloader... "); | ||
| 198 | _delay_ms(250); | ||
| 199 | bootloader_jump(); // should not return | ||
| 200 | print("not supported.\n"); | ||
| 201 | } | ||
| 202 | } | ||
| 203 | |||
| 204 | void * matrix_init_user(void) { | ||
| 205 | |||
| 206 | }; | ||
| 207 | |||
| 208 | void * matrix_scan_user(void) { | ||
| 209 | |||
| 210 | }; | ||
