keymap.c 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #include QMK_KEYBOARD_H
  2. enum tapdance_keycodes {
  3. TD_KEY_1,
  4. TD_KEY_2,
  5. };
  6. void dance_key_one (qk_tap_dance_state_t *state, void *user_data) {
  7. if (state->count == 1) {
  8. send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF"); // ¯\_(ツ)_/¯
  9. SEND_STRING(SS_TAP(X_ENTER));
  10. reset_tap_dance (state);
  11. } else if (state->count == 2) {
  12. cycle_unicode_input_mode(+1);
  13. reset_tap_dance (state);
  14. }
  15. }
  16. void dance_key_two (qk_tap_dance_state_t *state, void *user_data) {
  17. if (state->count == 1) {
  18. send_unicode_hex_string("0CA0 005F 0CA0"); // ಠ_ಠ
  19. SEND_STRING(SS_TAP(X_ENTER));
  20. reset_tap_dance (state);
  21. } else if (state->count == 2) {
  22. send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); // (ノಠ痊ಠ)ノ彡┻━┻
  23. SEND_STRING(SS_TAP(X_ENTER));
  24. reset_tap_dance (state);
  25. } else if (state->count == 3) {
  26. send_unicode_hex_string("256D 2229 256E 0028 002D 005F 002D 0029 256D 2229 256E"); // ╭∩╮(-_-)╭∩╮
  27. SEND_STRING(SS_TAP(X_ENTER));
  28. reset_tap_dance (state);
  29. } else if (state->count == 4) {
  30. send_unicode_hex_string("0028 3065 FFE3 0020 00B3 FFE3 0029 3065"); // (づ ̄ ³ ̄)づ
  31. SEND_STRING(SS_TAP(X_ENTER));
  32. reset_tap_dance (state);
  33. } else if (state->count == 5) {
  34. send_unicode_hex_string("0028 FE3A FE39 FE3A 0029"); // (︺︹︺)
  35. SEND_STRING(SS_TAP(X_ENTER));
  36. reset_tap_dance (state);
  37. }
  38. }
  39. qk_tap_dance_action_t tap_dance_actions[] = {
  40. [TD_KEY_1] = ACTION_TAP_DANCE_FN(dance_key_one),
  41. [TD_KEY_2] = ACTION_TAP_DANCE_FN(dance_key_two),
  42. };
  43. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  44. [0] = LAYOUT(
  45. TD(TD_KEY_1),
  46. TD(TD_KEY_2)
  47. ),
  48. };