aboutsummaryrefslogtreecommitdiff
path: root/keyboards/puck/keymaps/default/keymap.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/puck/keymaps/default/keymap.c')
-rw-r--r--keyboards/puck/keymaps/default/keymap.c64
1 files changed, 64 insertions, 0 deletions
diff --git a/keyboards/puck/keymaps/default/keymap.c b/keyboards/puck/keymaps/default/keymap.c
new file mode 100644
index 000000000..6ba70a88b
--- /dev/null
+++ b/keyboards/puck/keymaps/default/keymap.c
@@ -0,0 +1,64 @@
1#include QMK_KEYBOARD_H
2
3#define _BL 0
4#define _HL 1
5#define _LL 2
6
7enum keycodes {
8 LOW,
9 HIGH
10};
11
12const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
13 /*
14 * Base Layer (Numbers)
15 */
16 [_BL] = LAYOUT(
17 KC_KP_7, KC_KP_8, KC_KP_9,
18 KC_KP_4, KC_KP_5, KC_KP_6,
19 KC_KP_1, KC_KP_2, KC_KP_3,
20 LOW, KC_KP_0, HIGH
21 ),
22 /*
23 * High Layer (Work)
24 */
25 [_HL] = LAYOUT(
26 KC_NUMLOCK, KC_PAST, KC_NO,
27 KC_PMNS, KC_PENT, KC_PPLS,
28 KC_NO, KC_PSLS, KC_NO,
29 KC_NO, KC_PDOT, KC_NO
30 ),
31 /*
32 * Low Layer (Media)
33 */
34 [_LL] = LAYOUT(
35 KC_NO, KC_VOLU, KC_NO,
36 KC_MPRV, KC_MPLY, KC_MNXT,
37 KC_NO, KC_VOLD, KC_NO,
38 KC_NO, KC_NO, KC_NO
39 ),
40};
41
42bool process_record_user(uint16_t keycode, keyrecord_t *record) {
43 switch(keycode) {
44 case HIGH:
45 if (record->event.pressed) {
46 layer_on(_HL);
47 }else{
48 layer_off(_HL);
49 layer_off(_LL);
50 }
51 return false;
52 break;
53 case LOW:
54 if (record->event.pressed) {
55 layer_on(_LL);
56 }else{
57 layer_off(_LL);
58 layer_off(_HL);
59 }
60 return false;
61 break;
62 }
63 return true;
64}