mirror of
https://github.com/qmk/qmk_userspace.git
synced 2025-05-08 16:44:17 -04:00
Basically reverting back to an old keymap
- removed most combos and all key overrides - implemented custom override for haptic and audio config - went back to older keymap (e.g. backspace and del on most layers) - reintroduced dedicated mouse button on thumb cluster - mouse button 2 is now a combo
This commit is contained in:
parent
db534a12b8
commit
bd72a9b350
14 changed files with 141 additions and 201 deletions
|
@ -43,7 +43,7 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
|||
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(KC_RGHT, KC_LEFT) },
|
||||
[_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(KC_VOLU, KC_VOLD) },
|
||||
[_CONFIG] = { ENCODER_CCW_CW(BASELYR, RBSELYR), ENCODER_CCW_CW(TR_RMOD, TR_RRMD) }
|
||||
[_CONFIG] = { ENCODER_CCW_CW(BASELYR, RBSELYR), ENCODER_CCW_CW(RGB_MOD, RGB_RMOD) }
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -24,10 +24,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
k32, k33, k34, k35, k36, k37 \
|
||||
) \
|
||||
LAYOUT_cnano_wrapper ( \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \
|
||||
KC_BTN1, k33, k34, k35, k36 \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \
|
||||
k32, k33, k34, k35, k36 \
|
||||
)
|
||||
|
||||
#define CNANO(...) LAYOUT_3x5_3_keymap(__VA_ARGS__)
|
||||
|
|
|
@ -52,14 +52,14 @@ 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(ZOOMOUT, ZOOMIN), ENCODER_CCW_CW(___x___, ___x___) },
|
||||
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(KC_LEFT, KC_RGHT) },
|
||||
[_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(KC_VOLD, KC_VOLU) },
|
||||
[_CONFIG] = { ENCODER_CCW_CW(RBSELYR, BASELYR), ENCODER_CCW_CW(TR_RRMD, TR_RMOD) }
|
||||
[_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(___x___, ___x___), ENCODER_CCW_CW(___x___, ___x___) },
|
||||
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(KC_LEFT, KC_RGHT) },
|
||||
[_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(KC_VOLD, KC_VOLU) },
|
||||
[_CONFIG] = { ENCODER_CCW_CW(RBSELYR, BASELYR), ENCODER_CCW_CW(RBSELYR, BASELYR) }
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -24,10 +24,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
k32, k33, k34, k35, k36, k37 \
|
||||
) \
|
||||
LAYOUT_crkbd_wrapper ( \
|
||||
KC_NO, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, KC_NO, \
|
||||
KC_NO, k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, KC_NO, \
|
||||
KC_NO, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, KC_NO, \
|
||||
KC_BTN1, k33, k34, k35, k36, KC_BTN4 \
|
||||
KC_NO, k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, KC_NO, \
|
||||
KC_NO, k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, KC_NO, \
|
||||
KC_NO, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, KC_NO, \
|
||||
k32, k33, k34, k35, k36, k37 \
|
||||
)
|
||||
|
||||
#define CRKBD(...) LAYOUT_3x5_3_keymap(__VA_ARGS__)
|
||||
|
|
|
@ -35,14 +35,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
|
||||
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(ZOOMOUT, ZOOMIN), ENCODER_CCW_CW(___x___, ___x___) },
|
||||
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(KC_LEFT, KC_RGHT) },
|
||||
[_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(KC_VOLD, KC_VOLU) },
|
||||
[_CONFIG] = { ENCODER_CCW_CW(RBSELYR, BASELYR), ENCODER_CCW_CW(TR_RRMD, TR_RMOD) }
|
||||
[_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(ZOOMOUT, ZOOMIN), ENCODER_CCW_CW(___x___, ___x___) },
|
||||
[_NUMBER] = { ENCODER_CCW_CW(___x___, ___x___), ENCODER_CCW_CW(KC_LEFT, KC_RGHT) },
|
||||
[_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(KC_VOLD, KC_VOLU) },
|
||||
[_CONFIG] = { ENCODER_CCW_CW(RBSELYR, BASELYR), ENCODER_CCW_CW(RGB_RMOD, RGB_MOD) }
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -25,12 +25,16 @@
|
|||
* https://docs.qmk.fm/tap_hold
|
||||
* https://docs.qmk.fm/one_shot_keys
|
||||
*/
|
||||
#define TAP_CODE_DELAY 5 //time before tap is released
|
||||
#define TAP_HOLD_CAPS_DELAY TAP_CODE_DELAY //turning down delay for caps lock so ploopy can do DPI switching
|
||||
#define WAIT_DELAY 5 //custom variable to configure time between taps
|
||||
#undef TAP_CODE_DELAY
|
||||
#undef TAPPING_TERM
|
||||
#undef QUICK_TAP_TERM
|
||||
|
||||
#undef ONESHOT_TAP_TOGGLE
|
||||
#undef ONESHOT_TIMEOUT
|
||||
|
||||
|
||||
#define TAP_CODE_DELAY 5
|
||||
#define TAPPING_TERM 175
|
||||
|
||||
#define QUICK_TAP_TERM 120
|
||||
|
||||
#define ONESHOT_TAP_TOGGLE 3
|
||||
|
@ -46,6 +50,9 @@
|
|||
* #undef CAPS_WORD_INVERT_ON_SHIFT
|
||||
*/
|
||||
#if defined(CAPS_WORD_ENABLE)
|
||||
# undef DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD
|
||||
# undef CAPS_WORD_IDLE_TIMEOUT
|
||||
|
||||
# define DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD
|
||||
# define CAPS_WORD_IDLE_TIMEOUT 2000
|
||||
#endif //CAPS_WORD_ENABLE
|
||||
|
@ -56,12 +63,14 @@
|
|||
* https://docs.qmk.fm/features/combo
|
||||
*/
|
||||
#if defined(COMBO_ENABLE)
|
||||
# undef COMBO_ONLY_FROM_LAYER
|
||||
# undef EXTRA_SHORT_COMBOS
|
||||
# undef COMBO_TERM
|
||||
# undef COMBO_SHOULD_TRIGGER
|
||||
|
||||
# define COMBO_ONLY_FROM_LAYER 0 //this will always setup combos based off of QWERTY layout
|
||||
# define EXTRA_SHORT_COMBOS
|
||||
|
||||
# define COMBO_TERM 35
|
||||
|
||||
# define COMBO_MUST_TAP_PER_COMBO
|
||||
# define COMBO_SHOULD_TRIGGER
|
||||
#endif //COMBO_ENABLE
|
||||
|
||||
|
@ -71,6 +80,15 @@
|
|||
* https://docs.qmk.fm/features/split_keyboard
|
||||
*/
|
||||
#if defined(SPLIT_KEYBOARD)
|
||||
# undef SPLIT_TRANSPORT_MIRROR
|
||||
# undef SPLIT_LAYER_STATE_ENABLE
|
||||
# undef SPLIT_LED_STATE_ENABLE
|
||||
# undef SPLIT_MODS_ENABLE
|
||||
# undef SPLIT_OLED_ENABLE
|
||||
# undef SPLIT_ACTIVITY_ENABLE
|
||||
# undef SPLIT_WPM_ENABLE
|
||||
# undef MASTER_RIGHT
|
||||
|
||||
# define SPLIT_TRANSPORT_MIRROR
|
||||
# define SPLIT_LAYER_STATE_ENABLE
|
||||
# define SPLIT_LED_STATE_ENABLE
|
||||
|
@ -87,6 +105,9 @@
|
|||
* https://docs.qmk.fm/features/oled_driver
|
||||
*/
|
||||
#if defined(OLED_ENABLE)
|
||||
# undef OLED_TIMEOUT
|
||||
# undef OLED_FONT_H
|
||||
|
||||
# define OLED_TIMEOUT 60000 //1 min
|
||||
# define OLED_FONT_H "./lib/font.c"
|
||||
#endif //OLED_ENABLE
|
||||
|
@ -98,6 +119,9 @@
|
|||
*/
|
||||
#if defined(HAPTIC_ENABLE)
|
||||
# if defined(HAPTIC_DRV2605L)
|
||||
# undef DRV2605L_GREETING
|
||||
# undef DRV2605L_DEFAULT_MODE
|
||||
|
||||
# define DRV2605L_GREETING DRV2605L_EFFECT_750_MS_ALERT_100
|
||||
# define DRV2605L_DEFAULT_MODE DRV2605L_EFFECT_STRONG_CLICK_1_100
|
||||
# endif //HAPTIC_DRV2605L
|
||||
|
@ -110,9 +134,16 @@
|
|||
* https://docs.qmk.fm/squeezing_avr#audio-settings
|
||||
*/
|
||||
#if defined(AUDIO_ENABLE)
|
||||
# undef KLOR_SOUND
|
||||
# undef BYE_SOUND
|
||||
# undef NO_MUSIC_MODE
|
||||
# undef AUDIO_CLICKY
|
||||
# undef STARTUP_SONG
|
||||
# undef GOODBYE_SONG
|
||||
# undef DEFAULT_LAYER_SONGS
|
||||
|
||||
# define KLOR_SOUND W__NOTE(_DS0), W__NOTE(_DS1), H__NOTE(_DS2), H__NOTE(_DS3), Q__NOTE(_DS4), Q__NOTE(_DS5), E__NOTE(_DS6), E__NOTE(_DS7), S__NOTE(_DS8), Q__NOTE(_GS0)
|
||||
# define BYE_SOUND H__NOTE(_DS4), H__NOTE(_DS3), W__NOTE(_DS1)
|
||||
|
||||
# define NO_MUSIC_MODE
|
||||
# define AUDIO_CLICKY
|
||||
# define STARTUP_SONG SONG(KLOR_SOUND)
|
||||
|
@ -130,7 +161,20 @@
|
|||
* https://docs.qmk.fm/features/rgb_matrix
|
||||
*/
|
||||
#if defined(RGB_MATRIX_ENABLE)
|
||||
# undef RGB_MATRIX_DEFAULT_VAL
|
||||
# undef RGB_MATRIX_SLEEP
|
||||
# undef RGB_MATRIX_TIMEOUT
|
||||
|
||||
# undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
||||
# undef RGB_MATRIX_DEFAULT_HUE
|
||||
# undef RGB_MATRIX_DEFAULT_SAT
|
||||
# undef RGB_MATRIX_DEFAULT_VAL
|
||||
# undef RGB_MATRIX_DEFAULT_SPD
|
||||
|
||||
# undef RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS
|
||||
# undef RGB_MATRIX_TYPING_HEATMAP_SPREAD
|
||||
# undef RGB_MATRIX_TYPING_HEATMAP_AREA_LIMIT
|
||||
# undef RGB_MATRIX_TYPING_HEATMAP_INCREASE_STEP
|
||||
|
||||
|
||||
# define RGB_MATRIX_SLEEP
|
||||
# define RGB_MATRIX_TIMEOUT 60000 //1 min
|
||||
|
|
|
@ -1,25 +1,11 @@
|
|||
#include "combo.h"
|
||||
|
||||
|
||||
bool get_combo_must_tap(uint16_t index, combo_t *combo) {
|
||||
switch (index) {
|
||||
case KEY_ENT:
|
||||
case KEY_TAB:
|
||||
return true;
|
||||
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
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_BUTTON1:
|
||||
case MOUSE_BUTTON2:
|
||||
if ( get_highest_layer(layer_state | default_layer_state) > FIRST_DEFAULT_LAYER ) {
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -2,20 +2,12 @@
|
|||
#include "t4corun.h"
|
||||
|
||||
|
||||
const uint16_t PROGMEM mou_btn1_combo[] = { KC_C, KC_V, COMBO_END };
|
||||
const uint16_t PROGMEM mou_btn2_combo[] = { KC_C, KC_V, COMBO_END };
|
||||
const uint16_t PROGMEM mou_drg_combo[] = { KC_X, KC_V, COMBO_END };
|
||||
|
||||
const uint16_t PROGMEM key_ent_combo[] = { KC_D, KC_F, COMBO_END };
|
||||
const uint16_t PROGMEM key_bspc_combo[] = { KC_M, TR_COMM, COMBO_END };
|
||||
const uint16_t PROGMEM key_tab_combo[] = { KC_J, KC_K, COMBO_END };
|
||||
|
||||
|
||||
enum combos {
|
||||
MOUSE_BUTTON1,
|
||||
MOUSE_BUTTON2,
|
||||
MOUSE_DRGTOG,
|
||||
KEY_ENT,
|
||||
KEY_BSPC,
|
||||
KEY_TAB,
|
||||
COMBO_LENGTH
|
||||
};
|
||||
|
||||
|
@ -23,9 +15,6 @@ enum combos {
|
|||
uint16_t COMBO_LEN = COMBO_LENGTH;
|
||||
|
||||
combo_t key_combos[COMBO_LENGTH] = {
|
||||
[MOUSE_BUTTON1] = COMBO(mou_btn1_combo, KC_BTN1),
|
||||
[MOUSE_DRGTOG] = COMBO(mou_drg_combo, TR_DRGS),
|
||||
[KEY_ENT] = COMBO(key_ent_combo, KC_ENT),
|
||||
[KEY_BSPC] = COMBO(key_bspc_combo, KC_BSPC),
|
||||
[KEY_TAB] = COMBO(key_tab_combo, KC_TAB)
|
||||
[MOUSE_BUTTON2] = COMBO(mou_btn2_combo, KC_BTN2),
|
||||
[MOUSE_DRGTOG] = COMBO(mou_drg_combo, TR_DRGS)
|
||||
};
|
|
@ -1,41 +0,0 @@
|
|||
#include "keyoverride.h"
|
||||
|
||||
/*
|
||||
Key Override
|
||||
Here we will override some shifted versions of keys
|
||||
https://docs.qmk.fm/#/feature_key_overrides?id=simple-example
|
||||
|
||||
Intentionally did not convert all the override/autoshit tap holds to this format
|
||||
- Here I could type faster and be able to hold to repeat the keycodes however
|
||||
- I had tons of same finger bigrams doing trying to get ~ and :
|
||||
- I didn't feel the need to be able to repeat those symbols
|
||||
*/
|
||||
|
||||
|
||||
const key_override_t delete_override = ko_make_basic(MOD_MASK_SHIFT, KC_BSPC, KC_DEL);
|
||||
|
||||
#if defined(HAPTIC_ENABLE)
|
||||
const key_override_t hfnext_override = ko_make_with_layers(MOD_MASK_SHIFT, HF_NEXT, HF_PREV, 1<<_CONFIG);
|
||||
const key_override_t hfconu_override = ko_make_with_layers(MOD_MASK_SHIFT, HF_CONU, HF_COND, 1<<_CONFIG);
|
||||
#endif //HAPTIC_ENABLE
|
||||
|
||||
#if defined(AUDIO_ENABLE)
|
||||
const key_override_t ckup_override = ko_make_with_layers(MOD_MASK_SHIFT, CK_UP, CK_DOWN, 1<<_CONFIG);
|
||||
#endif //AUDIO_ENABLE
|
||||
|
||||
const key_override_t **key_overrides = (const key_override_t *[]) {
|
||||
|
||||
&delete_override,
|
||||
|
||||
#if defined(HAPTIC_ENABLE)
|
||||
&hfnext_override,
|
||||
&hfconu_override,
|
||||
#endif //HAPTIC_ENABLE
|
||||
|
||||
#if defined(AUDIO_ENABLE)
|
||||
&ckup_override,
|
||||
#endif //AUDIO_ENABLE
|
||||
|
||||
NULL // Null terminate the array of overrides!
|
||||
|
||||
};
|
|
@ -1,3 +0,0 @@
|
|||
#pragma once
|
||||
|
||||
#include "t4corun.h"
|
|
@ -31,11 +31,11 @@ bool process_tap_hold_key(keyrecord_t* record, uint16_t tap_keycode, uint16_t ho
|
|||
switch (mode) {
|
||||
|
||||
case HOLD_BRACKETS:
|
||||
record->event.pressed ? insert_brackets(tap_keycode, hold_keycode, WAIT_DELAY) : 0;
|
||||
record->event.pressed ? insert_brackets(tap_keycode, hold_keycode, TAP_CODE_DELAY) : 0;
|
||||
break;
|
||||
|
||||
case HOLD_DOUBLETP:
|
||||
record->event.pressed ? double_tap(tap_keycode, WAIT_DELAY) : 0;
|
||||
record->event.pressed ? double_tap(tap_keycode, TAP_CODE_DELAY) : 0;
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
@ -33,9 +33,8 @@ WPM_ENABLE ?= yes
|
|||
# qmk features we will force as these are critical for my workflow
|
||||
EXTRAKEY_ENABLE ?= yes
|
||||
CAPS_WORD_ENABLE ?= yes
|
||||
MOUSEKEY_ENABLE ?= yes
|
||||
MOUSEKEY_ENABLE = yes
|
||||
COMBO_ENABLE ?= yes
|
||||
KEY_OVERRIDE_ENABLE ?= yes
|
||||
|
||||
|
||||
# ---------------------------------------------------------
|
||||
|
@ -52,10 +51,6 @@ ifeq ($(strip $(COMBO_ENABLE)), yes)
|
|||
INTROSPECTION_KEYMAP_C += features/combo.c
|
||||
endif
|
||||
|
||||
ifeq ($(strip $(KEY_OVERRIDE_ENABLE)), yes)
|
||||
SRC += features/keyoverride.c
|
||||
endif
|
||||
|
||||
ifeq ($(strip $(CAPS_WORD_ENABLE)), yes)
|
||||
SRC += features/capsword.c
|
||||
endif
|
||||
|
|
|
@ -1,8 +1,12 @@
|
|||
#include "t4corun.h"
|
||||
|
||||
// Keeps track of base layer so we can make one key to cycle through them
|
||||
// instead of making a key for each one */
|
||||
static uint8_t current_base_layer = FIRST_DEFAULT_LAYER;
|
||||
|
||||
// Keeps track of base layer so only one key is needed
|
||||
// to cycle through them vs making three individual ones
|
||||
static uint8_t current_base_layer = FIRST_DEFAULT_LAYER;
|
||||
|
||||
// keep track of current mods to override existing keys
|
||||
static uint8_t current_mods;
|
||||
|
||||
// Luna Pet Variables
|
||||
static bool isJumping = false;
|
||||
|
@ -25,6 +29,8 @@ layer_state_t layer_state_set_user(layer_state_t state) {
|
|||
// Customize behavior for existing keycodes or create new ones
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
|
||||
current_mods = get_mods() | get_oneshot_mods();
|
||||
|
||||
switch (keycode) {
|
||||
|
||||
// use the host state status to boot the Ploopy Nano
|
||||
|
@ -90,6 +96,30 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|||
}
|
||||
return false;
|
||||
|
||||
#if defined(HAPTIC_ENABLE)
|
||||
case TR_HNXT:
|
||||
if (record->event.pressed) {
|
||||
if( current_mods & MOD_MASK_SHIFT ) {
|
||||
haptic_mode_decrease();
|
||||
} else {
|
||||
haptic_mode_increase();
|
||||
}
|
||||
}
|
||||
return false;
|
||||
#endif
|
||||
|
||||
#if defined(AUDIO_ENABLE)
|
||||
case TR_CKUP:
|
||||
if (record->event.pressed) {
|
||||
if( current_mods & MOD_MASK_SHIFT ) {
|
||||
clicky_freq_down();
|
||||
} else {
|
||||
clicky_freq_up();
|
||||
}
|
||||
}
|
||||
return false;
|
||||
#endif
|
||||
|
||||
|
||||
//https://docs.qmk.fm/#/mod_tap?id=changing-both-tasp-and-hold
|
||||
//https://getreuer.info/posts/keyboards/triggers/index.html#tap-vs.-long-press
|
||||
|
|
|
@ -47,7 +47,10 @@ enum keycodes {
|
|||
TH_SCLN,
|
||||
TH_QUOT,
|
||||
|
||||
PN_BOOT,
|
||||
PN_BOOT, // Press to enter Ploopy Nano Bootloader
|
||||
|
||||
TR_HNXT, // HF_NEXT or HF_PREV when shift is held
|
||||
TR_CKUP, // CK_UP or CK_DOWN when shift is held
|
||||
|
||||
BASELYR,
|
||||
RBSELYR
|
||||
|
@ -71,11 +74,6 @@ enum keycodes {
|
|||
#define SC_SNIP LGUI(LSFT(KC_S))
|
||||
#define SC_FILE LGUI(KC_E)
|
||||
|
||||
// Zoom for encoders
|
||||
#define ZOOMIN LCTL(KC_WH_U)
|
||||
#define ZOOMOUT LCTL(KC_WH_D)
|
||||
#define ZOOMRST LCTL(KC_0)
|
||||
|
||||
/*
|
||||
- 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
|
||||
|
@ -130,66 +128,6 @@ enum keycodes {
|
|||
#endif //KEYBOARD_bastardkb_charybdis_3x5
|
||||
|
||||
|
||||
#if defined(DYNAMIC_MACRO_ENABLE)
|
||||
# define TR_DMR1 DM_REC1
|
||||
# define TR_DMP1 DM_PLY1
|
||||
# define TR_DMR2 DM_REC2
|
||||
# define TR_DMP2 DM_PLY2
|
||||
#else
|
||||
# define TR_DMR1 ___x___
|
||||
# define TR_DMP1 ___x___
|
||||
# define TR_DMR2 ___x___
|
||||
# define TR_DMP2 ___x___
|
||||
#endif //DYNAMIC_MACRO_ENABLE
|
||||
|
||||
|
||||
#if defined(RGB_MATRIX_ENABLE) || defined(RGBLIGHT_ENABLE)
|
||||
# define TR_RHUI RGB_HUI
|
||||
# define TR_RSAI RGB_SAI
|
||||
# define TR_RVAI RGB_VAI
|
||||
# define TR_RSPI RGB_SPI
|
||||
# define TR_RTOG RGB_TOG
|
||||
# define TR_RMOD RGB_MOD
|
||||
# define TR_RRMD RGB_RMOD
|
||||
#else
|
||||
# define TR_RHUI ___x___
|
||||
# define TR_RSAI ___x___
|
||||
# define TR_RVAI ___x___
|
||||
# define TR_RSPI ___x___
|
||||
# define TR_RTOG ___x___
|
||||
# define TR_RMOD ___x___
|
||||
# define TR_RRMD ___x___
|
||||
#endif //RGB_MATRIX_ENABLE || RGBLIGHT_ENABLE
|
||||
|
||||
|
||||
#if defined(HAPTIC_ENABLE)
|
||||
# define TR_HTOG HF_TOGG
|
||||
# define TR_HFBK HF_FDBK
|
||||
# define TR_HNXT HF_NEXT
|
||||
# define TR_HCNU HF_CONU
|
||||
# define TR_HRST HF_RST
|
||||
#else
|
||||
# define TR_HTOG ___x___
|
||||
# define TR_HFBK ___x___
|
||||
# define TR_HNXT ___x___
|
||||
# define TR_HCNU ___x___
|
||||
# define TR_HRST ___x___
|
||||
#endif //HAPTIC_ENABLe
|
||||
|
||||
|
||||
#if defined(AUDIO_ENABLE)
|
||||
# define TR_ATOG AU_TOGG
|
||||
# define TR_CTOG CK_TOGG
|
||||
# define TR_CKUP CK_UP
|
||||
# define TR_CRST CK_RST
|
||||
#else
|
||||
# define TR_ATOG ___x___
|
||||
# define TR_CTOG ___x___
|
||||
# define TR_CKUP ___x___
|
||||
# define TR_CRST ___x___
|
||||
#endif //AUDIO_ENABLE
|
||||
|
||||
|
||||
#define _NONE_3__________________ ___x___, ___x___, ___x___
|
||||
#define _NONE_5____________________________________ ___x___, ___x___, ___x___, ___x___, ___x___
|
||||
#define _GACS_MODS________________________ TR_LGUI, TR_LALT, TR_LCTL, TR_LSFT
|
||||
|
@ -225,35 +163,37 @@ enum keycodes {
|
|||
|
||||
|
||||
#define LAYER_NAVIGATION \
|
||||
KC_ESC, KC_HOME, KC_UP, KC_END, KC_PGUP, ___x___, ___x___, ___x___, KC_CAPS, CONFIG, \
|
||||
___x___, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, ___x___, _SCAG_MODS________________________, \
|
||||
_UCCPR_L___________________________________, ___x___, KC_APP, KC_VOLD, KC_VOLU, KC_MUTE, \
|
||||
ZOOMRST, NUM, KC_ENT, _LAYER_TRANS_____________
|
||||
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________________________, \
|
||||
_UCCPR_L___________________________________, KC_DEL, KC_TAB, KC_VOLD, KC_VOLU, KC_MUTE, \
|
||||
___x___, NUM, KC_ENT, _LAYER_TRANS_____________
|
||||
|
||||
|
||||
#define LAYER_NUMBER \
|
||||
KC_ESC, SC_SNIP, SC_FILE, MOU_FUN, TR_GRV, ___x___, KC_7, KC_8, KC_9, KC_COMM, \
|
||||
_GACS_MODS________________________, TR_SCLN, KC_0, KC_4, KC_5, KC_6, KC_DOT, \
|
||||
_UCCPR_L___________________________________, ___x___, KC_1, KC_2, KC_3, KC_MINS, \
|
||||
KC_ESC, SC_SNIP, SC_FILE, MOU_FUN, TR_GRV, KC_ENT, KC_7, KC_8, KC_9, KC_COMM, \
|
||||
_GACS_MODS________________________, TR_SCLN, KC_BSPC, KC_4, KC_5, KC_6, KC_DOT, \
|
||||
_UCCPR_L___________________________________, KC_0, KC_1, KC_2, KC_3, KC_MINS, \
|
||||
_LAYER_TRANS_____________, _BASE_R4_________________
|
||||
|
||||
|
||||
#define LAYER_SYMBOL \
|
||||
___x___, ___x___, KC_AT, KC_DLR, TR_GRV, TR_EQL, KC_HASH, KC_ASTR, ___x___, TR_DQUO, \
|
||||
___x___, TR_LCBR, KC_RCBR, KC_EXLM, TR_SCLN, KC_AMPR, KC_QUES, TR_LBRC, KC_RBRC, TR_SQUO, \
|
||||
___x___, TR_LABK, KC_RABK, TR_BSLS, TR_PIPE, TR_PERC, TR_SLSH, TR_LPRN, KC_RPRN, TR_MINS, \
|
||||
KC_ESC, ___x___, KC_AT, KC_DLR, TR_GRV, TR_EQL, KC_HASH, KC_ASTR, ___x___, TR_DQUO, \
|
||||
KC_AMPR, TR_LCBR, KC_RCBR, KC_EXLM, TR_SCLN, KC_BSPC, KC_QUES, TR_LBRC, KC_RBRC, TR_SQUO, \
|
||||
TR_PERC, TR_LABK, KC_RABK, TR_BSLS, TR_PIPE, KC_DEL, TR_SLSH, TR_LPRN, KC_RPRN, TR_MINS, \
|
||||
_LAYER_TRANS_____________, _LAYER_TRANS_____________
|
||||
|
||||
|
||||
|
||||
#define LAYER_MOUSE_FUNC \
|
||||
MOU_FUN, KC_MPRV, KC_MNXT, KC_MPLY, ___x___, ___x___, KC_F7, KC_F8, KC_F9, KC_F10, \
|
||||
_GACS_MODS________________________, TR_DRGS, ___x___, KC_F4, KC_F5, KC_F6, KC_F11, \
|
||||
_GACS_MODS________________________, TR_DRGS, KC_CAPS, KC_F4, KC_F5, KC_F6, KC_F11, \
|
||||
_______, ___x___, KC_BTN5, KC_BTN4, TR_SNIP, ___x___, KC_F1, KC_F2, KC_F3, KC_F12, \
|
||||
KC_BTN1, KC_BTN2, KC_BTN3, TR_PDPI, TR_SDPI, ___x___
|
||||
KC_BTN1, KC_BTN3, KC_BTN2, TR_PDPI, TR_SDPI, ___x___
|
||||
|
||||
|
||||
#define LAYER_CONFIG \
|
||||
TR_HRST, TR_HCNU, TR_HNXT, TR_HFBK, TR_HTOG, ___x___, PN_BOOT, EE_CLR, QK_BOOT, _______, \
|
||||
TR_CRST, TR_CKUP, TR_CTOG, ___x___, TR_ATOG, ___x___, TR_LSFT, ___x___, ___x___, BASELYR, \
|
||||
___x___, ___x___, ___x___, ___x___, TR_RTOG, TR_RMOD, TR_RHUI, TR_RSAI, TR_RVAI, TR_RSPI, \
|
||||
BASELYR, TR_DMR1, TR_DMP1, TR_DMP2, TR_DMR2, TR_RTOG
|
||||
___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___
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue