Mercurial > crkbdyaz
annotate keymap.c @ 5:eea4ee4ebb93 draft
- move back cursor keys to _RAISE layer
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Mon, 18 Feb 2019 13:13:40 +0900 |
parents | 7e09639847e1 |
children | 7b9e0c974769 |
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) | |
3
4bc0df3a6934
- assign tab to basic layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
2
diff
changeset
|
68 #define KC_CLESC 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 //,-----------------------------------------. ,-----------------------------------------. | |
3
4bc0df3a6934
- assign tab to basic layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
2
diff
changeset
|
91 TAB, Q, W, E, R, T, Y, U, I, O, P, MINS,\ |
0 | 92 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
3
4bc0df3a6934
- assign tab to basic layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
2
diff
changeset
|
93 CLESC, A, S, D, F, G, H, J, K, L, SCLN, QUOT,\ |
0 | 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 //,-----------------------------------------. ,-----------------------------------------. | |
3
4bc0df3a6934
- assign tab to basic layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
2
diff
changeset
|
103 TAB, Q, W, E, R, T, Y, U, I, O, P, MINS,\ |
2 | 104 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
3
4bc0df3a6934
- assign tab to basic layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
2
diff
changeset
|
105 CLESC, A, S, D, F, G, H, J, K, L, SCLN, QUOT,\ |
2 | 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 //,-----------------------------------------. ,-----------------------------------------. | |
4 | 115 PLUS, EXLM, AT, HASH, DLR, PERC, CIRC, AMPR, ASTR, LPRN, RPRN, BSLS,\ |
0 | 116 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
5
eea4ee4ebb93
- move back cursor keys to _RAISE layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
4
diff
changeset
|
117 CTLTB, LTAB, RTAB, LSPC, RSPC, USPC, XXXXX, LCBR, RCBR, LBRC, RBRC, PIPE,\ |
0 | 118 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
5
eea4ee4ebb93
- move back cursor keys to _RAISE layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
4
diff
changeset
|
119 LSFT, GRV, TILD, XXXXX, XXXXX, DSPC, XXXXX, LT, GT, LCBR, RCBR, RSFT,\ |
0 | 120 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
2 | 121 LOWER, SPC, LALT, ENT, BSPC, RAISE \ |
0 | 122 //`--------------------' `--------------------' |
123 ), | |
124 | |
125 [_RAISE] = LAYOUT_kc( \ | |
126 //,-----------------------------------------. ,-----------------------------------------. | |
5
eea4ee4ebb93
- move back cursor keys to _RAISE layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
4
diff
changeset
|
127 EQL, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, BSLS,\ |
0 | 128 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
5
eea4ee4ebb93
- move back cursor keys to _RAISE layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
4
diff
changeset
|
129 CTLTB, XXXXX, WH_U, MS_U, WH_D, BTN1, HOME, PGUP, UP, PGDN, XXXXX, PIPE,\ |
0 | 130 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
5
eea4ee4ebb93
- move back cursor keys to _RAISE layer
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
4
diff
changeset
|
131 LSFT, BTN3, MS_L, MS_D, MS_R, BTN2, END, LEFT, DOWN, RIGHT, XXXXX, RSFT,\ |
0 | 132 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
2 | 133 LOWER, SPC, LALT, ENT, BSPC, RAISE \ |
0 | 134 //`--------------------' `--------------------' |
135 ), | |
136 | |
137 [_ADJUST] = LAYOUT_kc( \ | |
138 //,-----------------------------------------. ,-----------------------------------------. | |
4 | 139 F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12,\ |
0 | 140 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
4 | 141 XXXXX, SSCR, SWIN, XXXXX, XXXXX, XXXXX, XXXXX, MUTE, VOLD, VOLU, XXXXX, XXXXX,\ |
0 | 142 //|------+------+------+------+------+------| |------+------+------+------+------+------| |
4 | 143 RST, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, MRWD, MPLY, MFFD, XXXXX, RST,\ |
0 | 144 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
2 | 145 LOWER, SPC, LALT, ENT, BSPC, RAISE \ |
0 | 146 //`--------------------' `--------------------' |
147 ) | |
4 | 148 |
2 | 149 #if 0 |
150 [_MAC] = LAYOUT_kc( \ | |
151 //,-----------------------------------------. ,-----------------------------------------. | |
152 _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\ | |
153 //|------+------+------+------+------+------| |------+------+------+------+------+------| | |
154 _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\ | |
155 //|------+------+------+------+------+------| |------+------+------+------+------+------| | |
156 _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\ | |
157 //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | |
158 _____, _____, LGUI, _____, _____, _____,\ | |
159 //`--------------------' `--------------------' | |
160 ) | |
161 #endif | |
4 | 162 |
0 | 163 }; |
164 | |
165 int RGB_current_mode; | |
166 | |
167 void persistent_default_layer_set(uint16_t default_layer) { | |
168 eeconfig_update_default_layer(default_layer); | |
169 default_layer_set(default_layer); | |
170 } | |
171 | |
172 // Setting ADJUST layer RGB back to default | |
173 void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) { | |
174 if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) { | |
175 layer_on(layer3); | |
176 } else { | |
177 layer_off(layer3); | |
178 } | |
179 } | |
180 | |
181 void matrix_init_user(void) { | |
182 #ifdef RGBLIGHT_ENABLE | |
183 RGB_current_mode = rgblight_config.mode; | |
184 #endif | |
185 //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h | |
186 #ifdef SSD1306OLED | |
187 iota_gfx_init(!has_usb()); // turns on the display | |
188 #endif | |
189 } | |
190 | |
191 //SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h | |
192 #ifdef SSD1306OLED | |
193 | |
194 // When add source files to SRC in rules.mk, you can use functions. | |
195 const char *read_layer_state(void); | |
196 const char *read_logo(void); | |
197 void set_keylog(uint16_t keycode, keyrecord_t *record); | |
198 const char *read_keylog(void); | |
199 const char *read_keylogs(void); | |
200 | |
201 // const char *read_mode_icon(bool swap); | |
202 // const char *read_host_led_state(void); | |
203 // void set_timelog(void); | |
204 // const char *read_timelog(void); | |
205 | |
206 void matrix_scan_user(void) { | |
207 iota_gfx_task(); | |
208 } | |
209 | |
210 void matrix_render_user(struct CharacterMatrix *matrix) { | |
211 if (is_master) { | |
212 // If you want to change the display of OLED, you need to change here | |
213 matrix_write_ln(matrix, read_layer_state()); | |
214 matrix_write_ln(matrix, read_keylog()); | |
215 matrix_write_ln(matrix, read_keylogs()); | |
216 //matrix_write_ln(matrix, read_mode_icon(keymap_config.swap_lalt_lgui)); | |
217 //matrix_write_ln(matrix, read_host_led_state()); | |
218 //matrix_write_ln(matrix, read_timelog()); | |
219 } else { | |
220 matrix_write(matrix, read_logo()); | |
221 } | |
222 } | |
223 | |
224 void matrix_update(struct CharacterMatrix *dest, const struct CharacterMatrix *source) { | |
225 if (memcmp(dest->display, source->display, sizeof(dest->display))) { | |
226 memcpy(dest->display, source->display, sizeof(dest->display)); | |
227 dest->dirty = true; | |
228 } | |
229 } | |
230 | |
231 void iota_gfx_task_user(void) { | |
232 struct CharacterMatrix matrix; | |
233 matrix_clear(&matrix); | |
234 matrix_render_user(&matrix); | |
235 matrix_update(&display, &matrix); | |
236 } | |
237 #endif//SSD1306OLED | |
238 | |
239 bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |
240 if (record->event.pressed) { | |
241 #ifdef SSD1306OLED | |
242 set_keylog(keycode, record); | |
243 #endif | |
244 // set_timelog(); | |
245 } | |
246 | |
247 switch (keycode) { | |
248 case QWERTY: | |
249 if (record->event.pressed) { | |
250 persistent_default_layer_set(1UL<<_QWERTY); | |
251 } | |
252 return false; | |
253 break; | |
254 case LOWER: | |
255 if (record->event.pressed) { | |
256 layer_on(_LOWER); | |
257 update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST); | |
258 } else { | |
259 layer_off(_LOWER); | |
260 update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST); | |
261 } | |
262 return false; | |
263 break; | |
264 case RAISE: | |
265 if (record->event.pressed) { | |
266 layer_on(_RAISE); | |
267 update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST); | |
268 } else { | |
269 layer_off(_RAISE); | |
270 update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST); | |
271 } | |
272 return false; | |
273 break; | |
274 case ADJUST: | |
275 if (record->event.pressed) { | |
276 layer_on(_ADJUST); | |
277 } else { | |
278 layer_off(_ADJUST); | |
279 } | |
280 return false; | |
281 break; | |
282 case RGB_MOD: | |
283 #ifdef RGBLIGHT_ENABLE | |
284 if (record->event.pressed) { | |
285 rgblight_mode(RGB_current_mode); | |
286 rgblight_step(); | |
287 RGB_current_mode = rgblight_config.mode; | |
288 } | |
289 #endif | |
290 return false; | |
291 break; | |
292 case RGBRST: | |
293 #ifdef RGBLIGHT_ENABLE | |
294 if (record->event.pressed) { | |
295 eeconfig_update_rgblight_default(); | |
296 rgblight_enable(); | |
297 RGB_current_mode = rgblight_config.mode; | |
298 } | |
299 #endif | |
300 break; | |
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
301 case RTAB: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
302 //ctrl-tab |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
303 if(record->event.pressed) { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
304 SEND_STRING(SS_LCTRL(SS_TAP(X_TAB))); |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
305 } |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
306 break; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
307 case LTAB: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
308 //ctrl-shift-tab |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
309 if(record->event.pressed) { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
310 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
|
311 } |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
312 break; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
313 case RSPC: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
314 //ctrl-right |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
315 if(record->event.pressed) { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
316 SEND_STRING(SS_LCTRL(SS_TAP(X_RIGHT))); |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
317 } |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
318 break; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
319 case LSPC: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
320 //ctrl-left |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
321 if(record->event.pressed) { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
322 SEND_STRING(SS_LCTRL(SS_TAP(X_LEFT))); |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
323 } |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
324 break; |
2 | 325 case USPC: |
326 //ctrl-up | |
327 if(record->event.pressed) { | |
328 SEND_STRING(SS_LCTRL(SS_TAP(X_UP))); | |
329 } | |
330 break; | |
331 case DSPC: | |
332 //ctrl-down | |
333 if(record->event.pressed) { | |
334 SEND_STRING(SS_LCTRL(SS_TAP(X_DOWN))); | |
335 } | |
336 break; | |
1
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
337 case SSCR: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
338 //shift-cmd-3 |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
339 if(record->event.pressed) { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
340 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
|
341 } |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
342 break; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
343 case SWIN: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
344 //shift-cmd-4 |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
345 if(record->event.pressed) { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
346 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
|
347 } |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
348 break; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
349 case NAPP: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
350 //cmd-tab |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
351 if(record->event.pressed) { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
352 SEND_STRING(SS_RGUI(SS_TAP(X_TAB))); |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
353 } |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
354 break; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
355 case NWIN: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
356 //cmd-grave |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
357 if(record->event.pressed) { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
358 SEND_STRING(SS_RGUI(SS_TAP(X_GRAVE))); |
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 break; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
361 |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
362 #if 0 |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
363 case _ENTER: |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
364 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
|
365 SEND_STRING ("string"); |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
366 } else { |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
367 SEND_STRING (SS_TAP(X_ENTER)); |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
368 } |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
369 return false; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
370 break; |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
371 #endif |
366930ab82c7
- enable features: EXTRAKEY_ENABLE,NKRO_ENABLE
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
372 |
0 | 373 } |
374 return true; | |
375 } | |
376 |