keymap.c 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. // Copyright 2021 Gustavs Gutmanis (@gustavs-gutmanis)
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #include QMK_KEYBOARD_H
  4. enum layer_names {
  5. _SMITE = 0,
  6. };
  7. enum custom_keycodes {
  8. S_7 = SAFE_RANGE, // [VEL] - laugh
  9. S_8, // [VVN] - No
  10. S_9, // [VVA] - OK
  11. S_4, // [VVB] - be right back
  12. S_5, // [VVVE] - on my way
  13. S_6, // [VVM] - out of mana
  14. S_1, // [VRR] - retreat
  15. S_2, // [VDD] - defend
  16. S_3, // [VAA] - attack
  17. };
  18. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  19. switch (keycode) {
  20. case S_7:
  21. if (record->event.pressed) {
  22. // VEL
  23. SEND_STRING("v" SS_DELAY(20) "e" SS_DELAY(20) "l");
  24. }
  25. break;
  26. case S_8:
  27. if (record->event.pressed) {
  28. // VVN
  29. SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "n");
  30. }
  31. break;
  32. case S_9:
  33. if (record->event.pressed) {
  34. // VVA
  35. SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "a");
  36. }
  37. break;
  38. case S_4:
  39. if (record->event.pressed) {
  40. // VVB
  41. SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "b");
  42. }
  43. break;
  44. case S_5:
  45. if (record->event.pressed) {
  46. // VVVE
  47. SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "v" SS_DELAY(20) "e");
  48. }
  49. break;
  50. case S_6:
  51. if (record->event.pressed) {
  52. // VVM
  53. SEND_STRING("v" SS_DELAY(20) "v" SS_DELAY(20) "m");
  54. }
  55. break;
  56. case S_1:
  57. if (record->event.pressed) {
  58. // VRR
  59. SEND_STRING("v" SS_DELAY(20) "r" SS_DELAY(20) "r");
  60. }
  61. break;
  62. case S_2:
  63. if (record->event.pressed) {
  64. // VDD
  65. SEND_STRING("v" SS_DELAY(20) "d" SS_DELAY(20) "d");
  66. }
  67. break;
  68. case S_3:
  69. if (record->event.pressed) {
  70. // VAA
  71. SEND_STRING("v" SS_DELAY(20) "a" SS_DELAY(20) "a");
  72. }
  73. break;
  74. }
  75. return true;
  76. };
  77. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  78. [_SMITE] = LAYOUT(
  79. S_7, S_8, S_9,
  80. S_4, S_5, S_6,
  81. S_1, S_2, S_3
  82. ),
  83. };