]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ergotravel/keymaps/default/keymap.c
Remove redundant KC_TRNS and KC_NO fillers in default keymaps (#5152)
[qmk_firmware.git] / keyboards / ergotravel / keymaps / default / keymap.c
1 #include QMK_KEYBOARD_H
2
3 extern keymap_config_t keymap_config;
4
5 #define _QWERTY 0
6 #define _LOWER 1
7 #define _RAISE 2
8 #define _ADJUST 16
9
10 enum custom_keycodes {
11   QWERTY = SAFE_RANGE,
12   LOWER,
13   RAISE,
14   ADJUST,
15 };
16
17 #define CALTDEL LCTL(LALT(KC_DEL))
18 #define TSKMGR LCTL(LSFT(KC_ESC))
19
20 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
21
22   [_QWERTY] = LAYOUT(
23   //,--------+--------+--------+--------+--------+--------+--------.        ,--------+--------+--------+--------+--------+--------+--------.
24      KC_ESC,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_MINS,          KC_EQL, KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC,
25   //|--------+--------+--------+--------+--------+--------+--------|        |--------+--------+--------+--------+--------+--------+--------|
26      KC_TAB,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_LBRC,          KC_RBRC, KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,
27   //|--------+--------+--------+--------+--------+--------+--------|        |--------+--------+--------+--------+--------+--------+--------|
28      KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_SPC,           KC_SPC,  KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT,
29   //|--------+--------+--------+--------+--------+--------+--------|        |--------+--------+--------+--------+--------+--------+--------|
30      KC_LCTL, KC_LGUI, KC_LALT, ADJUST,           LOWER,   KC_SPC,           KC_SPC,  RAISE,            KC_LEFT, KC_UP,   KC_DOWN, KC_RGHT
31   //`--------+--------+--------+--------+--------+--------+--------/        \--------+--------+--------+--------+--------+--------+--------'
32   ),
33
34   [_LOWER] = LAYOUT(
35   KC_TILD, KC_EXLM,  KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_HOME,          KC_PGUP,     KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,  \
36   _______, KC_F1,    KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_END ,          KC_PGDN,     KC_F6,   KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS, \
37   _______, KC_F7,    KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_BSPC,          KC_BSPC,     KC_F12,  _______, _______, KC_MUTE, _______, KC_PIPE, \
38   _______, _______,  _______, _______, _______, KC_BSPC,                                KC_BSPC, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY  \
39
40   ),
41
42   [_RAISE] = LAYOUT(
43  
44   KC_ESC,  KC_1,    KC_2,  KC_3,   KC_4,    KC_5,     _______,          _______,     KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_DEL,  \
45   _______, KC_4,    KC_5,  KC_6,   KC_PLUS, _______,  _______,          _______,   _______,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, _______, \
46   KC_ENT,  KC_7,    KC_8,  KC_9,   KC_MINS, _______,  _______,          _______,   _______,   KC_NUHS, KC_NUBS, KC_MUTE, _______, KC_BSLS, \
47   _______, KC_COMM, KC_0,  KC_DOT, _______, KC_BSPC,                                 KC_BSPC, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY  \
48   
49   ),
50
51   [_ADJUST] = LAYOUT(
52      TSKMGR,  _______,  _______, _______, _______, _______, _______,         _______,  _______, RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI, CALTDEL,
53      _______, _______,  _______, _______, _______, _______, _______,         _______,  _______, RGB_RMOD, RGB_VAD, RGB_SAD, RGB_HUD, RGB_TOG,
54      _______, _______,  _______, _______, _______, _______, _______,         _______,  _______, _______, _______, _______, _______, BL_STEP,
55      _______, _______, _______, _______,           _______, _______,         _______,  _______,          _______, _______, _______, RESET
56   )
57
58 };
59
60
61
62
63
64
65
66 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67   switch (keycode) {
68     case QWERTY:
69       if (record->event.pressed) {
70         #ifdef AUDIO_ENABLE
71           PLAY_SONG(tone_qwerty);
72         #endif
73         set_single_persistent_default_layer(_QWERTY);
74       }
75       return false;
76       break;
77     case LOWER:
78       if (record->event.pressed) {
79         layer_on(_LOWER);
80         update_tri_layer(_LOWER, _RAISE, _ADJUST);
81       } else {
82         layer_off(_LOWER);
83         update_tri_layer(_LOWER, _RAISE, _ADJUST);
84       }
85       return false;
86       break;
87     case RAISE:
88       if (record->event.pressed) {
89         layer_on(_RAISE);
90         update_tri_layer(_LOWER, _RAISE, _ADJUST);
91       } else {
92         layer_off(_RAISE);
93         update_tri_layer(_LOWER, _RAISE, _ADJUST);
94       }
95       return false;
96       break;
97     case ADJUST:
98       if (record->event.pressed) {
99         layer_on(_ADJUST);
100       } else {
101         layer_off(_ADJUST);
102       }
103       return false;
104       break;
105   }
106   return true;
107 }