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