]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/thevankeyboards/roadkit/keymaps/khord/keymap.c
Keyboard: Shuffle keyboards into thevankeyboards directory (#3895)
[qmk_firmware.git] / keyboards / thevankeyboards / roadkit / keymaps / khord / keymap.c
1 #include QMK_KEYBOARD_H
2
3 extern keymap_config_t keymap_config;
4
5 #define _NP 0
6 #define _L1 1
7 #define _L2 2
8
9 // Fillers to make layering more clear
10 #define _______ KC_TRNS
11 #define XXXXXXX KC_NO
12
13 enum custom_keycodes {
14   NUMPAD = SAFE_RANGE,
15   ADMIN,
16   SMSPC1,
17   STR192,
18   STR255
19 };
20
21 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
22
23   /* Numpad
24    * ,-----------------------.
25    * |  7  |  8  |  9  |Bksp |
26    * |-----`-----`-----`-----|
27    * |  4  |  5  |  6  | Tab |
28    * |-----`-----`-----`-----|
29    * |  1  |  2  |  3  |Enter|
30    * |-----`-----`-----`-----|
31    * |  0  |Space|  .  |  /  |
32    * `-----`-----`-----`-----'
33    * | L1  | L2  |     |     | Layer hold
34    */
35   [_NP] = LAYOUT_ortho_4x4( /* Numpad */
36     KC_P7,        KC_P8,         KC_P9,   KC_BSPC, \
37     KC_P4,        KC_P5,         KC_P6,   KC_TAB, \
38     KC_P1,        KC_P2,         KC_P3,   KC_PENT, \
39     LT(1, KC_P0), LT(2, KC_SPC), KC_PDOT, KC_PSLS
40   ),
41
42   /* L1
43    * ,-----------------------.
44    * |Reset|     |     | Del |
45    * |-----`-----`-----`-----|
46    * | Left| Down| Up  |Right|
47    * |-----`-----`-----`-----|
48    * | 192.| 255 |     |     |
49    * |-----`-----`-----`-----|
50    * |_____| LED |  .  |     |
51    * `-----`-----`-----`-----'
52    */
53   [_L1] = LAYOUT_ortho_4x4( /* LAYER 1 */
54     RESET,   XXXXXXX, XXXXXXX, KC_DEL, \
55     KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT, \
56     STR192,  STR255,  XXXXXXX, XXXXXXX, \
57     _______, BL_STEP, _______, XXXXXXX
58   ),
59
60   /* L2
61    * ,-----------------------.
62    * |     |     | str | str |
63    * |-----`-----`-----`-----|
64    * |     |     |     |     |
65    * |-----`-----`-----`-----|
66    * |     |     |     |     |
67    * |-----`-----`-----`-----|
68    * |     |_____|     |     |
69    * `-----`-----`-----`-----'
70    */
71   [_L2] = LAYOUT_ortho_4x4( /* LAYER 2 */
72     XXXXXXX, XXXXXXX, ADMIN,   SMSPC1, \
73     XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
74     XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
75     XXXXXXX, _______, XXXXXXX, XXXXXXX
76   )
77 };
78
79 void persistent_default_layer_set(uint16_t default_layer) {
80   eeconfig_update_default_layer(default_layer);
81   default_layer_set(default_layer);
82 }
83
84 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
85   switch (keycode) {
86     case ADMIN:
87       if (record->event.pressed) {
88   SEND_STRING("Administrator");
89       }
90       return false;
91       break;
92     case SMSPC1:
93       if (record->event.pressed) {
94   SEND_STRING("Simspace1!");
95       }
96       return false;
97       break;
98     case STR192:
99       if (record->event.pressed) {
100   SEND_STRING("192.168.");
101       }
102       return false;
103       break;
104     case STR255:
105       if (record->event.pressed) {
106   SEND_STRING("255");
107       }
108       return false;
109       break;
110   }
111   return true;
112 };