]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/kbd75/keymaps/default/keymap.c
KBD75 refactor and Configurator update (#3243)
[qmk_firmware.git] / keyboards / kbd75 / keymaps / default / keymap.c
1 #include QMK_KEYBOARD_H
2
3 #define MODS_CTRL_MASK  (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
4
5 #define _______ KC_TRNS
6
7 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
8
9   [0] = LAYOUT(
10     KC_ESC,   KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5,    KC_F6,    KC_F7,    KC_F8,    KC_F9,    KC_F10,   KC_F11,   KC_F12,   KC_PSCR,  MO(1),    KC_DEL,
11     KC_GRV,   KC_1,     KC_2,     KC_3,     KC_4,     KC_5,     KC_6,     KC_7,     KC_8,     KC_9,     KC_0,     KC_MINS,  KC_EQL,   KC_DEL,   KC_BSPC,  KC_HOME,
12     KC_TAB,   KC_Q,     KC_W,     KC_E,     KC_R,     KC_T,     KC_Y,     KC_U,     KC_I,     KC_O,     KC_P,     KC_LBRC,  KC_RBRC,  KC_BSLS,            KC_PGUP,
13     KC_CAPS,  KC_A,     KC_S,     KC_D,     KC_F,     KC_G,     KC_H,     KC_J,     KC_K,     KC_L,     KC_SCLN,  KC_QUOT,                      KC_ENT,   KC_PGDN,
14     KC_LSFT,  MO(1),    KC_Z,     KC_X,     KC_C,     KC_V,     KC_B,     KC_N,     KC_M,     KC_COMM,  KC_DOT,   KC_SLSH,  KC_RSFT,            KC_UP,    KC_END,
15     KC_LCTL,  KC_LGUI,  KC_LALT,                      KC_SPC,   KC_SPC,   KC_SPC,                       KC_RALT,  MO(1),    KC_RCTL,  KC_LEFT,  KC_DOWN,  KC_RGHT
16   ),
17
18   [1] = LAYOUT(
19     _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,
20     _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  RESET,    _______,
21     _______,  RGB_TOG,  RGB_MOD,  RGB_HUI,  RGB_HUD,  RGB_SAI,  RGB_SAD,  RGB_VAI,  RGB_VAD,  _______,  _______,  _______,  _______,  _______,            _______,
22     _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,                      _______,  _______,
23     _______,  _______,  _______,  _______,  BL_DEC,   BL_TOGG,  BL_INC,   BL_STEP,  _______,  _______,  _______,  _______,  _______,            _______,  _______,
24     _______,  _______,  _______,                      _______,  _______,  _______,                      _______,  _______,  _______,  _______,  _______,  _______
25   ),
26
27   [2] = LAYOUT(
28     _______,  M(1),     M(2),     _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,
29     _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,
30     _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,            _______,
31     _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,                      _______,  _______,
32     _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,            _______,  _______,
33     _______,  _______,  _______,                      _______,  _______,  _______,                      _______,  _______,  _______,  _______,  _______,  _______
34   ),
35
36 };
37
38 const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
39
40
41     switch (id) {
42
43     }
44     return MACRO_NONE;
45 }
46
47 void matrix_init_user(void) {
48 }
49
50 void matrix_scan_user(void) {
51 }
52
53 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
54     return true;
55 }
56
57 void led_set_user(uint8_t usb_led) {
58
59     if (usb_led & (1 << USB_LED_NUM_LOCK)) {
60
61     } else {
62
63     }
64
65     if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
66         DDRB |= (1 << 2); PORTB &= ~(1 << 2);
67     } else {
68         DDRB &= ~(1 << 2); PORTB &= ~(1 << 2);
69     }
70
71     if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
72
73     } else {
74
75     }
76
77     if (usb_led & (1 << USB_LED_COMPOSE)) {
78
79     } else {
80
81     }
82
83     if (usb_led & (1 << USB_LED_KANA)) {
84
85     } else {
86
87     }
88
89 }
90
91 enum function_id {
92     SHIFT_ESC,
93 };
94
95 const uint16_t PROGMEM fn_actions[] = {
96   [0]  = ACTION_FUNCTION(SHIFT_ESC),
97 };
98
99 void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
100   static uint8_t shift_esc_shift_mask;
101   switch (id) {
102     case SHIFT_ESC:
103       shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
104       if (record->event.pressed) {
105         if (shift_esc_shift_mask) {
106           add_key(KC_GRV);
107           send_keyboard_report();
108         } else {
109           add_key(KC_ESC);
110           send_keyboard_report();
111         }
112       } else {
113         if (shift_esc_shift_mask) {
114           del_key(KC_GRV);
115           send_keyboard_report();
116         } else {
117           del_key(KC_ESC);
118           send_keyboard_report();
119         }
120       }
121       break;
122   }
123 }