keymap.c 5.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. #include QMK_KEYBOARD_H
  2. #include "kageurufu.h"
  3. #ifdef PROTOCOL_LUFA
  4. #include "lufa.h"
  5. #include "split_util.h"
  6. #endif
  7. extern keymap_config_t keymap_config;
  8. extern uint8_t is_master;
  9. /* Base Layout
  10. * ,------------------------------------------------. ,------------------------------------------------.
  11. * | ` | | | | | | | | | | | | | | BkSp |
  12. * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
  13. * | Tab | | | | | | | | | | | | | | \ |
  14. * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
  15. * | Esc | | | | | | | | | | | | | | ' |
  16. * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
  17. * | Sft( | | | | | | | | | | | | | | Sft) |
  18. * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
  19. * | Ctrl | Win | Win | Alt | FN | Space| RGB | | FN | FN | - | = | Down | PgUp | PgDn |
  20. * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
  21. * | Space| Bksp | | Enter| Space|
  22. * `-------------' `--------=----'
  23. */
  24. #define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
  25. #define _BASE_LAYOUT( \
  26. _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, \
  27. _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, \
  28. _20, _21, _22, _23, _24, _25, _26, _27, _28, _29 \
  29. ) \
  30. EXPAND_LAYOUT( \
  31. KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, RGB_MOD, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
  32. KC_TAB, _00, _01, _02, _03, _04, KC_LBRC, KC_RBRC, _05, _06, _07, _08, _09, KC_BSLS, \
  33. FN_ESC, _10, _11, _12, _13, _14, RGB_SAI, RGB_VAI, _15, _16, _17, _18, _19, KC_QUOT, \
  34. KC_LSPO, _20, _21, _22, _23, _24, RGB_SAD, RGB_VAD, _25, _26, _27, _28, _29, KC_RSPC, \
  35. KC_LCTL, KC_LGUI, KC_LGUI, KC_LALT, FN, KC_SPC, FN, FN, KC_SPC, KC_MINS, KC_EQL, KC_DOWN, KC_PGUP, KC_PGDN, \
  36. KC_SPC, KC_BSPC, KC_ENT, KC_SPC \
  37. )
  38. #define BASE_LAYOUT(...) _BASE_LAYOUT(__VA_ARGS__)
  39. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  40. [_QWERTY] = BASE_LAYOUT( \
  41. _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, \
  42. _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, \
  43. _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ \
  44. ),
  45. [_COLEMAK] = BASE_LAYOUT( \
  46. _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, \
  47. _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, \
  48. _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ \
  49. ),
  50. [_COLEMAK_DH] = BASE_LAYOUT( \
  51. ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________, \
  52. ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________, \
  53. ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________ \
  54. ),
  55. [_FN] = EXPAND_LAYOUT( \
  56. ________________FUNCTION_L1________________, _______, KC_PSCR, ________________FUNCTION_R1________________, \
  57. ________________FUNCTION_L2________________, _______, _______, ________________FUNCTION_R2________________, \
  58. ________________FUNCTION_L3________________, _______, _______, ________________FUNCTION_R3________________, \
  59. ________________FUNCTION_L4________________, _______, _______, ________________FUNCTION_R4________________, \
  60. ________________FUNCTION_L5________________, ADJ, ADJ, ________________FUNCTION_R5________________, \
  61. _______, KC_DEL, _______, _______ \
  62. ),
  63. [_ADJ] = EXPAND_LAYOUT( \
  64. _________________ADJUST_L1_________________, _______, _______, _________________ADJUST_R1_________________, \
  65. _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________, \
  66. _________________ADJUST_L3_________________, _______, _______, _________________ADJUST_R3_________________, \
  67. _________________ADJUST_L4_________________, _______, _______, _________________ADJUST_R4_________________, \
  68. _________________ADJUST_L5_________________, _______, _______, _________________ADJUST_R5_________________, \
  69. _______, _______, _______, _______ \
  70. )
  71. };
  72. #ifdef ENCODER_ENABLE
  73. void encoder_update_user(uint8_t index, bool clockwise) {
  74. if (index == 0) { /* First encoder */
  75. if (clockwise) {
  76. tap_code(KC_VOLU);
  77. } else {
  78. tap_code(KC_VOLD);
  79. }
  80. } else if (index == 1) { /* Second encoder*/
  81. if (clockwise) {
  82. tap_code(KC_VOLU);
  83. } else {
  84. tap_code(KC_VOLD);
  85. }
  86. }
  87. }
  88. #endif