]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/handwired/not_so_minidox/keymaps/default/keymap.c
Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152)
[qmk_firmware.git] / keyboards / handwired / not_so_minidox / keymaps / default / keymap.c
1 #include QMK_KEYBOARD_H
2
3 extern keymap_config_t keymap_config;
4
5 // Each layer gets a name for readability, which is then used in the keymap matrix below.
6 // The underscores don't mean anything - you can have a layer called STUFF or any other name.
7 // Layer names don't all need to be of the same length, obviously, and you can also skip them
8 // entirely and just use numbers.
9 #define _QWERTY 0
10 #define _LOWER 1
11 #define _RAISE 2
12 #define _ADJUST 16
13
14 enum custom_keycodes {
15   QWERTY = SAFE_RANGE,
16   LOWER,
17   RAISE,
18   ADJUST,
19 };
20
21 #define KC_LOWR LOWER
22 #define KC_RASE RAISE
23 #define KC_RST  RESET
24 #define KC_CAD  LCTL(LALT(KC_DEL))
25
26 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
27
28   [_QWERTY] = LAYOUT(
29 // ,-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------.
30     KC_TAB,    KC_Q,   KC_W,   KC_E,   KC_R,   KC_T,             KC_Y,   KC_U,   KC_I,   KC_O,   KC_P,KC_BSPC,
31 // |-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------|
32     KC_LCTL,   KC_A,   KC_S,   KC_D,   KC_F,   KC_G,             KC_H,   KC_J,   KC_K,   KC_L,KC_SCLN,KC_QUOT,
33 // |-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------|
34     KC_LSFT,   KC_Z,   KC_X,   KC_C,   KC_V,   KC_B,             KC_N,   KC_M,KC_COMM, KC_DOT,KC_SLSH, KC_ENT,
35 // '-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------'
36                               KC_LGUI,KC_LOWR, KC_SPC,       KC_SPC,KC_RASE,KC_RALT
37                           // `-------+-------+-------`     `-------+-------+-------`
38    ),
39
40   [_LOWER] = LAYOUT(
41 // ,-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------.
42      KC_ESC,   KC_1,   KC_2,   KC_3,   KC_4,   KC_5,             KC_6,   KC_7,   KC_8,   KC_9,   KC_0, KC_DEL,
43 // |-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------|
44     _______,_______,_______,_______,_______,_______,          _______,_______,_______,KC_LCBR,KC_RCBR,KC_BSLS,
45 // |-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------|
46     _______,_______,_______,_______,_______,_______,          _______,_______,_______,_______,_______,_______,
47 // '-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------'
48                               _______,_______,_______,      _______,_______,_______
49                           // `-------+-------+-------`     `-------+-------+-------`
50   ),
51
52   [_RAISE] = LAYOUT(
53  // ,-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------.
54       KC_GRV,KC_EXLM,  KC_AT,KC_HASH, KC_DLR,KC_PERC,          KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, KC_DEL,
55  // |-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------|
56      _______,_______,_______,_______,KC_MINS, KC_EQL,          _______,  KC_UP,_______,KC_LBRC,KC_RBRC,KC_PIPE,
57  // |-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------|
58      _______,_______,_______,_______,_______,_______,          KC_LEFT,KC_DOWN,KC_RGHT,_______,_______,_______,
59  // '-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------'
60                                _______,_______,_______,      _______,_______,_______
61                            // `-------+-------+-------`     `-------+-------+-------`
62    ),
63   [_ADJUST] = LAYOUT(
64 // ,-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------.
65     _______,_______,_______,_______, KC_RST,_______,          _______,_______,_______,_______,_______, KC_CAD,
66 // |-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------|
67     _______,_______,_______,_______,_______,_______,          _______,_______,_______,_______,_______,_______,
68 // |-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------|
69     _______,_______,_______,_______,_______,_______,          _______,_______,_______,_______,_______,_______,
70 // '-------+-------+-------+-------+-------+-------.         ,-------+-------+-------+-------+-------+-------'
71                               _______,_______,_______,      _______,_______,_______
72                           // `-------+-------+-------`     `-------+-------+-------`
73   )
74 };
75
76
77 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
78   switch (keycode) {
79     case QWERTY:
80       if (record->event.pressed) {
81         set_single_persistent_default_layer(_QWERTY);
82       }
83       return false;
84       break;
85     case LOWER:
86       if (record->event.pressed) {
87         layer_on(_LOWER);
88         update_tri_layer(_LOWER, _RAISE, _ADJUST);
89       } else {
90         layer_off(_LOWER);
91         update_tri_layer(_LOWER, _RAISE, _ADJUST);
92       }
93       return false;
94       break;
95     case RAISE:
96       if (record->event.pressed) {
97         layer_on(_RAISE);
98         update_tri_layer(_LOWER, _RAISE, _ADJUST);
99       } else {
100         layer_off(_RAISE);
101         update_tri_layer(_LOWER, _RAISE, _ADJUST);
102       }
103       return false;
104       break;
105     case ADJUST:
106       if (record->event.pressed) {
107         layer_on(_ADJUST);
108         update_tri_layer(_LOWER, _RAISE, _ADJUST);
109       } else {
110         layer_off(_ADJUST);
111         update_tri_layer(_LOWER, _RAISE, _ADJUST);
112       }
113       return false;
114       break;
115   }
116   return true;
117 }