Some callum inspo

- Tried to minimize the layers again, got rid of config layer
- made a nifty overloaded function so I can overload the encoder
knob and use it in encoder maps
- just did it for KLOR for right now
This commit is contained in:
Victor 2024-07-15 23:55:56 -05:00
parent 4f953048c6
commit 4fd0793447
Failed to generate hash of commit
4 changed files with 119 additions and 18 deletions

View file

@ -26,8 +26,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_NAVIGATION] = KLOR(LAYER_NAVIGATION), [_NAVIGATION] = KLOR(LAYER_NAVIGATION),
[_NUMBER] = KLOR(LAYER_NUMBER), [_NUMBER] = KLOR(LAYER_NUMBER),
[_SYMBOL] = KLOR(LAYER_SYMBOL), [_SYMBOL] = KLOR(LAYER_SYMBOL),
[_MOUSE_FUNC] = KLOR(LAYER_MOUSE_FUNC), [_MOUSE_FUNC] = KLOR(LAYER_MOUSE_FUNC)
[_CONFIG] = KLOR(LAYER_CONFIG) //[_CONFIG] = KLOR(LAYER_CONFIG)
}; };
@ -39,11 +39,11 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[_QWERTY] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, [_QWERTY] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[_COLEMAK_DH] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, [_COLEMAK_DH] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[_GAME] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, [_GAME] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[_NAVIGATION] = { ENCODER_CCW_CW(KC_LEFT, KC_RGHT), ENCODER_CCW_CW(___x___, ___x___) }, [_NAVIGATION] = { ENCODER_CCW_CW(KC_LEFT, KC_RGHT), ENCODER_CCW_CW(REV_RGB, FWD_RGB) },
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(REV_TAB, FWD_TAB) }, [_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(REV_TAB, FWD_TAB) },
[_SYMBOL] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(___x___, ___x___) }, [_SYMBOL] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(___x___, ___x___) },
[_MOUSE_FUNC] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(ZOOMOUT, ZOOMIN) }, [_MOUSE_FUNC] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(ZOOMOUT, ZOOMIN) }
[_CONFIG] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(RBSELYR, BASELYR) } //[_CONFIG] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(RBSELYR, BASELYR) }
}; };

View file

@ -36,3 +36,4 @@ bool process_tap_hold_key (keyrecord_t* record, uint16_t tap_keycode, uint16_t h
} }
return false; return false;
} }

View file

@ -102,21 +102,15 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return false; return false;
case FWD_TAB: case FWD_TAB:
if (record->event.pressed) {
if (!hold_forward_active || (current_mods & MOD_MASK_SHIFT)) {
hold_forward_active = true;
unregister_code(KC_LSFT);
}
hold_mod_timer = timer_read();
register_code(KC_TAB);
} else {
unregister_code(KC_TAB);
}
return false;
case REV_TAB: case REV_TAB:
if (record->event.pressed) { if (record->event.pressed) {
if (!hold_reverse_active || !(current_mods & MOD_MASK_SHIFT)) { if (keycode == FWD_TAB && !hold_forward_active) {
hold_forward_active = true;
hold_reverse_active = false;
unregister_code(KC_LSFT);
}
if (keycode == REV_TAB && !hold_reverse_active) {
hold_forward_active = false;
hold_reverse_active = true; hold_reverse_active = true;
register_code(KC_LSFT); register_code(KC_LSFT);
} }
@ -149,6 +143,36 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
} }
return false; return false;
#if defined(RGB_MATRIX_ENABLE)
case FWD_RGB:
case REV_RGB:
if (record->event.pressed) {
switch (current_mods) {
case MOD_BIT(KC_LSFT):
keycode == FWD_RGB ? rgb_matrix_increase_hue() : rgb_matrix_decrease_hue();
break;
case MOD_BIT(KC_LCTL):
keycode == FWD_RGB ? rgb_matrix_increase_sat() : rgb_matrix_decrease_sat();
break;
case MOD_BIT(KC_LALT):
keycode == FWD_RGB ? rgb_matrix_increase_val() : rgb_matrix_decrease_val();
break;
case MOD_BIT(KC_LGUI):
keycode == FWD_RGB ? rgb_matrix_increase_speed() : rgb_matrix_decrease_speed();
break;
default:
keycode == FWD_RGB ? rgb_matrix_step() : rgb_matrix_step_reverse();
break;
}
}
return false;
#endif
#if defined(HAPTIC_ENABLE) #if defined(HAPTIC_ENABLE)
case TR_HNXT: case TR_HNXT:
if (record->event.pressed) { if (record->event.pressed) {

View file

@ -59,6 +59,9 @@ enum keycodes {
FWD_TAB, FWD_TAB,
REV_TAB, REV_TAB,
FWD_RGB,
REV_RGB,
ZOOMIN, ZOOMIN,
ZOOMOUT, ZOOMOUT,
@ -180,6 +183,76 @@ enum keycodes {
SCR_TOP, KC_MUTE SCR_TOP, KC_MUTE
#define LAYER_NAVIGATION \
KC_ESC, KC_HOME, KC_UP, KC_END, KC_PGUP, ___x___, KC_APP, ___x___, DM_REC1, DM_PLY1, \
KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_BSPC, _SCAG_MODS________________________, \
_UCCPR_L___________________________________, KC_DEL, KC_TAB, KC_VOLD, KC_VOLU, KC_MUTE, \
___x___, NUM, KC_ENT, _LAYER_TRANS_____________, \
SCR_TOP, ___x___
#define LAYER_NUMBER \
KC_ESC, SC_SNIP, SC_FILE, MOU_FUN, KC_ENT, ___x___, KC_7, KC_8, KC_9, KC_COMM, \
_GACS_MODS________________________, KC_TAB, ___x___, KC_4, KC_5, KC_6, KC_DOT, \
_UCCPR_L___________________________________, ___x___, KC_1, KC_2, KC_3, KC_MINS, \
_LAYER_TRANS_____________, KC_0, NAV, ___x___, \
___x___, SC_WIN
#define LAYER_SYMBOL \
QK_BOOT, ___x___, KC_AT, KC_DLR, TR_GRV, TR_EQL, KC_HASH, KC_ASTR, ___x___, ___x___, \
PN_BOOT, TR_LCBR, KC_RCBR, TR_PIPE, TR_SCLN, KC_AMPR, KC_QUES, TR_LBRC, KC_RBRC, ___x___, \
BASELYR, TR_LABK, KC_RABK, TR_BSLS, KC_EXLM, TR_PERC, TR_SLSH, TR_LPRN, KC_RPRN, ___x___, \
_LAYER_TRANS_____________, _LAYER_TRANS_____________, \
___x___, ___x___
#define LAYER_MOUSE_FUNC \
MOU_FUN, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, HF_TOGG, KC_F7, KC_F8, KC_F9, KC_F10, \
_GACS_MODS________________________, TR_DRGS, AU_TOGG, KC_F4, KC_F5, KC_F6, KC_F11, \
_______, RGB_MOD, KC_BTN5, KC_BTN4, TR_SNIP, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F12, \
KC_BTN1, KC_BTN3, KC_BTN2, TR_PDPI, TR_SDPI, ___x___, \
SCR_TOP, ZOOMRST
/*
#define LAYER_CONFIG \
___x___, HF_RST, TR_HNXT, HF_FDBK, HF_TOGG, BASELYR, PN_BOOT, EE_CLR, QK_BOOT, _______, \
RGB_MOD, CK_RST, TR_CKUP, CK_TOGG, AU_TOGG, ___x___, TR_LSFT, ___x___, ___x___, ___x___, \
RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_TOG, ___x___, ___x___, ___x___, ___x___, ___x___, \
___x___, DM_REC1, DM_PLY1, ___x___, ___x___, ___x___, \
___x___, ___x___
*/
/*
#define LAYER_QWERTY \
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \
KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TR_QUOT, \
MF_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, TR_COMM, TR_DOT, TR_MINS, \
_BASE_L4_________________, _BASE_R4_________________, \
SCR_TOP, KC_MUTE
#define LAYER_COLEMAK_DH \
KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, TR_QUOT, \
KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, \
MF_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, TR_COMM, TR_DOT, TR_MINS, \
_BASE_L4_________________, _BASE_R4_________________, \
SCR_TOP, KC_MUTE
#define LAYER_GAME \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_7, KC_8, KC_9, KC_ESC, \
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_4, KC_5, KC_6, KC_GRV, \
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LALT, KC_1, KC_2, KC_3, CM_TOGG, \
KC_ENT, KC_SPC, KC_LSFT, _BASE_R4_________________, \
SCR_TOP, KC_MUTE
#define LAYER_NAVIGATION \ #define LAYER_NAVIGATION \
KC_ESC, KC_HOME, KC_UP, KC_END, KC_PGUP, ___x___, KC_APP, ___x___, ___x___, CONFIG, \ KC_ESC, KC_HOME, KC_UP, KC_END, KC_PGUP, ___x___, KC_APP, ___x___, ___x___, CONFIG, \
___x___, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_BSPC, _SCAG_MODS________________________, \ ___x___, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_BSPC, _SCAG_MODS________________________, \
@ -218,3 +291,6 @@ enum keycodes {
RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_TOG, ___x___, ___x___, ___x___, ___x___, ___x___, \ RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_TOG, ___x___, ___x___, ___x___, ___x___, ___x___, \
___x___, DM_REC1, DM_PLY1, ___x___, ___x___, ___x___, \ ___x___, DM_REC1, DM_PLY1, ___x___, ___x___, ___x___, \
___x___, ___x___ ___x___, ___x___
*/