]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/lets_split/keymaps/adam/keymap.c
Remove redundant KC_TRNS and KC_NO fillers in remaining keymaps (#5154)
[qmk_firmware.git] / keyboards / lets_split / keymaps / adam / keymap.c
1 #include QMK_KEYBOARD_H
2
3
4 extern keymap_config_t keymap_config;
5
6 // Each layer gets a name for readability, which is then used in the keymap matrix below.
7 // The underscores don't mean anything - you can have a layer called STUFF or any other name.
8 // Layer names don't all need to be of the same length, obviously, and you can also skip them
9 // entirely and just use numbers.
10 #define BASE 0 // default layer
11 #define FLOCK 1 // symbols arrows and F keys on F held down
12 #define JLOCK 2 // same as Flock but with fall thru J and mapped to J held down
13
14 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
15
16 /* Qwerty
17  * ,-----------------------------------------------------------------------------------.
18  * | Tab  |   Q  |   W  |   E  |   R  |   T  |   Y  |   U  |   I  |   O  |   P  | Bksp |
19  * |------+------+------+------+------+-------------+------+------+------+------+------|
20  * | Esc  |   A  |   S  |   D  |   F  |   G  |   H  |   J  |   K  |   L  |   ;  |  "   |
21  * |------+------+------+------+------+------|------+------+------+------+------+------|
22  * | Shift|   Z  |   X  |   C  |   V  |   B  |   N  |   M  |   ,  |   .  |   /  |Enter |
23  * |------+------+------+------+------+------+------+------+------+------+------+------|
24  * | Brite| Ctrl | Alt  | GUI  |Lower | Bksp |Space |Raise | Left | Down |  Up  |Right |
25  * `-----------------------------------------------------------------------------------'
26  */
27 [BASE] = LAYOUT ( \
28   TD(1),         KC_2,       KC_3,         KC_4,     KC_5,         KC_MINS, KC_EQL,    KC_6,        KC_7,        KC_8,         KC_9,           KC_0,     \
29   KC_Q,         KC_W,       KC_E,         KC_R,     KC_T,         KC_TAB,  KC_TAB,    KC_Y,        KC_U,        KC_I,         KC_O,           KC_P,    \
30   SFT_T(KC_A),  ALT_T(KC_S),CTL_T(KC_D),  F(FLOCK), GUI_T(KC_G),  KC_BSPC, KC_DELETE, GUI_T(KC_H), F(JLOCK),    CTL_T(KC_K),  ALT_T(KC_L),    SFT_T(KC_SCLN), \
31   KC_Z,         KC_X,       KC_C,         KC_V,     KC_B,         KC_SPC,  KC_ENT,    KC_N,        KC_M,        KC_COMM,      KC_DOT,         KC_QUOTE
32 ),
33 [FLOCK] = LAYOUT ( \
34   KC_F1,      KC_F2,      KC_F3,       KC_F4,      KC_F5,      KC_F11,     KC_F12,     KC_F6,      KC_F7,      KC_F8,     KC_F9,    KC_F10, \
35   KC_LBRC,    KC_GRV,     KC_TILDE,    S(KC_1),    XXXXXXX,    XXXXXXX,    XXXXXXX,    XXXXXXX,    KC_HOME,    KC_PGUP,   XXXXXXX,  KC_RBRC, \
36   S(KC_LBRC), _______,    _______,     _______,    _______,    XXXXXXX,    XXXXXXX,    KC_LEFT,    KC_DOWN,    KC_UP,     KC_RIGHT, S(KC_RBRC), \
37   KC_BSLS,    KC_PIPE,    XXXXXXX,     XXXXXXX,    XXXXXXX,    KC_ESC,     KC_ESC,     XXXXXXX,    KC_END,     KC_PGDOWN, KC_QUES,  KC_SLASH \
38 ),
39 [JLOCK] = LAYOUT ( \
40   KC_F1,      KC_F2,      KC_F3,       KC_F4,      KC_F5,      KC_F11,     KC_F12,     KC_F6,      KC_F7,      KC_F8,     KC_F9,    KC_F10, \
41   KC_LBRC,    KC_GRV,     KC_TILDE,    S(KC_1),    XXXXXXX,    XXXXXXX,    XXXXXXX,    XXXXXXX,    KC_HOME,    KC_PGUP,   XXXXXXX,  KC_RBRC, \
42   S(KC_LBRC), _______,    _______,     _______,    _______,    XXXXXXX,    XXXXXXX,    KC_LEFT,    _______,    KC_UP,     KC_RIGHT, S(KC_RBRC), \
43   KC_BSLS,    KC_PIPE,    XXXXXXX,     XXXXXXX,    XXXXXXX,    KC_ESC,     KC_ESC,     XXXXXXX,    KC_END,     KC_PGDOWN, KC_QUES,  KC_SLASH \
44 )
45 };
46
47 const uint16_t PROGMEM fn_actions[] = {
48   [FLOCK] = ACTION_LAYER_TAP_KEY(FLOCK,KC_F),
49   [JLOCK] = ACTION_LAYER_TAP_KEY(JLOCK,KC_J)
50 };
51 #ifdef TAP_DANCE_ENABLE
52 void tap_1(qk_tap_dance_state_t *state, void *user_data) {
53   switch (state->count) {
54   case 1:
55     register_code (KC_1);
56     unregister_code (KC_1);
57     break;
58   case 2:
59     register_code (KC_ESC);
60     unregister_code (KC_ESC);
61     break;
62   case 3:
63     register_code (KC_LSFT);
64     register_code (KC_1);
65     unregister_code (KC_1);
66     unregister_code (KC_LSFT);
67   }
68 }
69
70 qk_tap_dance_action_t tap_dance_actions[] = {
71         [0]  = ACTION_TAP_DANCE_DOUBLE(KC_1, KC_ESC),
72   [1]  = ACTION_TAP_DANCE_FN(tap_1)
73 };
74 #endif