Mercurial > crkbdyaz
annotate keymap.c @ 2:ef0cbe565d18 draft
- enable bootmagic full
- add mac layer
- add macros: USPC,DSPC
| author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
|---|---|
| date | Tue, 12 Feb 2019 11:26:56 +0900 |
| parents | 366930ab82c7 |
| children | 4bc0df3a6934 |
| rev | line source |
|---|---|
| 0 | 1 #include QMK_KEYBOARD_H |
| 2 #include "bootloader.h" | |
| 3 #ifdef PROTOCOL_LUFA | |
| 4 #include "lufa.h" | |
| 5 #include "split_util.h" | |
| 6 #endif | |
| 7 #ifdef SSD1306OLED | |
| 8 #include "ssd1306.h" | |
| 9 #endif | |
| 10 | |
| 11 extern keymap_config_t keymap_config; | |
| 12 | |
| 13 #ifdef RGBLIGHT_ENABLE | |
| 14 //Following line allows macro to read current RGB settings | |
| 15 extern rgblight_config_t rgblight_config; | |
| 16 #endif | |
| 17 | |
| 18 extern uint8_t is_master; | |
| 19 | |
| 20 // Each layer gets a name for readability, which is then used in the keymap matrix below. | |
| 21 // The underscores don't mean anything - you can have a layer called STUFF or any other name. | |
| 22 // Layer names don't all need to be of the same length, obviously, and you can also skip them | |
| 23 // entirely and just use numbers. | |
| 24 #define _QWERTY 0 | |
| 2 | 25 #define _MAC 1 |
| 0 | 26 #define _LOWER 3 |
| 27 #define _RAISE 4 | |
| 28 #define _ADJUST 16 | |
| 29 | |
| 30 enum custom_keycodes { | |
| 31 QWERTY = SAFE_RANGE, | |
| 32 LOWER, | |
| 33 RAISE, | |
| 34 ADJUST, | |
| 35 BACKLIT, | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
36 RGBRST, |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
37 RTAB, |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
38 LTAB, |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
39 RSPC, |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
40 LSPC, |
| 2 | 41 USPC, |
| 42 DSPC, | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
43 SSCR, |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
44 SWIN, |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
45 NAPP, |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
46 NWIN |
| 0 | 47 }; |
| 48 | |
| 49 enum macro_keycodes { | |
| 50 KC_SAMPLEMACRO, | |
| 51 }; | |
| 52 | |
| 53 #define KC______ KC_TRNS | |
| 54 #define KC_XXXXX KC_NO | |
| 55 #define KC_LOWER LOWER | |
| 56 #define KC_RAISE RAISE | |
| 57 #define KC_RST RESET | |
| 58 #define KC_LRST RGBRST | |
| 59 #define KC_LTOG RGB_TOG | |
| 60 #define KC_LHUI RGB_HUI | |
| 61 #define KC_LHUD RGB_HUD | |
| 62 #define KC_LSAI RGB_SAI | |
| 63 #define KC_LSAD RGB_SAD | |
| 64 #define KC_LVAI RGB_VAI | |
| 65 #define KC_LVAD RGB_VAD | |
| 66 #define KC_LMOD RGB_MOD | |
| 67 #define KC_CTLTB CTL_T(KC_TAB) | |
| 2 | 68 #define KC_CTLESC CTL_T(KC_ESC) |
| 0 | 69 #define KC_GUIEI GUI_T(KC_LANG2) |
| 70 #define KC_ALTKN ALT_T(KC_LANG1) | |
| 71 | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
72 #define KC_RTAB RTAB |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
73 #define KC_LTAB LTAB |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
74 #define KC_RSPC RSPC |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
75 #define KC_LSPC LSPC |
| 2 | 76 #define KC_USPC USPC |
| 77 #define KC_DSPC DSPC | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
78 #define KC_SSCR SSCR |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
79 #define KC_SWIN SWIN |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
80 #define KC_NAPP NAPP |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
81 #define KC_NWIN NWIN |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
82 |
| 2 | 83 |
| 84 | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
85 #define SS_RGUI(string) SS_DOWN(X_RGUI) string SS_UP(X_RGUI) |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
86 |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
87 |
| 0 | 88 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 89 [_QWERTY] = LAYOUT_kc( \ | |
| 90 //,-----------------------------------------. ,-----------------------------------------. | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
91 ESC, Q, W, E, R, T, Y, U, I, O, P, MINS,\ |
| 0 | 92 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
| 93 CTLTB, A, S, D, F, G, H, J, K, L, SCLN, QUOT,\ | |
| 94 //|------+------+------+------+------+------| |------+------+------+------+------+------| | |
| 95 LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT,\ | |
| 96 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | |
| 2 | 97 LOWER, SPC, LALT, ENT, BSPC, RAISE \ |
| 98 //`--------------------' `--------------------' | |
| 99 ), | |
| 100 | |
| 101 [_MAC] = LAYOUT_kc( \ | |
| 102 //,-----------------------------------------. ,-----------------------------------------. | |
| 103 ESC, Q, W, E, R, T, Y, U, I, O, P, MINS,\ | |
| 104 //|------+------+------+------+------+------| |------+------+------+------+------+------| | |
| 105 CTLTB, A, S, D, F, G, H, J, K, L, SCLN, QUOT,\ | |
| 106 //|------+------+------+------+------+------| |------+------+------+------+------+------| | |
| 107 LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT,\ | |
| 108 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
109 LOWER, SPC, LGUI, ENT, BSPC, RAISE \ |
| 0 | 110 //`--------------------' `--------------------' |
| 111 ), | |
| 112 | |
| 113 [_LOWER] = LAYOUT_kc( \ | |
| 114 //,-----------------------------------------. ,-----------------------------------------. | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
115 EQL, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, BSLS,\ |
| 0 | 116 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
117 CTLTB, F1, F2, F3, F4, F5, PGUP, LEFT, DOWN, UP, RIGHT, XXXXX, \ |
| 0 | 118 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
119 LSFT, F6, F7, F8, F9, F10, PGDN, HOME, END, F11, F12, RSFT, \ |
| 0 | 120 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
| 2 | 121 LOWER, SPC, LALT, ENT, BSPC, RAISE \ |
| 0 | 122 //`--------------------' `--------------------' |
| 123 ), | |
| 124 | |
| 125 [_RAISE] = LAYOUT_kc( \ | |
| 126 //,-----------------------------------------. ,-----------------------------------------. | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
127 PLUS, EXLM, AT, HASH, DLR, PERC, CIRC, AMPR, ASTR, LPRN, RPRN, PIPE,\ |
| 0 | 128 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
129 CTLTB, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, LCBR, RCBR, XXXXX, \ |
| 0 | 130 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
131 LSFT, GRV, TILD, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, LBRC, RBRC, RSFT,\ |
| 0 | 132 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
| 2 | 133 LOWER, SPC, LALT, ENT, BSPC, RAISE \ |
| 0 | 134 //`--------------------' `--------------------' |
| 135 ), | |
| 136 | |
| 137 [_ADJUST] = LAYOUT_kc( \ | |
| 138 //,-----------------------------------------. ,-----------------------------------------. | |
| 2 | 139 RST, SSCR, SWIN, XXXXX, USPC, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, RST,\ |
| 0 | 140 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
141 XXXXX, LTAB, RTAB, LSPC, RSPC, NAPP, XXXXX, MUTE, VOLD, VOLU, XXXXX, XXXXX,\ |
| 0 | 142 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
| 2 | 143 XXXXX, XXXXX, XXXXX, XXXXX, DSPC, NWIN, XXXXX, MRWD, MPLY, MFFD, XXXXX, XXXXX,\ |
| 0 | 144 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
| 2 | 145 LOWER, SPC, LALT, ENT, BSPC, RAISE \ |
| 0 | 146 //`--------------------' `--------------------' |
| 147 ) | |
| 2 | 148 #if 0 |
| 149 [_MAC] = LAYOUT_kc( \ | |
| 150 //,-----------------------------------------. ,-----------------------------------------. | |
| 151 _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\ | |
| 152 //|------+------+------+------+------+------| |------+------+------+------+------+------| | |
| 153 _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\ | |
| 154 //|------+------+------+------+------+------| |------+------+------+------+------+------| | |
| 155 _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\ | |
| 156 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | |
| 157 _____, _____, LGUI, _____, _____, _____,\ | |
| 158 //`--------------------' `--------------------' | |
| 159 ) | |
| 160 #endif | |
| 0 | 161 }; |
| 162 | |
| 163 int RGB_current_mode; | |
| 164 | |
| 165 void persistent_default_layer_set(uint16_t default_layer) { | |
| 166 eeconfig_update_default_layer(default_layer); | |
| 167 default_layer_set(default_layer); | |
| 168 } | |
| 169 | |
| 170 // Setting ADJUST layer RGB back to default | |
| 171 void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) { | |
| 172 if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) { | |
| 173 layer_on(layer3); | |
| 174 } else { | |
| 175 layer_off(layer3); | |
| 176 } | |
| 177 } | |
| 178 | |
| 179 void matrix_init_user(void) { | |
| 180 #ifdef RGBLIGHT_ENABLE | |
| 181 RGB_current_mode = rgblight_config.mode; | |
| 182 #endif | |
| 183 //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h | |
| 184 #ifdef SSD1306OLED | |
| 185 iota_gfx_init(!has_usb()); // turns on the display | |
| 186 #endif | |
| 187 } | |
| 188 | |
| 189 //SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h | |
| 190 #ifdef SSD1306OLED | |
| 191 | |
| 192 // When add source files to SRC in rules.mk, you can use functions. | |
| 193 const char *read_layer_state(void); | |
| 194 const char *read_logo(void); | |
| 195 void set_keylog(uint16_t keycode, keyrecord_t *record); | |
| 196 const char *read_keylog(void); | |
| 197 const char *read_keylogs(void); | |
| 198 | |
| 199 // const char *read_mode_icon(bool swap); | |
| 200 // const char *read_host_led_state(void); | |
| 201 // void set_timelog(void); | |
| 202 // const char *read_timelog(void); | |
| 203 | |
| 204 void matrix_scan_user(void) { | |
| 205 iota_gfx_task(); | |
| 206 } | |
| 207 | |
| 208 void matrix_render_user(struct CharacterMatrix *matrix) { | |
| 209 if (is_master) { | |
| 210 // If you want to change the display of OLED, you need to change here | |
| 211 matrix_write_ln(matrix, read_layer_state()); | |
| 212 matrix_write_ln(matrix, read_keylog()); | |
| 213 matrix_write_ln(matrix, read_keylogs()); | |
| 214 //matrix_write_ln(matrix, read_mode_icon(keymap_config.swap_lalt_lgui)); | |
| 215 //matrix_write_ln(matrix, read_host_led_state()); | |
| 216 //matrix_write_ln(matrix, read_timelog()); | |
| 217 } else { | |
| 218 matrix_write(matrix, read_logo()); | |
| 219 } | |
| 220 } | |
| 221 | |
| 222 void matrix_update(struct CharacterMatrix *dest, const struct CharacterMatrix *source) { | |
| 223 if (memcmp(dest->display, source->display, sizeof(dest->display))) { | |
| 224 memcpy(dest->display, source->display, sizeof(dest->display)); | |
| 225 dest->dirty = true; | |
| 226 } | |
| 227 } | |
| 228 | |
| 229 void iota_gfx_task_user(void) { | |
| 230 struct CharacterMatrix matrix; | |
| 231 matrix_clear(&matrix); | |
| 232 matrix_render_user(&matrix); | |
| 233 matrix_update(&display, &matrix); | |
| 234 } | |
| 235 #endif//SSD1306OLED | |
| 236 | |
| 237 bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |
| 238 if (record->event.pressed) { | |
| 239 #ifdef SSD1306OLED | |
| 240 set_keylog(keycode, record); | |
| 241 #endif | |
| 242 // set_timelog(); | |
| 243 } | |
| 244 | |
| 245 switch (keycode) { | |
| 246 case QWERTY: | |
| 247 if (record->event.pressed) { | |
| 248 persistent_default_layer_set(1UL<<_QWERTY); | |
| 249 } | |
| 250 return false; | |
| 251 break; | |
| 252 case LOWER: | |
| 253 if (record->event.pressed) { | |
| 254 layer_on(_LOWER); | |
| 255 update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST); | |
| 256 } else { | |
| 257 layer_off(_LOWER); | |
| 258 update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST); | |
| 259 } | |
| 260 return false; | |
| 261 break; | |
| 262 case RAISE: | |
| 263 if (record->event.pressed) { | |
| 264 layer_on(_RAISE); | |
| 265 update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST); | |
| 266 } else { | |
| 267 layer_off(_RAISE); | |
| 268 update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST); | |
| 269 } | |
| 270 return false; | |
| 271 break; | |
| 272 case ADJUST: | |
| 273 if (record->event.pressed) { | |
| 274 layer_on(_ADJUST); | |
| 275 } else { | |
| 276 layer_off(_ADJUST); | |
| 277 } | |
| 278 return false; | |
| 279 break; | |
| 280 case RGB_MOD: | |
| 281 #ifdef RGBLIGHT_ENABLE | |
| 282 if (record->event.pressed) { | |
| 283 rgblight_mode(RGB_current_mode); | |
| 284 rgblight_step(); | |
| 285 RGB_current_mode = rgblight_config.mode; | |
| 286 } | |
| 287 #endif | |
| 288 return false; | |
| 289 break; | |
| 290 case RGBRST: | |
| 291 #ifdef RGBLIGHT_ENABLE | |
| 292 if (record->event.pressed) { | |
| 293 eeconfig_update_rgblight_default(); | |
| 294 rgblight_enable(); | |
| 295 RGB_current_mode = rgblight_config.mode; | |
| 296 } | |
| 297 #endif | |
| 298 break; | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
299 case RTAB: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
300 //ctrl-tab |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
301 if(record->event.pressed) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
302 SEND_STRING(SS_LCTRL(SS_TAP(X_TAB))); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
303 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
304 break; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
305 case LTAB: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
306 //ctrl-shift-tab |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
307 if(record->event.pressed) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
308 SEND_STRING(SS_LSFT(SS_LCTRL(SS_TAP(X_TAB)))); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
309 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
310 break; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
311 case RSPC: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
312 //ctrl-right |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
313 if(record->event.pressed) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
314 SEND_STRING(SS_LCTRL(SS_TAP(X_RIGHT))); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
315 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
316 break; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
317 case LSPC: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
318 //ctrl-left |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
319 if(record->event.pressed) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
320 SEND_STRING(SS_LCTRL(SS_TAP(X_LEFT))); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
321 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
322 break; |
| 2 | 323 case USPC: |
| 324 //ctrl-up | |
| 325 if(record->event.pressed) { | |
| 326 SEND_STRING(SS_LCTRL(SS_TAP(X_UP))); | |
| 327 } | |
| 328 break; | |
| 329 case DSPC: | |
| 330 //ctrl-down | |
| 331 if(record->event.pressed) { | |
| 332 SEND_STRING(SS_LCTRL(SS_TAP(X_DOWN))); | |
| 333 } | |
| 334 break; | |
|
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
335 case SSCR: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
336 //shift-cmd-3 |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
337 if(record->event.pressed) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
338 SEND_STRING(SS_LSFT(SS_LGUI(SS_TAP(X_3)))); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
339 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
340 break; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
341 case SWIN: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
342 //shift-cmd-4 |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
343 if(record->event.pressed) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
344 SEND_STRING(SS_LSFT(SS_LGUI(SS_TAP(X_4)))); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
345 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
346 break; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
347 case NAPP: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
348 //cmd-tab |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
349 if(record->event.pressed) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
350 SEND_STRING(SS_RGUI(SS_TAP(X_TAB))); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
351 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
352 break; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
353 case NWIN: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
354 //cmd-grave |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
355 if(record->event.pressed) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
356 SEND_STRING(SS_RGUI(SS_TAP(X_GRAVE))); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
357 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
358 break; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
359 |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
360 #if 0 |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
361 case _ENTER: |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
362 if (record->event.pressed && get_mods() & MOD_BIT(KC_HYPR)) { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
363 SEND_STRING ("string"); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
364 } else { |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
365 SEND_STRING (SS_TAP(X_ENTER)); |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
366 } |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
367 return false; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
368 break; |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
369 #endif |
|
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
370 |
| 0 | 371 } |
| 372 return true; | |
| 373 } | |
| 374 |
