mirror of
https://github.com/qmk/qmk_userspace.git
synced 2025-05-04 22:54:16 -04:00
Fine tuning
- All feature config settings are now in two keycodes for encoder - All key press toggles are now in one keycode - added back the quote bracket tap holds - Cleaned up keymap - formatting - updated other board keymaps for these - removed trace of _CONFIG layer
This commit is contained in:
parent
a2a79ed324
commit
a48bbe358b
12 changed files with 102 additions and 161 deletions
|
@ -19,16 +19,13 @@ LAYOUT_rollow_wrapper ( \
|
|||
#define ROLLOW(...) LAYOUT_3x5_3_keymap(__VA_ARGS__)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = ROLLOW(LAYER_QWERTY),
|
||||
[_COLEMAK_DH] = ROLLOW(LAYER_COLEMAK_DH),
|
||||
[_GAME] = ROLLOW(LAYER_GAME),
|
||||
[_NAVIGATION] = ROLLOW(LAYER_NAVIGATION),
|
||||
[_NUMBER] = ROLLOW(LAYER_NUMBER),
|
||||
[_SYMBOL] = ROLLOW(LAYER_SYMBOL),
|
||||
[_MOUSE_FUNC] = ROLLOW(LAYER_MOUSE_FUNC),
|
||||
[_CONFIG] = ROLLOW(LAYER_CONFIG)
|
||||
|
||||
[_MOUSE_FUNC] = ROLLOW(LAYER_MOUSE_FUNC)
|
||||
};
|
||||
|
||||
|
||||
|
@ -36,16 +33,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
|
||||
/* These are horizontal encoders. Found I have to make it opposite the rotary encoders for it to feel intuitive*/
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
|
||||
[_QWERTY] = { ENCODER_CCW_CW(KC_WH_D, KC_WH_U), ENCODER_CCW_CW(KC_VOLU, KC_VOLD) },
|
||||
[_COLEMAK_DH] = { ENCODER_CCW_CW(KC_WH_D, KC_WH_U), ENCODER_CCW_CW(KC_VOLU, KC_VOLD) },
|
||||
[_GAME] = { ENCODER_CCW_CW(KC_WH_D, KC_WH_U), ENCODER_CCW_CW(KC_VOLU, KC_VOLD) },
|
||||
[_NAVIGATION] = { ENCODER_CCW_CW(KC_RGHT, KC_LEFT), ENCODER_CCW_CW(___x___, ___x___) },
|
||||
[_NAVIGATION] = { ENCODER_CCW_CW(KC_RGHT, KC_LEFT), ENCODER_CCW_CW(FWD_CFG, REV_CFG) },
|
||||
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(FWD_TAB, REV_TAB) },
|
||||
[_SYMBOL] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(___x___, ___x___) },
|
||||
[_MOUSE_FUNC] = { ENCODER_CCW_CW(KC_WH_D, KC_WH_U), ENCODER_CCW_CW(ZOOMIN, ZOOMOUT) },
|
||||
[_CONFIG] = { ENCODER_CCW_CW(BASELYR, RBSELYR), ENCODER_CCW_CW(BASELYR, RBSELYR) }
|
||||
|
||||
[_MOUSE_FUNC] = { ENCODER_CCW_CW(KC_WH_D, KC_WH_U), ENCODER_CCW_CW(ZOOMIN, ZOOMOUT) }
|
||||
};
|
||||
|
||||
#endif
|
|
@ -34,14 +34,11 @@ LAYOUT_cnano_wrapper ( \
|
|||
#define CNANO(...) LAYOUT_3x5_3_keymap(__VA_ARGS__)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = CNANO(LAYER_QWERTY),
|
||||
[_COLEMAK_DH] = CNANO(LAYER_COLEMAK_DH),
|
||||
[_GAME] = CNANO(LAYER_GAME),
|
||||
[_NAVIGATION] = CNANO(LAYER_NAVIGATION),
|
||||
[_NUMBER] = CNANO(LAYER_NUMBER),
|
||||
[_SYMBOL] = CNANO(LAYER_SYMBOL),
|
||||
[_MOUSE_FUNC] = CNANO(LAYER_MOUSE_FUNC),
|
||||
[_CONFIG] = CNANO(LAYER_CONFIG)
|
||||
|
||||
[_MOUSE_FUNC] = CNANO(LAYER_MOUSE_FUNC)
|
||||
};
|
|
@ -35,16 +35,13 @@ LAYOUT_swoop_wrapper ( \
|
|||
#define SWOOP(...) LAYOUT_3x5_3_keymap(__VA_ARGS__)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = SWOOP(LAYER_QWERTY),
|
||||
[_COLEMAK_DH] = SWOOP(LAYER_COLEMAK_DH),
|
||||
[_GAME] = SWOOP(LAYER_GAME),
|
||||
[_NAVIGATION] = SWOOP(LAYER_NAVIGATION),
|
||||
[_NUMBER] = SWOOP(LAYER_NUMBER),
|
||||
[_SYMBOL] = SWOOP(LAYER_SYMBOL),
|
||||
[_MOUSE_FUNC] = SWOOP(LAYER_MOUSE_FUNC),
|
||||
[_CONFIG] = SWOOP(LAYER_CONFIG)
|
||||
|
||||
[_MOUSE_FUNC] = SWOOP(LAYER_MOUSE_FUNC)
|
||||
};
|
||||
|
||||
|
||||
|
@ -52,16 +49,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
|
||||
/* The encoder presses are handled in the keymap */
|
||||
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) },
|
||||
[_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) },
|
||||
[_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_CFG, FWD_CFG) },
|
||||
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(REV_TAB, FWD_TAB) },
|
||||
[_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) },
|
||||
[_CONFIG] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(RBSELYR, BASELYR) }
|
||||
|
||||
[_MOUSE_FUNC] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D), ENCODER_CCW_CW(ZOOMOUT, ZOOMIN) }
|
||||
};
|
||||
|
||||
#endif //ENCODER_MAP_ENABLE
|
||||
|
|
|
@ -34,14 +34,11 @@ LAYOUT_crkbd_wrapper ( \
|
|||
#define CRKBD(...) LAYOUT_3x5_3_keymap(__VA_ARGS__)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = CRKBD(LAYER_QWERTY),
|
||||
[_COLEMAK_DH] = CRKBD(LAYER_COLEMAK_DH),
|
||||
[_GAME] = CRKBD(LAYER_GAME),
|
||||
[_NAVIGATION] = CRKBD(LAYER_NAVIGATION),
|
||||
[_NUMBER] = CRKBD(LAYER_NUMBER),
|
||||
[_SYMBOL] = CRKBD(LAYER_SYMBOL),
|
||||
[_MOUSE_FUNC] = CRKBD(LAYER_MOUSE_FUNC),
|
||||
[_CONFIG] = CRKBD(LAYER_CONFIG)
|
||||
|
||||
[_MOUSE_FUNC] = CRKBD(LAYER_MOUSE_FUNC)
|
||||
};
|
|
@ -19,7 +19,6 @@ LAYOUT_klor_wrapper ( \
|
|||
#define KLOR(...) LAYOUT_3x5_3_keymap(__VA_ARGS__)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = KLOR(LAYER_QWERTY),
|
||||
[_COLEMAK_DH] = KLOR(LAYER_COLEMAK_DH),
|
||||
[_GAME] = KLOR(LAYER_GAME),
|
||||
|
@ -27,24 +26,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
[_NUMBER] = KLOR(LAYER_NUMBER),
|
||||
[_SYMBOL] = KLOR(LAYER_SYMBOL),
|
||||
[_MOUSE_FUNC] = KLOR(LAYER_MOUSE_FUNC)
|
||||
//[_CONFIG] = KLOR(LAYER_CONFIG)
|
||||
|
||||
};
|
||||
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
|
||||
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) },
|
||||
[_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) },
|
||||
[_NAVIGATION] = { ENCODER_CCW_CW(KC_LEFT, KC_RGHT), ENCODER_CCW_CW(REV_RGB, FWD_RGB) },
|
||||
[_NUMBER] = { ENCODER_CCW_CW(REV_CFG, FWD_CFG), ENCODER_CCW_CW(REV_TAB, FWD_TAB) },
|
||||
[_NAVIGATION] = { ENCODER_CCW_CW(KC_LEFT, KC_RGHT), ENCODER_CCW_CW(REV_CFG, FWD_CFG) },
|
||||
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(REV_TAB, FWD_TAB) },
|
||||
[_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) }
|
||||
//[_CONFIG] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(RBSELYR, BASELYR) }
|
||||
|
||||
};
|
||||
|
||||
#endif
|
|
@ -19,14 +19,11 @@ LAYOUT_planck_wrapper (
|
|||
#define PLANCK(...) LAYOUT_3x5_keymap(__VA_ARGS__)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_QWERTY] = PLANCK(LAYER_QWERTY),
|
||||
[_COLEMAK_DH] = PLANCK(LAYER_COLEMAK_DH),
|
||||
[_GAME] = PLANCK(LAYER_GAME),
|
||||
[_NAVIGATION] = PLANCK(LAYER_NAVIGATION),
|
||||
[_NUMBER] = PLANCK(LAYER_NUMBER),
|
||||
[_SYMBOL] = PLANCK(LAYER_SYMBOL),
|
||||
[_MOUSE_FUNC] = PLANCK(LAYER_MOUSE_FUNC),
|
||||
[_CONFIG] = PLANCK(LAYER_CONFIG)
|
||||
|
||||
[_MOUSE_FUNC] = PLANCK(LAYER_MOUSE_FUNC)
|
||||
};
|
|
@ -16,23 +16,18 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#include "t4corun.h"
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT( KC_NO )
|
||||
|
||||
};
|
||||
|
||||
static bool num_lock_state = false;
|
||||
static bool scroll_lock_state = false;
|
||||
|
||||
void keyboard_post_init_user(void) {
|
||||
|
||||
num_lock_state = host_keyboard_led_state().num_lock;
|
||||
scroll_lock_state = host_keyboard_led_state().scroll_lock;
|
||||
|
||||
}
|
||||
|
||||
bool led_update_user(led_t led_state) {
|
||||
|
||||
// when scroll lock is pressed, toggle drag scroll state
|
||||
if ( scroll_lock_state != led_state.scroll_lock ) {
|
||||
toggle_drag_scroll();
|
||||
|
|
|
@ -1,11 +1,6 @@
|
|||
#include "combo.h"
|
||||
|
||||
bool combo_should_trigger (uint16_t combo_index, combo_t *combo, uint16_t keycode, keyrecord_t *record) {
|
||||
// disable all combos on config layer
|
||||
if (get_highest_layer(layer_state | default_layer_state) == _CONFIG) {
|
||||
return false;
|
||||
}
|
||||
|
||||
switch (combo_index) {
|
||||
case MOUSE_BUTTON2:
|
||||
if ( get_highest_layer(layer_state | default_layer_state) > FIRST_DEFAULT_LAYER ) {
|
||||
|
|
|
@ -45,9 +45,6 @@ void render_layer_state (uint8_t col, uint8_t line, bool moveCursor) {
|
|||
case _MOUSE_FUNC:
|
||||
oled_write_P(PSTR(OLED_RENDER_LAYER_5), false);
|
||||
break;
|
||||
case _CONFIG:
|
||||
oled_write_P(PSTR(OLED_RENDER_LAYER_6), false);
|
||||
break;
|
||||
default:
|
||||
oled_write_P(PSTR(OLED_RENDER_LAYER_1), false);
|
||||
break;
|
||||
|
@ -68,7 +65,6 @@ void render_layer_state_list (uint8_t col, uint8_t line, bool moveCursor) {
|
|||
oled_write_P(PSTR(OLED_RENDER_LAYER_3), current_layer == _NUMBER);
|
||||
oled_write_P(PSTR(OLED_RENDER_LAYER_4), current_layer == _SYMBOL);
|
||||
oled_write_P(PSTR(OLED_RENDER_LAYER_5), current_layer == _MOUSE_FUNC);
|
||||
oled_write_P(PSTR(OLED_RENDER_LAYER_6), current_layer == _CONFIG);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@
|
|||
# define OLED_RENDER_LAYER_3 "Number "
|
||||
# define OLED_RENDER_LAYER_4 "Symbol "
|
||||
# define OLED_RENDER_LAYER_5 "Mouse+Func"
|
||||
# define OLED_RENDER_LAYER_6 "Config "
|
||||
#else
|
||||
//128x32 are ? x 5 char wide
|
||||
# define OLED_RENDER_DEFAULT_LAYER1 "Qwrty"
|
||||
|
@ -24,7 +23,6 @@
|
|||
# define OLED_RENDER_LAYER_3 " Num "
|
||||
# define OLED_RENDER_LAYER_4 " Sym "
|
||||
# define OLED_RENDER_LAYER_5 " MFn "
|
||||
# define OLED_RENDER_LAYER_6 " Cfg "
|
||||
#endif
|
||||
|
||||
void render_oled_128x64 (void);
|
||||
|
|
|
@ -43,7 +43,6 @@ void set_default_layer(bool forward) {
|
|||
// helper function to put ploopy nano into bootloader
|
||||
// my ploopy nano will reset when num/caps/scroll lock is enabled
|
||||
void reset_ploopynano(void) {
|
||||
|
||||
// turn on all three host states
|
||||
if(!host_keyboard_led_state().num_lock) { tap_code(KC_NUM); }
|
||||
if(!host_keyboard_led_state().caps_lock) { tap_code(KC_CAPS); }
|
||||
|
@ -68,13 +67,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|||
record->event.pressed ? tap_code(KC_SCRL) : tap_code(KC_SCRL);
|
||||
return false;
|
||||
|
||||
|
||||
// makes num lock a hold instead of toggle
|
||||
// prevents accidental ploopy nano going into bootloader
|
||||
case KC_NUM:
|
||||
record->event.pressed ? tap_code(KC_NUM) : tap_code(KC_NUM);
|
||||
return false;
|
||||
|
||||
// controls luna pet OLED animation
|
||||
#if defined(WPM_ENABLE)
|
||||
case KC_SPC:
|
||||
if (record->event.pressed) {
|
||||
|
@ -87,24 +86,20 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|||
break;
|
||||
#endif // WPM_ENABLE
|
||||
|
||||
case BASELYR:
|
||||
if (record->event.pressed) {
|
||||
set_default_layer(true);
|
||||
}
|
||||
return false;
|
||||
|
||||
// turn encoder for tab and shift tab
|
||||
// hold alt or ctrl while turning for window / tab switching
|
||||
case FWD_TAB:
|
||||
case REV_TAB:
|
||||
if (record->event.pressed) {
|
||||
if (keycode == FWD_TAB && !hold_forward_active) {
|
||||
hold_forward_active = true;
|
||||
hold_reverse_active = false;
|
||||
unregister_code(KC_LSFT);
|
||||
unregister_mods(MOD_MASK_SHIFT);
|
||||
}
|
||||
if (keycode == REV_TAB && !hold_reverse_active) {
|
||||
hold_forward_active = false;
|
||||
hold_reverse_active = true;
|
||||
register_code(KC_LSFT);
|
||||
register_mods(MOD_MASK_SHIFT);
|
||||
}
|
||||
hold_mod_timer = timer_read();
|
||||
register_code(KC_TAB);
|
||||
|
@ -113,49 +108,55 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|||
}
|
||||
return false;
|
||||
|
||||
case FWD_RGB:
|
||||
case REV_RGB:
|
||||
// turn encoder for mouse wheel zoom
|
||||
case ZOOMIN:
|
||||
case ZOOMOUT:
|
||||
if (record->event.pressed) {
|
||||
switch (current_mods) {
|
||||
#if defined(RGB_MATRIX_ENABLE)
|
||||
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;
|
||||
|
||||
case MOD_BIT(KC_LSFT) | MOD_BIT(KC_LCTL):
|
||||
keycode == FWD_RGB ? rgb_matrix_step() : rgb_matrix_step_reverse();
|
||||
break;
|
||||
#endif //RGB_MATRIX_ENABLE
|
||||
default:
|
||||
keycode == FWD_RGB ? set_default_layer(true) : set_default_layer(false);
|
||||
break;
|
||||
if (!hold_forward_active) {
|
||||
hold_forward_active = true;
|
||||
register_mods(MOD_MASK_CTRL);
|
||||
}
|
||||
hold_mod_timer = timer_read();
|
||||
keycode == ZOOMIN ? register_code(KC_WH_U) : register_code(KC_WH_D);
|
||||
} else {
|
||||
keycode == ZOOMIN ? unregister_code(KC_WH_U) : unregister_code(KC_WH_D);
|
||||
}
|
||||
return false;
|
||||
|
||||
// turn encoder while holding mod combinations to adjust features
|
||||
// e.g. RGB settings, haptic frequency, click frequency, base layer
|
||||
case FWD_CFG:
|
||||
case REV_CFG:
|
||||
if (record->event.pressed) {
|
||||
if (!hold_forward_active) {
|
||||
hold_forward_active = true;
|
||||
}
|
||||
hold_mod_timer = timer_read();
|
||||
switch (current_mods) {
|
||||
#if defined(HAPTIC_ENABLE)
|
||||
#if defined(RGB_MATRIX_ENABLE)
|
||||
case MOD_BIT(KC_LSFT):
|
||||
keycode == FWD_CFG ? rgb_matrix_increase_hue() : rgb_matrix_decrease_hue();
|
||||
break;
|
||||
case MOD_BIT(KC_LCTL):
|
||||
keycode == FWD_CFG ? rgb_matrix_increase_sat() : rgb_matrix_decrease_sat();
|
||||
break;
|
||||
case MOD_BIT(KC_LALT):
|
||||
keycode == FWD_CFG ? rgb_matrix_increase_val() : rgb_matrix_decrease_val();
|
||||
break;
|
||||
case MOD_BIT(KC_LGUI):
|
||||
keycode == FWD_CFG ? rgb_matrix_increase_speed() : rgb_matrix_decrease_speed();
|
||||
break;
|
||||
case MOD_BIT(KC_LSFT) | MOD_BIT(KC_LCTL):
|
||||
keycode == FWD_CFG ? rgb_matrix_step() : rgb_matrix_step_reverse();
|
||||
break;
|
||||
#endif //RGB_MATRIX_ENABLE
|
||||
#if defined(HAPTIC_ENABLE)
|
||||
case MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT):
|
||||
keycode == FWD_CFG ? haptic_mode_increase() : haptic_mode_decrease();
|
||||
break;
|
||||
#endif //HAPTIC_ENABLE
|
||||
#if defined(AUDIO_ENABLE)
|
||||
case MOD_BIT(KC_LCTL):
|
||||
case MOD_BIT(KC_LALT) | MOD_BIT(KC_LGUI):
|
||||
keycode == FWD_CFG ? clicky_freq_up() : clicky_freq_down();
|
||||
break;
|
||||
#endif //AUDIO_ENABLE
|
||||
|
@ -166,57 +167,46 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|||
}
|
||||
return false;
|
||||
|
||||
case ZOOMIN:
|
||||
case ZOOMOUT:
|
||||
if (record->event.pressed) {
|
||||
if (!hold_forward_active) {
|
||||
hold_forward_active = true;
|
||||
register_code(KC_LCTL);
|
||||
}
|
||||
hold_mod_timer = timer_read();
|
||||
keycode == ZOOMIN ? register_code(KC_WH_U) : register_code(KC_WH_D);
|
||||
} else {
|
||||
keycode == ZOOMIN ? unregister_code(KC_WH_U) : unregister_code(KC_WH_D);
|
||||
}
|
||||
return false;
|
||||
|
||||
// press key while holding mod combinations to toggle features or enter bootloader
|
||||
case TOG_CFG:
|
||||
if (record->event.pressed) {
|
||||
switch (current_mods) {
|
||||
#if defined(RGB_MATRIX_ENABLE)
|
||||
case MOD_BIT(KC_LSFT):
|
||||
reset_keyboard();
|
||||
break;
|
||||
case MOD_BIT(KC_LCTL):
|
||||
reset_ploopynano();
|
||||
break;
|
||||
#if defined(RGB_MATRIX_ENABLE)
|
||||
case MOD_BIT(KC_LALT):
|
||||
rgb_matrix_toggle();
|
||||
break;
|
||||
#endif //RGB_MATRIX_ENABLE
|
||||
#if defined(COMBO_ENABLE)
|
||||
case MOD_BIT(KC_LGUI):
|
||||
combo_toggle();
|
||||
break;
|
||||
#endif //COMBO_ENABLE
|
||||
#if defined(HAPTIC_ENABLE)
|
||||
case MOD_BIT(KC_LCTL):
|
||||
case MOD_BIT(KC_LSFT) | MOD_BIT(KC_LCTL):
|
||||
haptic_toggle();
|
||||
break;
|
||||
#endif //HAPTIC_ENABLE
|
||||
#if defined(AUDIO_ENABLE)
|
||||
case MOD_BIT(KC_LALT):
|
||||
case MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT):
|
||||
is_audio_on() ? audio_off(): audio_on();
|
||||
break;
|
||||
|
||||
case MOD_BIT(KC_LGUI):
|
||||
case MOD_BIT(KC_LALT) | MOD_BIT(KC_LGUI):
|
||||
clicky_toggle();
|
||||
break;
|
||||
#endif //AUDIO_ENABLE
|
||||
|
||||
|
||||
case MOD_BIT(KC_LSFT) | MOD_BIT(KC_LCTL):
|
||||
reset_keyboard();
|
||||
break;
|
||||
|
||||
case MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT):
|
||||
reset_ploopynano();
|
||||
break;
|
||||
|
||||
default:
|
||||
set_default_layer(true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
unregister_mods(MOD_MASK_CSAG);
|
||||
return false;
|
||||
|
||||
//https://docs.qmk.fm/#/mod_tap?id=changing-both-tasp-and-hold
|
||||
|
@ -274,8 +264,7 @@ void matrix_scan_user(void) {
|
|||
// timer for the hold mods
|
||||
if (hold_forward_active || hold_reverse_active) {
|
||||
if (timer_elapsed(hold_mod_timer) > HOLD_MOD_TIMEOUT) {
|
||||
unregister_code(KC_LSFT);
|
||||
unregister_code(KC_LCTL);
|
||||
unregister_mods(MOD_MASK_CSAG);
|
||||
hold_forward_active = false;
|
||||
hold_reverse_active = false;
|
||||
}
|
||||
|
|
|
@ -22,8 +22,7 @@ enum layers {
|
|||
_NAVIGATION,
|
||||
_NUMBER,
|
||||
_SYMBOL,
|
||||
_MOUSE_FUNC,
|
||||
_CONFIG
|
||||
_MOUSE_FUNC
|
||||
};
|
||||
|
||||
// start at the second layer
|
||||
|
@ -54,21 +53,17 @@ enum keycodes {
|
|||
TH_SCLN,
|
||||
TH_QUOT,
|
||||
|
||||
FWD_TAB, // enables encoder to alt-tab/alt+shift-tab
|
||||
REV_TAB, // alt-tab/alt+shift-tab or ctrl-tab/ctrl+shift tab
|
||||
FWD_TAB, // turn encoder for tab and shift tab
|
||||
REV_TAB, // hold alt or ctrl while turning for window / tab switching
|
||||
|
||||
FWD_RGB, // enables overloaded encoder to adjust RGB mode and settings
|
||||
REV_RGB,
|
||||
|
||||
FWD_CFG, // enables overloaded encoder to adjust other features
|
||||
REV_CFG, // e.g. haptic freq, click freq
|
||||
|
||||
TOG_CFG, // enables overloaded key press to toggle features on or off
|
||||
|
||||
ZOOMIN, // enables encoder to mouse wheel zoom
|
||||
ZOOMIN, // turn encoder for mouse wheel zoom
|
||||
ZOOMOUT,
|
||||
|
||||
BASELYR // enables key press to change base layer
|
||||
FWD_CFG, // turn encoder while holding mod combinations to adjust features
|
||||
REV_CFG, // e.g. RGB settings, haptic frequency, click frequency, base layer
|
||||
|
||||
TOG_CFG // press key while holding mod combinations to toggle features or enter bootloader
|
||||
|
||||
};
|
||||
|
||||
#define ___x___ KC_NO
|
||||
|
@ -95,8 +90,8 @@ enum keycodes {
|
|||
#define SCR_TOP LCTL(KC_HOME)
|
||||
|
||||
/*
|
||||
- Any keycodes with prefix TR has behavior dependent on if the feature is enabled.
|
||||
- If the feature is disabled then the key is just the normal key
|
||||
- Any keycodes with prefix TR has behavior dependent on if the feature is enabled.
|
||||
- We will only define things that are used across different layers. Entire layers are turned off in the keymap
|
||||
*/
|
||||
|
||||
|
@ -180,17 +175,17 @@ enum keycodes {
|
|||
#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_Z, KC_X, KC_C, KC_V, KC_B, KC_LALT, KC_1, KC_2, KC_3, ___x___, \
|
||||
KC_ENT, KC_SPC, KC_LSFT, _BASE_R4_________________, \
|
||||
SCR_TOP, KC_MUTE
|
||||
|
||||
|
||||
#define LAYER_NAVIGATION \
|
||||
KC_ESC, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_CAPS, KC_APP, ___x___, DM_REC1, DM_PLY1, \
|
||||
KC_ESC, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_CAPS, KC_APP, ___x___, ___x___, ___x___, \
|
||||
___x___, 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, BASELYR
|
||||
SCR_TOP, TOG_CFG
|
||||
|
||||
|
||||
#define LAYER_NUMBER \
|
||||
|
@ -198,13 +193,13 @@ enum keycodes {
|
|||
_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___, \
|
||||
BASELYR, SC_WIN
|
||||
___x___, SC_WIN
|
||||
|
||||
|
||||
#define LAYER_SYMBOL \
|
||||
___x___, ___x___, KC_AT, KC_DLR, TR_GRV, TR_EQL, KC_HASH, KC_ASTR, ___x___, ___x___, \
|
||||
___x___, TR_LCBR, KC_RCBR, TR_PIPE, TR_SCLN, KC_AMPR, KC_QUES, TR_LBRC, KC_RBRC, ___x___, \
|
||||
___x___, TR_LABK, KC_RABK, TR_BSLS, KC_EXLM, TR_PERC, TR_SLSH, TR_LPRN, KC_RPRN, ___x___, \
|
||||
___x___, ___x___, KC_AT, KC_DLR, TR_GRV, TR_EQL, KC_HASH, KC_ASTR, ___x___, TR_DQUO, \
|
||||
___x___, TR_LCBR, KC_RCBR, TR_PIPE, TR_SCLN, KC_AMPR, KC_QUES, TR_LBRC, KC_RBRC, TR_SQUO, \
|
||||
___x___, TR_LABK, KC_RABK, TR_BSLS, KC_EXLM, TR_PERC, TR_SLSH, TR_LPRN, KC_RPRN, TR_MINS, \
|
||||
_LAYER_TRANS_____________, _LAYER_TRANS_____________, \
|
||||
___x___, ___x___
|
||||
|
||||
|
@ -213,5 +208,5 @@ enum keycodes {
|
|||
MOU_FUN, ___x___, ___x___, TR_PDPI, TR_SDPI, TOG_CFG, KC_F7, KC_F8, KC_F9, KC_F10, \
|
||||
_GACS_MODS________________________, TR_DRGS, FWD_CFG, KC_F4, KC_F5, KC_F6, KC_F11, \
|
||||
_______, KC_BTN1, KC_BTN5, KC_BTN4, TR_SNIP, REV_CFG, KC_F1, KC_F2, KC_F3, KC_F12, \
|
||||
KC_BTN1, KC_BTN3, KC_BTN2, REV_RGB, FWD_RGB, ___x___, \
|
||||
KC_BTN1, KC_BTN3, KC_BTN2, DM_PLY1, DM_REC1, ___x___, \
|
||||
SCR_TOP, ZOOMRST
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue