|
|
@ -20,62 +20,85 @@ enum layers { |
|
|
|
_LAYER0, |
|
|
|
_LAYER1, |
|
|
|
_LAYER2, |
|
|
|
_LAYER3 |
|
|
|
_LAYER3, |
|
|
|
_LAYER4 |
|
|
|
}; |
|
|
|
|
|
|
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
|
|
|
|
|
|
|
[_LAYER0] = LAYOUT( |
|
|
|
/* ┌─────────┬─────────┬─────────┐ */ |
|
|
|
KC_UP, TO(_LAYER1), |
|
|
|
/* ├─────────┼─────────┼─────────┤ */ |
|
|
|
KC_LEFT, KC_DOWN, KC_RIGHT |
|
|
|
/* └─────────┴─────────┴─────────┘ */ |
|
|
|
), |
|
|
|
|
|
|
|
[_LAYER1] = LAYOUT( |
|
|
|
/* ┌─────────┬─────────┬─────────┐ */ |
|
|
|
KC_PGUP, TO(_LAYER2), |
|
|
|
/* ├─────────┼─────────┼─────────┤ */ |
|
|
|
KC_HOME, KC_PGDN, KC_END |
|
|
|
/* └─────────┴─────────┴─────────┘ */ |
|
|
|
), |
|
|
|
|
|
|
|
[_LAYER2] = LAYOUT( |
|
|
|
/* ┌─────────┬─────────┬─────────┐ */ |
|
|
|
KC_MSEL, TO(_LAYER3), |
|
|
|
/* ├─────────┼─────────┼─────────┤ */ |
|
|
|
KC_MPRV, KC_MPLY, KC_MNXT |
|
|
|
/* └─────────┴─────────┴─────────┘ */ |
|
|
|
), |
|
|
|
|
|
|
|
[_LAYER3] = LAYOUT( |
|
|
|
/* ┌─────────┬─────────┬─────────┐ */ |
|
|
|
KC_MS_U, TO(_LAYER4), |
|
|
|
/* ├─────────┼─────────┼─────────┤ */ |
|
|
|
KC_MS_L, KC_MS_D, KC_MS_R |
|
|
|
/* └─────────┴─────────┴─────────┘ */ |
|
|
|
), |
|
|
|
|
|
|
|
[_LAYER4] = LAYOUT( |
|
|
|
/* ┌─────────┬─────────┬─────────┐ */ |
|
|
|
XXXXXXX, TO(_LAYER0), |
|
|
|
/* ├─────────┼─────────┼─────────┤ */ |
|
|
|
RGB_TOG, BL_TOGG, BL_STEP |
|
|
|
/* └─────────┴─────────┴─────────┘ */ |
|
|
|
), |
|
|
|
|
|
|
|
const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] PROGMEM = { |
|
|
|
/* Keymap 0 |
|
|
|
* ,-----------. |
|
|
|
* | |Up |Fn0| |
|
|
|
* |---+---+---| |
|
|
|
* |Lef|Dow|Rig| |
|
|
|
* `-----------' |
|
|
|
*/ |
|
|
|
LAYOUT( KC_UP, TO(_LAYER1), KC_LEFT,KC_DOWN,KC_RIGHT ), |
|
|
|
/* Keymap 1 |
|
|
|
* ,-----------. |
|
|
|
* | |PgU|Fn1| |
|
|
|
* |---+---+---| |
|
|
|
* |Hom|PgD|End| |
|
|
|
* `-----------' |
|
|
|
*/ |
|
|
|
LAYOUT( KC_PGUP,TO(_LAYER2), KC_HOME,KC_PGDN,KC_END ), |
|
|
|
/* Keymap 2 |
|
|
|
* ,-----------. |
|
|
|
* | |Sel|Fn2| |
|
|
|
* |---+---+---| |
|
|
|
* |Pre|Pla|Nex| |
|
|
|
* `-----------' |
|
|
|
*/ |
|
|
|
LAYOUT( KC_MSEL,TO(_LAYER3), KC_MPRV,KC_MPLY,KC_MNXT ), |
|
|
|
/* Keymap 3 |
|
|
|
* ,-----------. |
|
|
|
* | |MsU|Fn3| |
|
|
|
* |---+---+---| |
|
|
|
* |MsL|MsD|MsR| |
|
|
|
* `-----------' |
|
|
|
*/ |
|
|
|
LAYOUT( KC_MS_U,TO(_LAYER0), KC_MS_L,KC_MS_D,KC_MS_R ), |
|
|
|
// /* Keymap 4 |
|
|
|
// * ,-----------. |
|
|
|
// * | |Fn6|Fn4| |
|
|
|
// * |---+---+---| |
|
|
|
// * |Fn7|Fn5|Fn8| |
|
|
|
// * `-----------' |
|
|
|
// */ |
|
|
|
// LAYOUT( FN6, FN4, FN7, FN5, FN8 ), |
|
|
|
}; |
|
|
|
|
|
|
|
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { |
|
|
|
return MACRO_NONE ; |
|
|
|
} |
|
|
|
void eeconfig_init_user(void) { |
|
|
|
// use the non noeeprom versions, to write these values to EEPROM too |
|
|
|
rgblight_enable(); |
|
|
|
rgblight_mode(RGBLIGHT_MODE_BREATHING+1); |
|
|
|
|
|
|
|
void matrix_init_user(void) { |
|
|
|
backlight_enable(); |
|
|
|
} |
|
|
|
|
|
|
|
void matrix_scan_user(void) { |
|
|
|
void keyboard_post_init_user(void) { |
|
|
|
//layer_state_set_user is not called for inital state - set it here |
|
|
|
rgblight_sethsv_noeeprom_white(); |
|
|
|
} |
|
|
|
|
|
|
|
void led_set_user(uint8_t usb_led) { |
|
|
|
uint32_t layer_state_set_user(uint32_t state) { |
|
|
|
switch (biton32(state)) { |
|
|
|
case _LAYER1: |
|
|
|
rgblight_sethsv_noeeprom_cyan(); |
|
|
|
break; |
|
|
|
case _LAYER2: |
|
|
|
rgblight_sethsv_noeeprom_magenta(); |
|
|
|
break; |
|
|
|
case _LAYER3: |
|
|
|
rgblight_sethsv_noeeprom_red(); |
|
|
|
break; |
|
|
|
case _LAYER4: |
|
|
|
rgblight_sethsv_noeeprom_orange(); |
|
|
|
break; |
|
|
|
case _LAYER0: |
|
|
|
default: // for any other layers, or the default layer |
|
|
|
rgblight_sethsv_noeeprom_white(); |
|
|
|
break; |
|
|
|
} |
|
|
|
return state; |
|
|
|
} |