diff options
Diffstat (limited to 'layouts/community/ergodox/deadcyclo/keymap.c')
-rw-r--r-- | layouts/community/ergodox/deadcyclo/keymap.c | 371 |
1 files changed, 97 insertions, 274 deletions
diff --git a/layouts/community/ergodox/deadcyclo/keymap.c b/layouts/community/ergodox/deadcyclo/keymap.c index 0ae1ef7fb..345e25e03 100644 --- a/layouts/community/ergodox/deadcyclo/keymap.c +++ b/layouts/community/ergodox/deadcyclo/keymap.c | |||
@@ -1,6 +1,4 @@ | |||
1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
2 | #include "debug.h" | ||
3 | #include "action_layer.h" | ||
4 | #include "version.h" | 2 | #include "version.h" |
5 | 3 | ||
6 | #define BASE 0 // default layer | 4 | #define BASE 0 // default layer |
@@ -9,45 +7,19 @@ | |||
9 | #define UNI 3 // unicode 1 | 7 | #define UNI 3 // unicode 1 |
10 | #define UNI2 4 // unicode 2 | 8 | #define UNI2 4 // unicode 2 |
11 | 9 | ||
12 | enum macros { | 10 | enum custom_keycodes { |
13 | RUN | 11 | I3_RUN = SAFE_RANGE, |
14 | }; | ||
15 | |||
16 | enum function_ids { | ||
17 | EMOJI, | ||
18 | EMOJI2, | ||
19 | EPRM, | ||
20 | VRSN, | 12 | VRSN, |
21 | RGB_SLD, | 13 | I3_GO_GROUP_1, |
22 | GO_GROUP | 14 | I3_GO_GROUP_2, |
23 | }; | 15 | I3_GO_GROUP_3, |
24 | 16 | I3_GO_GROUP_4, | |
25 | /* opt can only be 0-15 */ | 17 | I3_GO_GROUP_5, |
26 | enum emojis { | 18 | I3_GO_GROUP_6, |
27 | SHRUG, | 19 | I3_GO_GROUP_7, |
28 | YAY, | 20 | I3_GO_GROUP_8, |
29 | HUG, | 21 | I3_GO_GROUP_9, |
30 | SMILE, | 22 | I3_GO_GROUP_10, |
31 | SMILE2, | ||
32 | HMM1, | ||
33 | HMM2, | ||
34 | BEAR1, | ||
35 | BEAR2, | ||
36 | FUU, | ||
37 | EGGY1, | ||
38 | EGGY2, | ||
39 | FACE1, | ||
40 | FACE2, | ||
41 | UHU, | ||
42 | SMRK1 | ||
43 | }; | ||
44 | |||
45 | enum emojis2 { | ||
46 | SMRK2, | ||
47 | LOVE | ||
48 | }; | ||
49 | |||
50 | enum progmem_ids { | ||
51 | EMOJI_SHRUG, | 23 | EMOJI_SHRUG, |
52 | EMOJI_YAY, | 24 | EMOJI_YAY, |
53 | EMOJI_HUG, | 25 | EMOJI_HUG, |
@@ -65,20 +37,7 @@ enum progmem_ids { | |||
65 | EMOJI_UHU, | 37 | EMOJI_UHU, |
66 | EMOJI_SMRK1, | 38 | EMOJI_SMRK1, |
67 | EMOJI_SMRK2, | 39 | EMOJI_SMRK2, |
68 | EMOJI_LOVE, | 40 | EMOJI_LOVE |
69 | F_EPRM, | ||
70 | F_VRSN, | ||
71 | F_RGB_SLD, | ||
72 | I3_GO_GROUP_10, | ||
73 | I3_GO_GROUP_1, | ||
74 | I3_GO_GROUP_2, | ||
75 | I3_GO_GROUP_3, | ||
76 | I3_GO_GROUP_4, | ||
77 | I3_GO_GROUP_5, | ||
78 | I3_GO_GROUP_6, | ||
79 | I3_GO_GROUP_7, | ||
80 | I3_GO_GROUP_8, | ||
81 | I3_GO_GROUP_9, | ||
82 | }; | 41 | }; |
83 | 42 | ||
84 | // TODO: Finish the macros for i3 (Macros should potentially be own function instead to make things easier? some of them at least, f. ex. the ones that use 1-0 keys so we can have a single switch) | 43 | // TODO: Finish the macros for i3 (Macros should potentially be own function instead to make things easier? some of them at least, f. ex. the ones that use 1-0 keys so we can have a single switch) |
@@ -163,7 +122,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
163 | KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, | 122 | KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, |
164 | KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, | 123 | KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, |
165 | RGB_TOG,RGB_MOD, | 124 | RGB_TOG,RGB_MOD, |
166 | F(F_RGB_SLD), | 125 | RGB_M_P, |
167 | RGB_VAD,RGB_VAI,KC_TRNS, | 126 | RGB_VAD,RGB_VAI,KC_TRNS, |
168 | // right hand | 127 | // right hand |
169 | KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, | 128 | KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, |
@@ -173,7 +132,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
173 | KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, | 132 | KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, |
174 | RGB_HUD, RGB_HUI, | 133 | RGB_HUD, RGB_HUI, |
175 | KC_TRNS, | 134 | KC_TRNS, |
176 | F(F_EPRM), KC_DEL, KC_TRNS | 135 | EEP_RST, KC_DEL, KC_TRNS |
177 | ), | 136 | ), |
178 | /* Keymap 2: Media, mouse and navigation | 137 | /* Keymap 2: Media, mouse and navigation |
179 | * | 138 | * |
@@ -198,8 +157,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
198 | */ | 157 | */ |
199 | // MEDIA , MOUSE and NAVIGATION | 158 | // MEDIA , MOUSE and NAVIGATION |
200 | [MDIA] = LAYOUT_ergodox( | 159 | [MDIA] = LAYOUT_ergodox( |
201 | KC_TRNS, F(I3_GO_GROUP_1), F(I3_GO_GROUP_2), F(I3_GO_GROUP_3), F(I3_GO_GROUP_4), F(I3_GO_GROUP_5), F(I3_GO_GROUP_6), | 160 | KC_TRNS, I3_GO_GROUP_1, I3_GO_GROUP_2, I3_GO_GROUP_3, I3_GO_GROUP_4, I3_GO_GROUP_5, I3_GO_GROUP_6, |
202 | KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, KC_TRNS, | 161 | KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, I3_RUN, KC_TRNS, KC_TRNS, |
203 | KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, | 162 | KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, |
204 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | 163 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, |
205 | KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, | 164 | KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, |
@@ -207,7 +166,7 @@ KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, KC_TRNS, | |||
207 | KC_TRNS, | 166 | KC_TRNS, |
208 | KC_TRNS, KC_TRNS, KC_TRNS, | 167 | KC_TRNS, KC_TRNS, KC_TRNS, |
209 | // right hand | 168 | // right hand |
210 | F(I3_GO_GROUP_6), F(I3_GO_GROUP_7), F(I3_GO_GROUP_8), F(I3_GO_GROUP_9), F(I3_GO_GROUP_10), KC_TRNS, KC_TRNS, | 169 | I3_GO_GROUP_6, I3_GO_GROUP_7, I3_GO_GROUP_8, I3_GO_GROUP_9, I3_GO_GROUP_10, KC_TRNS, KC_TRNS, |
211 | KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, | 170 | KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, |
212 | KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_MPLY, | 171 | KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_MPLY, |
213 | KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, | 172 | KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, |
@@ -241,10 +200,10 @@ KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, KC_TRNS, | |||
241 | // Unicode | 200 | // Unicode |
242 | [UNI] = LAYOUT_ergodox( | 201 | [UNI] = LAYOUT_ergodox( |
243 | KC_TRNS, UC(0x250c), UC(0x2510), UC(0x2514), UC(0x2518), UC(0x2502), UC(0x2500), | 202 | KC_TRNS, UC(0x250c), UC(0x2510), UC(0x2514), UC(0x2518), UC(0x2502), UC(0x2500), |
244 | KC_TRNS, F(EMOJI_SHRUG), F(EMOJI_YAY), F(EMOJI_HUG), F(EMOJI_SMILE), F(EMOJI_SMILE2), KC_TRNS, | 203 | KC_TRNS, EMOJI_SHRUG, EMOJI_YAY, EMOJI_HUG, EMOJI_SMILE, EMOJI_SMILE2, KC_TRNS, |
245 | KC_TRNS, F(EMOJI_HMM1), F(EMOJI_HMM2), F(EMOJI_BEAR1), F(EMOJI_BEAR2), F(EMOJI_FUU), | 204 | KC_TRNS, EMOJI_HMM1, EMOJI_HMM2, EMOJI_BEAR1, EMOJI_BEAR2, EMOJI_FUU, |
246 | KC_TRNS, F(EMOJI_EGGY1), F(EMOJI_EGGY2), F(EMOJI_FACE1), F(EMOJI_FACE2), F(EMOJI_UHU), KC_TRNS, | 205 | KC_TRNS, EMOJI_EGGY1, EMOJI_EGGY2, EMOJI_FACE1, EMOJI_FACE2, EMOJI_UHU, KC_TRNS, |
247 | KC_TRNS, F(EMOJI_SMRK1), F(EMOJI_SMRK2), F(EMOJI_LOVE), F(F_VRSN), | 206 | KC_TRNS, EMOJI_SMRK1, EMOJI_SMRK2, EMOJI_LOVE, VRSN, |
248 | KC_TRNS, KC_TRNS, | 207 | KC_TRNS, KC_TRNS, |
249 | KC_TRNS, | 208 | KC_TRNS, |
250 | KC_TRNS, KC_TRNS, KC_TRNS, | 209 | KC_TRNS, KC_TRNS, KC_TRNS, |
@@ -302,220 +261,84 @@ KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, M(RUN), KC_TRNS, KC_TRNS, | |||
302 | ), | 261 | ), |
303 | }; | 262 | }; |
304 | 263 | ||
305 | const uint16_t PROGMEM fn_actions[] = { | 264 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
306 | [EMOJI_SHRUG] = ACTION_FUNCTION_OPT(EMOJI, SHRUG), | 265 | if (record->event.pressed) { |
307 | [EMOJI_YAY] = ACTION_FUNCTION_OPT(EMOJI, YAY), | 266 | switch (keycode) { |
308 | [EMOJI_HUG] = ACTION_FUNCTION_OPT(EMOJI,HUG), | 267 | case I3_RUN: |
309 | [EMOJI_SMILE] = ACTION_FUNCTION_OPT(EMOJI,SMILE), | 268 | tap_code16(C(KC_I)); |
310 | [EMOJI_SMILE2] = ACTION_FUNCTION_OPT(EMOJI,SMILE2), | 269 | tap_code(KC_R); |
311 | [EMOJI_HMM1] = ACTION_FUNCTION_OPT(EMOJI,HMM1), | 270 | return false; |
312 | [EMOJI_HMM2] = ACTION_FUNCTION_OPT(EMOJI,HMM2), | 271 | case VRSN: |
313 | [EMOJI_BEAR1] = ACTION_FUNCTION_OPT(EMOJI,BEAR1), | 272 | SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); |
314 | [EMOJI_BEAR2] = ACTION_FUNCTION_OPT(EMOJI,BEAR2), | 273 | return false; |
315 | [EMOJI_FUU] = ACTION_FUNCTION_OPT(EMOJI,FUU), | 274 | case I3_GO_GROUP_1 ... I3_GO_GROUP_10: |
316 | [EMOJI_EGGY1] = ACTION_FUNCTION_OPT(EMOJI,EGGY1), | 275 | tap_code16(C(KC_I)); |
317 | [EMOJI_EGGY2] = ACTION_FUNCTION_OPT(EMOJI,EGGY2), | 276 | tap_code(KC_G); |
318 | [EMOJI_FACE1] = ACTION_FUNCTION_OPT(EMOJI,FACE1), | 277 | if (keycode == I3_GO_GROUP_10) { |
319 | [EMOJI_FACE2] = ACTION_FUNCTION_OPT(EMOJI,FACE2), | 278 | tap_code(KC_0); |
320 | [EMOJI_UHU] = ACTION_FUNCTION_OPT(EMOJI,UHU), | 279 | } else { |
321 | [EMOJI_SMRK1] = ACTION_FUNCTION_OPT(EMOJI,SMRK1), | 280 | tap_code(KC_1 + (keycode - I3_GO_GROUP_1)); |
322 | [EMOJI_SMRK2] = ACTION_FUNCTION_OPT(EMOJI2,SMRK2), | 281 | } |
323 | [EMOJI_LOVE] = ACTION_FUNCTION_OPT(EMOJI2,LOVE), | 282 | return false; |
324 | [F_EPRM] = ACTION_FUNCTION(EPRM), | 283 | case EMOJI_SHRUG: |
325 | [F_VRSN] = ACTION_FUNCTION(VRSN), | 284 | send_unicode_string("¯\\_(ツ)_/¯"); |
326 | [F_RGB_SLD] = ACTION_FUNCTION(RGB_SLD), | 285 | return false; |
327 | [I3_GO_GROUP_10]= ACTION_FUNCTION_OPT(GO_GROUP,0), | 286 | case EMOJI_YAY: |
328 | [I3_GO_GROUP_1] = ACTION_FUNCTION_OPT(GO_GROUP,1), | 287 | SEND_STRING("\\o/"); |
329 | [I3_GO_GROUP_2] = ACTION_FUNCTION_OPT(GO_GROUP,2), | 288 | return false; |
330 | [I3_GO_GROUP_3] = ACTION_FUNCTION_OPT(GO_GROUP,3), | 289 | case EMOJI_HUG: |
331 | [I3_GO_GROUP_4] = ACTION_FUNCTION_OPT(GO_GROUP,4), | 290 | send_unicode_string("༼ つ ◕_◕ ༽つ"); |
332 | [I3_GO_GROUP_5] = ACTION_FUNCTION_OPT(GO_GROUP,5), | 291 | return false; |
333 | [I3_GO_GROUP_6] = ACTION_FUNCTION_OPT(GO_GROUP,6), | 292 | case EMOJI_SMILE: |
334 | [I3_GO_GROUP_7] = ACTION_FUNCTION_OPT(GO_GROUP,7), | 293 | send_unicode_string("ʘ‿ʘ"); |
335 | [I3_GO_GROUP_8] = ACTION_FUNCTION_OPT(GO_GROUP,8), | 294 | return false; |
336 | [I3_GO_GROUP_9] = ACTION_FUNCTION_OPT(GO_GROUP,9), | 295 | case EMOJI_SMILE2: |
337 | }; | 296 | send_unicode_string("(ʘ‿ʘ)"); |
338 | 297 | return false; | |
339 | #define TAP_ONCE(code) \ | 298 | case EMOJI_HMM1: |
340 | register_code (code); \ | 299 | send_unicode_string("ಠ_ಠ"); |
341 | unregister_code (code) | 300 | return false; |
342 | 301 | case EMOJI_HMM2: | |
343 | void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { | 302 | send_unicode_string("(ಠ_ಠ)"); |
344 | if (record->event.pressed) { | 303 | return false; |
345 | switch(id) { | 304 | case EMOJI_BEAR1: |
346 | case EPRM: | 305 | send_unicode_string("ʕ•ᴥ•ʔ"); |
347 | eeconfig_init(); | 306 | return false; |
348 | break; | 307 | case EMOJI_BEAR2: |
349 | case VRSN: | 308 | send_unicode_string("(ᵔᴥᵔ)"); |
350 | SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); | 309 | return false; |
351 | break; | 310 | case EMOJI_FUU: |
352 | case RGB_SLD: | 311 | send_unicode_string("╭∩╮(-_-)╭∩╮"); |
353 | #ifdef RGBLIGHT_ENABLE | 312 | return false; |
354 | rgblight_mode(1); | 313 | case EMOJI_EGGY1: |
355 | #endif | 314 | send_unicode_string("(╯°□°)╯"); |
356 | break; | 315 | return false; |
357 | case GO_GROUP: | 316 | case EMOJI_EGGY2: |
358 | register_code(KC_LCTL); TAP_ONCE(KC_I); unregister_code(KC_LCTL); | 317 | send_unicode_string("ノ( ゜-゜ノ)"); |
359 | TAP_ONCE(KC_G); | 318 | return false; |
360 | if (opt == 0) { | 319 | case EMOJI_FACE1: |
361 | TAP_ONCE(39); | 320 | SEND_STRING("(-_-)"); |
362 | } else { | 321 | return false; |
363 | TAP_ONCE(29+opt); | 322 | case EMOJI_FACE2: |
364 | } | 323 | send_unicode_string("(•_•)"); |
365 | break; | 324 | return false; |
366 | case EMOJI: | 325 | case EMOJI_UHU: |
367 | switch(opt) { | 326 | send_unicode_string("⊙﹏⊙"); |
368 | case SHRUG: | 327 | return false; |
369 | unicode_input_start(); register_hex(0xaf); unicode_input_finish(); | 328 | case EMOJI_SMRK1: |
370 | TAP_ONCE (KC_BSLS); | 329 | send_unicode_string("^̮^"); |
371 | register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); | 330 | return false; |
372 | unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); | 331 | case EMOJI_SMRK2: |
373 | register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); | 332 | send_unicode_string("(^̮^)"); |
374 | TAP_ONCE (KC_SLSH); | 333 | return false; |
375 | unicode_input_start (); register_hex(0xaf); unicode_input_finish(); | 334 | case EMOJI_LOVE: |
376 | break; | 335 | send_unicode_string("♥‿♥"); |
377 | case YAY: | 336 | return false; |
378 | SEND_STRING ("\\o/"); | 337 | } |
379 | break; | ||
380 | case HUG: | ||
381 | unicode_input_start(); register_hex(0x0f3c); unicode_input_finish(); | ||
382 | TAP_ONCE (KC_SPC); | ||
383 | unicode_input_start(); register_hex(0x3064); unicode_input_finish(); | ||
384 | TAP_ONCE (KC_SPC); | ||
385 | unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); | ||
386 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
387 | unicode_input_start(); register_hex(0x25d5); unicode_input_finish(); | ||
388 | TAP_ONCE (KC_SPC); | ||
389 | unicode_input_start(); register_hex(0x0f3d); unicode_input_finish(); | ||
390 | unicode_input_start(); register_hex(0x3064); unicode_input_finish(); | ||
391 | break; | ||
392 | case SMILE: | ||
393 | unicode_input_start(); register_hex(0x0298); unicode_input_finish(); | ||
394 | unicode_input_start(); register_hex(0x203f); unicode_input_finish(); | ||
395 | unicode_input_start(); register_hex(0x0298); unicode_input_finish(); | ||
396 | break; | ||
397 | case SMILE2: | ||
398 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
399 | unicode_input_start(); register_hex(0x0298); unicode_input_finish(); | ||
400 | unicode_input_start(); register_hex(0x203f); unicode_input_finish(); | ||
401 | unicode_input_start(); register_hex(0x0298); unicode_input_finish(); | ||
402 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
403 | break; | ||
404 | case HMM1: | ||
405 | unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); | ||
406 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
407 | unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); | ||
408 | break; | ||
409 | case HMM2: | ||
410 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
411 | unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); | ||
412 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
413 | unicode_input_start(); register_hex(0x0ca0); unicode_input_finish(); | ||
414 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
415 | break; | ||
416 | case BEAR1: | ||
417 | unicode_input_start(); register_hex(0x0295); unicode_input_finish(); | ||
418 | unicode_input_start(); register_hex(0x2022); unicode_input_finish(); | ||
419 | unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); | ||
420 | unicode_input_start(); register_hex(0x2022); unicode_input_finish(); | ||
421 | unicode_input_start(); register_hex(0x0294); unicode_input_finish(); | ||
422 | break; | ||
423 | case BEAR2: | ||
424 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
425 | unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); | ||
426 | unicode_input_start(); register_hex(0x1d25); unicode_input_finish(); | ||
427 | unicode_input_start(); register_hex(0x1d54); unicode_input_finish(); | ||
428 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
429 | break; | ||
430 | case FUU: | ||
431 | unicode_input_start(); register_hex(0x256d); unicode_input_finish(); | ||
432 | unicode_input_start(); register_hex(0x2229); unicode_input_finish(); | ||
433 | unicode_input_start(); register_hex(0x256e); unicode_input_finish(); | ||
434 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
435 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
436 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
437 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
438 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
439 | unicode_input_start(); register_hex(0x256d); unicode_input_finish(); | ||
440 | unicode_input_start(); register_hex(0x2229); unicode_input_finish(); | ||
441 | unicode_input_start(); register_hex(0x256e); unicode_input_finish(); | ||
442 | break; | ||
443 | case EGGY1: | ||
444 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
445 | unicode_input_start(); register_hex(0x256f); unicode_input_finish(); | ||
446 | unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); | ||
447 | unicode_input_start(); register_hex(0x25a1); unicode_input_finish(); | ||
448 | unicode_input_start(); register_hex(0x00b0); unicode_input_finish(); | ||
449 | unicode_input_start(); register_hex(0xff09); unicode_input_finish(); | ||
450 | unicode_input_start(); register_hex(0x256f); unicode_input_finish(); | ||
451 | break; | ||
452 | case EGGY2: | ||
453 | unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); | ||
454 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
455 | unicode_input_start(); register_hex(0x0020); unicode_input_finish(); | ||
456 | unicode_input_start(); register_hex(0x309c); unicode_input_finish(); | ||
457 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
458 | unicode_input_start(); register_hex(0x309c); unicode_input_finish(); | ||
459 | unicode_input_start(); register_hex(0x30ce); unicode_input_finish(); | ||
460 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
461 | break; | ||
462 | case FACE1: | ||
463 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
464 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
465 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
466 | unicode_input_start(); register_hex(0x002d); unicode_input_finish(); | ||
467 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
468 | break; | ||
469 | case FACE2: | ||
470 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
471 | unicode_input_start(); register_hex(0x2022); unicode_input_finish(); | ||
472 | unicode_input_start(); register_hex(0x005f); unicode_input_finish(); | ||
473 | unicode_input_start(); register_hex(0x2022); unicode_input_finish(); | ||
474 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
475 | break; | ||
476 | case UHU: | ||
477 | unicode_input_start(); register_hex(0x2299); unicode_input_finish(); | ||
478 | unicode_input_start(); register_hex(0xfe4f); unicode_input_finish(); | ||
479 | unicode_input_start(); register_hex(0x2299); unicode_input_finish(); | ||
480 | break; | ||
481 | case SMRK1: | ||
482 | unicode_input_start(); register_hex(0x005e); unicode_input_finish(); | ||
483 | unicode_input_start(); register_hex(0x032e); unicode_input_finish(); | ||
484 | unicode_input_start(); register_hex(0x005e); unicode_input_finish(); | ||
485 | break; | ||
486 | } | ||
487 | break; | ||
488 | case EMOJI2: | ||
489 | switch(opt) { | ||
490 | case SMRK2: | ||
491 | unicode_input_start(); register_hex(0x0028); unicode_input_finish(); | ||
492 | unicode_input_start(); register_hex(0x005e); unicode_input_finish(); | ||
493 | unicode_input_start(); register_hex(0x032e); unicode_input_finish(); | ||
494 | unicode_input_start(); register_hex(0x005e); unicode_input_finish(); | ||
495 | unicode_input_start(); register_hex(0x0029); unicode_input_finish(); | ||
496 | break; | ||
497 | case LOVE: | ||
498 | unicode_input_start(); register_hex(0x2665); unicode_input_finish(); | ||
499 | unicode_input_start(); register_hex(0x203f); unicode_input_finish(); | ||
500 | unicode_input_start(); register_hex(0x2665); unicode_input_finish(); | ||
501 | break; | ||
502 | } | ||
503 | break; | ||
504 | } | 338 | } |
505 | } | 339 | return true; |
506 | } | 340 | } |
507 | 341 | ||
508 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | ||
509 | if (record->event.pressed) { | ||
510 | switch(id) { | ||
511 | case RUN: | ||
512 | return MACRO( D(LCTL), T(I), U(LCTL), T(R), END ); | ||
513 | break; | ||
514 | } | ||
515 | } | ||
516 | return MACRO_NONE; | ||
517 | }; | ||
518 | |||
519 | // Runs just one time when the keyboard initializes. | 342 | // Runs just one time when the keyboard initializes. |
520 | void matrix_init_user(void) { | 343 | void matrix_init_user(void) { |
521 | set_unicode_input_mode(UC_LNX); | 344 | set_unicode_input_mode(UC_LNX); |