losinggeneration-common.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #ifndef LOSINGGENERATION_COMMON_H
  2. #define LOSINGGENERATION_COMMON_H
  3. /* Custom keys & combinations to be shorter for keymaps */
  4. #define KC_LCA LCA(KC_NO)
  5. /* Fillers to make layering more clear */
  6. #define _______ KC_TRNS
  7. #define XXXXXXX KC_NO
  8. #define OSM_LSFT OSM(MOD_LSFT)
  9. #define TD_CTL TD(TD_CTL_CTLALT)
  10. #define TD_GUI TD(TD_LGUI_RGUI)
  11. #define TD_ALT TD(TD_LALT_RALT)
  12. #define MT_ENT SFT_T(KC_ENT)
  13. #define MT_ESC CTL_T(KC_ESC)
  14. /* Custom layer movements for keymaps */
  15. #define TD_ADJ TD(TD_ADJUST)
  16. #define TO_GAME TO(_GAME)
  17. #define TO_MS TO(_MOUSE)
  18. #define TO_NUM TO(_NUMPAD)
  19. #define MO_ADJ MO(_ADJUST)
  20. /* Mouse keys */
  21. #define MS_BTN1 KC_MS_BTN1
  22. #define MS_BTN2 KC_MS_BTN2
  23. #define MS_BTN3 KC_MS_BTN3
  24. #define MS_BTN4 KC_MS_BTN4
  25. #define MS_BTN5 KC_MS_BTN5
  26. #define MS_LEFT KC_MS_LEFT
  27. #define MS_DOWN KC_MS_DOWN
  28. #define MS_UP KC_MS_UP
  29. #define MS_RGHT KC_MS_RIGHT
  30. #define MW_LEFT KC_MS_WH_LEFT
  31. #define MW_DOWN KC_MS_WH_DOWN
  32. #define MW_UP KC_MS_WH_UP
  33. #define MW_RGHT KC_MS_WH_RIGHT
  34. #define MS_ACL0 KC_MS_ACCEL0
  35. #define MS_ACL1 KC_MS_ACCEL1
  36. #define MS_ACL2 KC_MS_ACCEL2
  37. /*
  38. * This will expand values sent to it to send to the KEYMAP macro so defines
  39. * can be used by KEYMAP
  40. */
  41. #define CATMAP(...) LAYOUT(__VA_ARGS__)
  42. /*
  43. Each layer gets a name for readability, which is then used in the keymap matrix below.
  44. The underscores don't mean anything - you can have a layer called STUFF or any other name.
  45. Layer names don't all need to be of the same length, obviously, and you can also skip them
  46. entirely and just use numbers.
  47. */
  48. #define _QWERTY 0
  49. #define _COLEMAK 1
  50. #define _WORKMAN 2
  51. #define _DVORAK 3
  52. #define _GAME 4
  53. #define _NUMPAD 5
  54. #define _MOUSE 6
  55. #define _LOWER 14
  56. #define _RAISE 15
  57. #define _ADJUST 16
  58. enum custom_keycodes {
  59. QWERTY = SAFE_RANGE,
  60. COLEMAK,
  61. WORKMAN,
  62. DVORAK,
  63. LOWER,
  64. RAISE,
  65. };
  66. #endif