diff options
| author | Jack Humbert <jack.humb@gmail.com> | 2016-04-14 19:13:24 -0400 |
|---|---|---|
| committer | Jack Humbert <jack.humb@gmail.com> | 2016-04-14 19:13:24 -0400 |
| commit | ddbe4307789b6087c3e6f146a5e02f1084f3cecc (patch) | |
| tree | d75c0ced15406d0d9d1cba0750f9296a0dbaf8e1 /keyboard/planck/keymaps/default/keymap.c | |
| parent | bdb6dceaebc358dd4aae593d51d3ba0dd61858a9 (diff) | |
| download | qmk_firmware-ddbe4307789b6087c3e6f146a5e02f1084f3cecc.tar.gz qmk_firmware-ddbe4307789b6087c3e6f146a5e02f1084f3cecc.zip | |
new defaults
Diffstat (limited to 'keyboard/planck/keymaps/default/keymap.c')
| -rw-r--r-- | keyboard/planck/keymaps/default/keymap.c | 146 |
1 files changed, 132 insertions, 14 deletions
diff --git a/keyboard/planck/keymaps/default/keymap.c b/keyboard/planck/keymaps/default/keymap.c index 30ad87760..e06567339 100644 --- a/keyboard/planck/keymaps/default/keymap.c +++ b/keyboard/planck/keymaps/default/keymap.c | |||
| @@ -5,6 +5,10 @@ | |||
| 5 | #ifdef BACKLIGHT_ENABLE | 5 | #ifdef BACKLIGHT_ENABLE |
| 6 | #include "backlight.h" | 6 | #include "backlight.h" |
| 7 | #endif | 7 | #endif |
| 8 | #include "action_layer.h" | ||
| 9 | #ifdef AUDIO_ENABLE | ||
| 10 | #include "audio.h" | ||
| 11 | #endif | ||
| 8 | 12 | ||
| 9 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | 13 | // Each layer gets a name for readability, which is then used in the keymap matrix below. |
| 10 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | 14 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. |
| @@ -15,6 +19,15 @@ | |||
| 15 | #define _DV 2 | 19 | #define _DV 2 |
| 16 | #define _LW 3 | 20 | #define _LW 3 |
| 17 | #define _RS 4 | 21 | #define _RS 4 |
| 22 | #define _AD 5 | ||
| 23 | |||
| 24 | // Macro name shortcuts | ||
| 25 | #define M_QW 0 | ||
| 26 | #define M_CM 1 | ||
| 27 | #define M_DV 2 | ||
| 28 | #define M_LW 3 | ||
| 29 | #define M_RS 4 | ||
| 30 | #define M_BL 5 | ||
| 18 | 31 | ||
| 19 | // Fillers to make layering more clear | 32 | // Fillers to make layering more clear |
| 20 | #define _______ KC_TRNS | 33 | #define _______ KC_TRNS |
| @@ -37,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 37 | {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, | 50 | {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, |
| 38 | {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, | 51 | {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, |
| 39 | {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, | 52 | {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, |
| 40 | {M(0), KC_LCTL, KC_LALT, KC_LGUI, MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} | 53 | {M(M_BL), KC_LCTL, KC_LALT, KC_LGUI, M(M_LW), KC_SPC, KC_SPC, M(M_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} |
| 41 | }, | 54 | }, |
| 42 | 55 | ||
| 43 | /* Colemak | 56 | /* Colemak |
| @@ -55,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 55 | {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, | 68 | {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, |
| 56 | {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, | 69 | {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, |
| 57 | {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, | 70 | {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, |
| 58 | {M(0), KC_LCTL, KC_LALT, KC_LGUI, MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} | 71 | {M(M_BL), KC_LCTL, KC_LALT, KC_LGUI, M(M_LW), KC_SPC, KC_SPC, M(M_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} |
| 59 | }, | 72 | }, |
| 60 | 73 | ||
| 61 | /* Dvorak | 74 | /* Dvorak |
| @@ -73,24 +86,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 73 | {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC}, | 86 | {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC}, |
| 74 | {KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH}, | 87 | {KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH}, |
| 75 | {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT }, | 88 | {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT }, |
| 76 | {M(0), KC_LCTL, KC_LALT, KC_LGUI, MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} | 89 | {M(M_BL), KC_LCTL, KC_LALT, KC_LGUI, M(M_LW), KC_SPC, KC_SPC, M(M_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} |
| 77 | }, | 90 | }, |
| 78 | 91 | ||
| 79 | /* Raise | 92 | /* Raise |
| 80 | * ,-----------------------------------------------------------------------------------. | 93 | * ,-----------------------------------------------------------------------------------. |
| 81 | * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | | 94 | * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | |
| 82 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 95 | * |------+------+------+------+------+-------------+------+------+------+------+------| |
| 83 | * | Esc | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | | 96 | * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | |
| 84 | * |------+------+------+------+------+------|------+------+------+------+------+------| | 97 | * |------+------+------+------+------+------|------+------+------+------+------+------| |
| 85 | * | Shift| F7 | F8 | F9 | F10 | F11 | F12 |Qwerty|Colemk|Dvorak| Reset|Enter | | 98 | * | | F7 | F8 | F9 | F10 | F11 | F12 | | | | |Enter | |
| 86 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 99 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 87 | * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Next | Vol- | Vol+ | Play | | 100 | * | | | | | | | | Next | Vol- | Vol+ | Play | |
| 88 | * `-----------------------------------------------------------------------------------' | 101 | * `-----------------------------------------------------------------------------------' |
| 89 | */ | 102 | */ |
| 90 | [_RS] = { | 103 | [_RS] = { |
| 91 | {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, | 104 | {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, |
| 92 | {_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, | 105 | {KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, |
| 93 | {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_CM), DF(_DV), RESET, _______}, | 106 | {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______}, |
| 94 | {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} | 107 | {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} |
| 95 | }, | 108 | }, |
| 96 | 109 | ||
| @@ -98,18 +111,36 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 98 | * ,-----------------------------------------------------------------------------------. | 111 | * ,-----------------------------------------------------------------------------------. |
| 99 | * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | | 112 | * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | |
| 100 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 113 | * |------+------+------+------+------+-------------+------+------+------+------+------| |
| 101 | * | Esc | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | | 114 | * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | |
| 102 | * |------+------+------+------+------+------|------+------+------+------+------+------| | 115 | * |------+------+------+------+------+------|------+------+------+------+------+------| |
| 103 | * | Shift| F7 | F8 | F9 | F10 | F11 | F12 |Qwerty|Colemk|Dvorak| Reset|Enter | | 116 | * | | F7 | F8 | F9 | F10 | F11 | F12 | | | | |Enter | |
| 104 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 117 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 105 | * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Next | Vol- | Vol+ | Play | | 118 | * | | | | | | | | Next | Vol- | Vol+ | Play | |
| 106 | * `-----------------------------------------------------------------------------------' | 119 | * `-----------------------------------------------------------------------------------' |
| 107 | */ | 120 | */ |
| 108 | [_LW] = { | 121 | [_LW] = { |
| 109 | {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, | 122 | {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, |
| 110 | {_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, | 123 | {KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, |
| 111 | {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_CM), DF(_DV), RESET, _______}, | 124 | {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______}, |
| 112 | {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} | 125 | {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} |
| 126 | }, | ||
| 127 | |||
| 128 | /* Adjust (Lower + Raise) | ||
| 129 | * ,-----------------------------------------------------------------------------------. | ||
| 130 | * | | Reset| | | | | | | | | | Del | | ||
| 131 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 132 | * | | | | | | | |Qwerty|Colemk|Dvorak| | | | ||
| 133 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 134 | * | | | | | | | | | | | | | | ||
| 135 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 136 | * | | | | | | | | | | | | | ||
| 137 | * `-----------------------------------------------------------------------------------' | ||
| 138 | */ | ||
| 139 | [_AD] = { | ||
| 140 | {_______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL}, | ||
| 141 | {_______, _______, _______, _______, _______, _______, _______, M(M_QW), M(M_CM), M(M_DV), _______, _______}, | ||
| 142 | {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, | ||
| 143 | {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} | ||
| 113 | } | 144 | } |
| 114 | }; | 145 | }; |
| 115 | 146 | ||
| @@ -117,11 +148,85 @@ const uint16_t PROGMEM fn_actions[] = { | |||
| 117 | 148 | ||
| 118 | }; | 149 | }; |
| 119 | 150 | ||
| 151 | float tone_qw[][2] = { | ||
| 152 | {440.0*pow(2.0,(67)/12.0), 400}, | ||
| 153 | {440.0*pow(2.0,(60)/12.0), 400}, | ||
| 154 | {0, 400}, | ||
| 155 | {440.0*pow(2.0,(67)/12.0), 1600} | ||
| 156 | }; | ||
| 157 | |||
| 158 | float tone_cm[][2] = { | ||
| 159 | {440.0*pow(2.0,(67)/12.0), 400}, | ||
| 160 | {440.0*pow(2.0,(60)/12.0), 400}, | ||
| 161 | {0, 400}, | ||
| 162 | {440.0*pow(2.0,(67)/12.0), 1000}, | ||
| 163 | {0, 200}, | ||
| 164 | {440.0*pow(2.0,(67)/12.0), 1000} | ||
| 165 | }; | ||
| 166 | |||
| 167 | float tone_dv[][2] = { | ||
| 168 | {440.0*pow(2.0,(67)/12.0), 400}, | ||
| 169 | {440.0*pow(2.0,(60)/12.0), 400}, | ||
| 170 | {0, 400}, | ||
| 171 | {440.0*pow(2.0,(67)/12.0), 800}, | ||
| 172 | {0, 200}, | ||
| 173 | {440.0*pow(2.0,(67)/12.0), 800}, | ||
| 174 | {0, 200}, | ||
| 175 | {440.0*pow(2.0,(67)/12.0), 800} | ||
| 176 | }; | ||
| 177 | |||
| 178 | |||
| 179 | #define IS_LAYER_ON(layer) ((layer_state) & (1<<(layer))) | ||
| 180 | #define IS_LAYER_OFF(layer) ((!layer_state) & (1<<(layer))) | ||
| 181 | |||
| 182 | void update_tri_layer(uint8_t layer1, uint8_t layer2, uint8_t layer3) { | ||
| 183 | if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) { | ||
| 184 | layer_on(layer3); | ||
| 185 | } else { | ||
| 186 | layer_off(layer3); | ||
| 187 | } | ||
| 188 | } | ||
| 120 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | 189 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) |
| 121 | { | 190 | { |
| 122 | // MACRODOWN only works in this function | 191 | // MACRODOWN only works in this function |
| 123 | switch(id) { | 192 | switch(id) { |
| 124 | case 0: | 193 | case M_QW: |
| 194 | if (record->event.pressed) { | ||
| 195 | play_notes(&tone_qw, 4, false); | ||
| 196 | default_layer_set(1UL<<_QW); | ||
| 197 | } | ||
| 198 | break; | ||
| 199 | case M_CM: | ||
| 200 | if (record->event.pressed) { | ||
| 201 | play_notes(&tone_cm, 6, false); | ||
| 202 | default_layer_set(1UL<<_CM); | ||
| 203 | } | ||
| 204 | break; | ||
| 205 | case M_DV: | ||
| 206 | if (record->event.pressed) { | ||
| 207 | play_notes(&tone_dv, 8, false); | ||
| 208 | default_layer_set(1UL<<_DV); | ||
| 209 | } | ||
| 210 | break; | ||
| 211 | case M_LW: | ||
| 212 | if (record->event.pressed) { | ||
| 213 | layer_on(_LW); | ||
| 214 | update_tri_layer(_LW, _RS, _AD); | ||
| 215 | } else { | ||
| 216 | layer_off(_LW); | ||
| 217 | update_tri_layer(_LW, _RS, _AD); | ||
| 218 | } | ||
| 219 | break; | ||
| 220 | case M_RS: | ||
| 221 | if (record->event.pressed) { | ||
| 222 | layer_on(_RS); | ||
| 223 | update_tri_layer(_LW, _RS, _AD); | ||
| 224 | } else { | ||
| 225 | layer_off(_RS); | ||
| 226 | update_tri_layer(_LW, _RS, _AD); | ||
| 227 | } | ||
| 228 | break; | ||
| 229 | case M_BL: | ||
| 125 | if (record->event.pressed) { | 230 | if (record->event.pressed) { |
| 126 | register_code(KC_RSFT); | 231 | register_code(KC_RSFT); |
| 127 | #ifdef BACKLIGHT_ENABLE | 232 | #ifdef BACKLIGHT_ENABLE |
| @@ -134,3 +239,16 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | |||
| 134 | } | 239 | } |
| 135 | return MACRO_NONE; | 240 | return MACRO_NONE; |
| 136 | }; | 241 | }; |
| 242 | |||
| 243 | float start_up[][2] = { | ||
| 244 | {440.0*pow(2.0,(67)/12.0), 650}, | ||
| 245 | {440.0*pow(2.0,(64)/12.0), 450}, | ||
| 246 | {440.0*pow(2.0,(55)/12.0), 450}, | ||
| 247 | {440.0*pow(2.0,(60)/12.0), 450}, | ||
| 248 | {440.0*pow(2.0,(64)/12.0), 1000} | ||
| 249 | }; | ||
| 250 | |||
| 251 | void matrix_init_user(void) { | ||
| 252 | init_notes(); | ||
| 253 | play_notes(&start_up, 5, false); | ||
| 254 | } | ||
