]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ergodox/keymaps/alphadox/keymap.c
[alphadox] remove tmk reset code
[qmk_firmware.git] / keyboards / ergodox / keymaps / alphadox / keymap.c
1 #include "ergodox.h"
2 #include "debug.h"
3 #include "action_layer.h"
4
5 #define BASE 0 // default layer
6 #define SYMB 1 // symbols
7 #define ETC  2 // etc
8
9 enum macro_id {
10     TEENSY,
11 };
12
13 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
14
15 [BASE] = KEYMAP(
16     KC_NO,          KC_NO,         KC_NO,   KC_NO,    KC_NO,          KC_NO,  KC_NO,
17     KC_TAB,         KC_Q,          KC_W,    KC_D,     KC_F,           KC_K,   KC_PGUP,
18     CTL_T(KC_ESC),  LT(ETC,KC_A),  KC_S,    KC_E,     KC_T,           KC_G,
19     KC_LSFT,        KC_Z,          KC_X,    KC_C,     KC_V,           KC_B,   KC_PGDN,
20     KC_GRV,         KC_DEL,        KC_DEL,  KC_LALT,  GUI_T(KC_TAB),
21                                                                       KC_NO,  KC_NO,
22                                                                               KC_NO,
23                                            LT(SYMB,KC_BSPC),  CTL_T(KC_ESC),  KC_NO,
24
25     KC_NO,    KC_NO,  KC_NO,          KC_NO,    KC_NO,    KC_NO,    KC_NO,
26     KC_VOLU,  KC_J,   KC_U,           KC_R,     KC_L,     KC_SCLN,  KC_BSLS,
27               KC_Y,   KC_N,           KC_I,     KC_O,     KC_H,     KC_QUOT,
28     KC_VOLD,  KC_P,   KC_M,           KC_COMM,  KC_DOT,   KC_SLSH,  KC_RSFT,
29                       GUI_T(KC_TAB),  KC_LEFT,  KC_DOWN,  KC_UP,    LCAG_T(KC_RGHT),
30     KC_NO,  KC_NO,
31     KC_NO,
32     KC_NO,  SFT_T(KC_ENT),  LT(SYMB,KC_SPC)
33 ),
34
35 [SYMB] = KEYMAP(
36     KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,
37     KC_TRNS,  KC_EXLM,  KC_AT,    KC_LCBR,  KC_RCBR,  KC_PIPE,  KC_TRNS,
38     KC_TRNS,  KC_HASH,  KC_DLR,   KC_LPRN,  KC_RPRN,  KC_BSLS,
39     KC_TRNS,  KC_PERC,  KC_CIRC,  KC_LBRC,  KC_RBRC,  KC_ASTR,  KC_TRNS,
40     KC_TILD,  KC_AMPR,  KC_AMPR,  KC_TRNS,  KC_TRNS,
41                                                       KC_TRNS,  KC_TRNS,
42                                                                 KC_TRNS,
43                                               KC_TRNS, KC_TRNS, KC_TRNS,
44
45     KC_NO,    KC_NO,    KC_NO,  KC_NO,  KC_NO,   KC_NO,    KC_NO,
46     KC_TRNS,  KC_EQL,   KC_7,   KC_8,   KC_9,    KC_PLUS,  KC_NO,
47               KC_MINS,  KC_4,   KC_5,   KC_6,    KC_QUOT,  KC_NO,
48     KC_TRNS,  KC_UNDS,  KC_1,   KC_2,   KC_3,    KC_DQUO,  KC_TRNS,
49                         KC_0,   KC_NO,  KC_DOT,  KC_TRNS,  KC_TRNS,
50     KC_TRNS,  KC_TRNS,
51     KC_TRNS,
52     KC_TRNS,  KC_TRNS,  KC_TRNS
53 ),
54
55 [ETC] = KEYMAP(
56     RESET,    KC_NO,         KC_NO,  KC_NO,    KC_NO,    KC_NO,    KC_NO,
57     KC_TRNS,  KC_NO,         KC_NO,  KC_NO,    KC_NO,    KC_PGUP,  KC_TRNS,
58     KC_TRNS,  LT(ETC,KC_A),  KC_NO,  KC_NO,    KC_NO,    KC_PGDN,
59     KC_TRNS,  KC_NO,         KC_NO,  KC_NO,    KC_NO,    KC_DEL,   KC_TRNS,
60     KC_TRNS,  KC_TRNS,       KC_NO,  KC_TRNS,  KC_TRNS,
61                                                          KC_TRNS,  KC_TRNS,
62                                                                    KC_TRNS,
63                                                  KC_TRNS, KC_TRNS, KC_TRNS,
64
65     KC_NO,    KC_NO,    KC_NO,  KC_NO,  KC_NO,   KC_NO,    KC_NO,
66     KC_TRNS,  KC_VOLU,  KC_F7,  KC_F8,  KC_F9,   KC_HOME,  KC_NO,
67               KC_VOLD,  KC_F4,  KC_F5,  KC_F6,   KC_END,   KC_NO,
68     KC_TRNS,  KC_MUTE,  KC_F1,  KC_F2,  KC_F3,   KC_INS,   KC_TRNS,
69                         KC_NO,  KC_NO,  KC_NO,   KC_NO,    KC_NO,
70     KC_TRNS,  KC_TRNS,
71     KC_TRNS,
72     KC_TRNS,  KC_TRNS,  KC_TRNS
73 ),
74 };
75
76 const uint16_t PROGMEM fn_actions[] = {
77 };
78
79 const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
80   switch(id) {
81     case TEENSY:
82       break;
83   }
84   return MACRO_NONE;
85 };
86
87 void matrix_init_user(void) {
88 };
89
90 void matrix_scan_user(void) {
91     uint8_t layer = biton32(layer_state);
92
93     ergodox_board_led_off();
94     ergodox_right_led_1_off();
95     ergodox_right_led_2_off();
96     ergodox_right_led_3_off();
97     switch (layer) {
98         case 1:
99             ergodox_right_led_1_on();
100             break;
101         case 2:
102             ergodox_right_led_2_on();
103             break;
104         default:
105             break;
106     }
107 };