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); |
