keymap_reed.c 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #include "keymap_common.h"
  2. /*
  3. * make KEYMAP=reed COMMON_KEYMAP=true
  4. *
  5. *
  6. * This layout works off of Jack's layout, making some changes that I
  7. * feel significantly improve the function of the keyboard. Major changes
  8. * include adding a "gaming mode" that will allow users to still access
  9. * the number keys 1 through 4 easily for games that require it. Also
  10. * included is the ability to use the tap/hold function for easy use of
  11. * right shift and thumb shift with their tapped companions.
  12. *
  13. */
  14. const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  15. [0] = KEYMAP_GRID( /* Reed */
  16. ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,
  17. TAB, A, S, D, F, G, H, J, K, L, SCLN, QUOT,
  18. LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, FN5,
  19. LCTL, CAPS, LALT, LGUI, FN2, FN7, SPC, FN1, LEFT, DOWN, UP, RGHT),
  20. [1] = KEYMAP_GRID( /* Reed EXTREME GAMING */
  21. ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,
  22. TAB, A, S, D, F, G, H, J, K, L, SCLN, QUOT,
  23. LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, FN5,
  24. LCTL, 1, 2, 3, 4, SPC, FN2, FN1, LEFT, DOWN, UP, RGHT),
  25. [2] = KEYMAP_GRID( /* Reed RAISE */
  26. GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, DEL,
  27. TRNS, FN3, FN4, PAUSE, TRNS, TRNS, TRNS, MINS, EQL, LBRC, RBRC, BSLS,
  28. TRNS, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, TRNS,
  29. TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, FN1, MNXT, VOLD, VOLU, MPLY),
  30. [3] = KEYMAP_GRID( /* Reed LOWER */
  31. TRNS , FN10, FN11, FN12, FN13, FN14, FN15, FN16, FN17, FN18, FN19, BSPC,
  32. TRNS, TRNS, TRNS, PAUSE, TRNS, TRNS, TRNS, FN20, FN21, FN23, FN24, FN28,
  33. TRNS, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, TRNS,
  34. TRNS, TRNS, TRNS, TRNS, FN2, TRNS, TRNS, TRNS, MNXT, VOLD, VOLU, MPLY),
  35. };
  36. const uint16_t PROGMEM fn_actions[] = {
  37. [1] = ACTION_LAYER_MOMENTARY(2), // to Fn overlay - RAISE
  38. [2] = ACTION_LAYER_MOMENTARY(3), // to Fn overlay - LOWER
  39. [3] = ACTION_DEFAULT_LAYER_SET(0),
  40. [4] = ACTION_DEFAULT_LAYER_SET(1),
  41. // Actions for the tap/hold modifiers listed above
  42. [5] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_ENT),
  43. [7] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_BSPC),
  44. [10] = ACTION_MODS_KEY(MOD_LSFT, KC_1),
  45. [11] = ACTION_MODS_KEY(MOD_LSFT, KC_2),
  46. [12] = ACTION_MODS_KEY(MOD_LSFT, KC_3),
  47. [13] = ACTION_MODS_KEY(MOD_LSFT, KC_4),
  48. [14] = ACTION_MODS_KEY(MOD_LSFT, KC_5),
  49. [15] = ACTION_MODS_KEY(MOD_LSFT, KC_6),
  50. [16] = ACTION_MODS_KEY(MOD_LSFT, KC_7),
  51. [17] = ACTION_MODS_KEY(MOD_LSFT, KC_8),
  52. [18] = ACTION_MODS_KEY(MOD_LSFT, KC_9),
  53. [19] = ACTION_MODS_KEY(MOD_LSFT, KC_0),
  54. [20] = ACTION_MODS_KEY(MOD_LSFT, KC_MINS),
  55. [21] = ACTION_MODS_KEY(MOD_LSFT, KC_EQL),
  56. [22] = ACTION_MODS_KEY(MOD_LSFT, KC_GRV),
  57. [23] = ACTION_MODS_KEY(MOD_LSFT, KC_LBRC),
  58. [24] = ACTION_MODS_KEY(MOD_LSFT, KC_RBRC),
  59. [28] = ACTION_MODS_KEY(MOD_LSFT, KC_BSLS),
  60. [29] = ACTION_MODS_KEY(MOD_LSFT | MOD_RSFT, KC_PAUSE),
  61. };