|
|
@ -1,7 +1,5 @@ |
|
|
|
#include QMK_KEYBOARD_H |
|
|
|
#include QMK_KEYBOARD_H |
|
|
|
|
|
|
|
|
|
|
|
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define _______ KC_TRNS |
|
|
|
#define _______ KC_TRNS |
|
|
|
|
|
|
|
|
|
|
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
|
|
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
|
|
@ -22,101 +20,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
_______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
_______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
|
|
|
), |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
[2] = LAYOUT( |
|
|
|
|
|
|
|
_______, M(1), M(2), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
|
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
|
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
|
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
|
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, |
|
|
|
|
|
|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
switch (id) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return MACRO_NONE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void matrix_init_user(void) { |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void matrix_scan_user(void) { |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
|
|
|
|
|
|
|
return true; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void led_set_user(uint8_t usb_led) { |
|
|
|
void led_set_user(uint8_t usb_led) { |
|
|
|
|
|
|
|
|
|
|
|
if (usb_led & (1 << USB_LED_NUM_LOCK)) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (usb_led & (1 << USB_LED_CAPS_LOCK)) { |
|
|
|
if (usb_led & (1 << USB_LED_CAPS_LOCK)) { |
|
|
|
DDRB |= (1 << 2); PORTB &= ~(1 << 2); |
|
|
|
DDRB |= (1 << 2); PORTB &= ~(1 << 2); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
DDRB &= ~(1 << 2); PORTB &= ~(1 << 2); |
|
|
|
DDRB &= ~(1 << 2); PORTB &= ~(1 << 2); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (usb_led & (1 << USB_LED_COMPOSE)) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (usb_led & (1 << USB_LED_KANA)) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
enum function_id { |
|
|
|
|
|
|
|
SHIFT_ESC, |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const uint16_t PROGMEM fn_actions[] = { |
|
|
|
|
|
|
|
[0] = ACTION_FUNCTION(SHIFT_ESC), |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { |
|
|
|
|
|
|
|
static uint8_t shift_esc_shift_mask; |
|
|
|
|
|
|
|
switch (id) { |
|
|
|
|
|
|
|
case SHIFT_ESC: |
|
|
|
|
|
|
|
shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK; |
|
|
|
|
|
|
|
if (record->event.pressed) { |
|
|
|
|
|
|
|
if (shift_esc_shift_mask) { |
|
|
|
|
|
|
|
add_key(KC_GRV); |
|
|
|
|
|
|
|
send_keyboard_report(); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
add_key(KC_ESC); |
|
|
|
|
|
|
|
send_keyboard_report(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
if (shift_esc_shift_mask) { |
|
|
|
|
|
|
|
del_key(KC_GRV); |
|
|
|
|
|
|
|
send_keyboard_report(); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
del_key(KC_ESC); |
|
|
|
|
|
|
|
send_keyboard_report(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
break; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|