Adding/tuning combos

- all five mouse buttons and drag tog on the left hand side
- added esc, tab, enter to left side
- added backspace, and del
This commit is contained in:
Victor 2024-04-16 23:46:10 -05:00
parent d3b130a53c
commit dae4f2b76a
Failed to generate hash of commit
3 changed files with 47 additions and 57 deletions

View file

@ -1,27 +1,5 @@
#include "combo.h"
//only need to make it for the qwerty layer
//const uint16_t PROGMEM dragtog_combo[] = {TR_COMM, TR_DOT, COMBO_END};
//const uint16_t PROGMEM sniptog_combo[] = {KC_M, TR_DOT, COMBO_END};
//const uint16_t PROGMEM moubtn4_combo[] = {KC_SPC, NAV, COMBO_END};
/*
mouse buttons to map
- mb1 left 1 df
- mb2 right 3 dg
- mb3 middle
- mb4 back 2 cv
- mb5 forward
bigrams that may work for mouse
- cv
- cb
- xc
- cv
*/
bool get_combo_must_hold(uint16_t index, combo_t *combo) {
switch (index) {
@ -38,25 +16,12 @@ bool get_combo_must_tap(uint16_t index, combo_t *combo) {
switch (index) {
/*
case DRAGTOGGLE:
case SNIPERTOGGLE:
case MOUSEBUTTON4:
return true;
*/
#if defined(MOUSEKEY_ENABLE)
case MOUSE_BUTTON1:
case MOUSE_BUTTON2:
case MOUSE_BUTTON4:
case MOUSE_DRGTOG:
#endif //MOUSEKEY_ENABLE
case KB_TAB:
case KB_BSPC:
case LYR_CONFIG:
case LYR_FUNCTION:
return false;
default:
return false;
return true;
}
}

View file

@ -2,49 +2,74 @@
#include "t4corun.h"
enum combos {
//DRAGTOGGLE,
//SNIPERTOGGLE,c
//MOUSEBUTTON4,
// left hand combos
#if defined(MOUSEKEY_ENABLE)
MOUSE_BUTTON1,
MOUSE_BUTTON2,
MOUSE_BUTTON3,
MOUSE_BUTTON4,
MOUSE_BUTTON5,
MOUSE_DRGTOG,
#endif //MOUSEKEY_ENABLE
KB_TAB,
KB_BSPC,
LYR_CONFIG,
KEY_ESC,
KEY_TAB,
KEY_ENT,
LYR_FUNCTION,
// right hand combos
KEY_DEL,
KEY_BSPC,
LYR_CONFIG,
COMBO_LENGTH
};
// left hand combos
#if defined(MOUSEKEY_ENABLE)
const uint16_t PROGMEM mou_btn1_combo[] = { KC_D, KC_F, COMBO_END };
const uint16_t PROGMEM mou_btn2_combo[] = { KC_D, KC_G, COMBO_END };
const uint16_t PROGMEM mou_btn4_combo[] = { KC_C, KC_V, COMBO_END };
const uint16_t PROGMEM mou_drg_combo[] = { TR_COMM, TR_DOT, COMBO_END };
const uint16_t PROGMEM mou_btn2_combo[] = { KC_S, KC_D, COMBO_END };
const uint16_t PROGMEM mou_btn3_combo[] = { KC_E, KC_R, COMBO_END };
const uint16_t PROGMEM mou_btn4_combo[] = { KC_W, KC_E, COMBO_END };
const uint16_t PROGMEM mou_btn5_combo[] = { KC_W, KC_R, COMBO_END };
const uint16_t PROGMEM mou_drg_combo[] = { KC_A, KC_S, COMBO_END };
#endif //MOUSEKEY_ENABLE
const uint16_t PROGMEM kb_tab_combo[] = { KC_S, KC_F, COMBO_END };
const uint16_t PROGMEM kb_bspc_combo[] = { KC_J, KC_L, COMBO_END };
const uint16_t PROGMEM lyr_cfg_combo[] = { KC_SPC, NAV, COMBO_END };
const uint16_t PROGMEM kb_esc_combo[] = { KC_Q, KC_W, COMBO_END };
const uint16_t PROGMEM kb_tab_combo[] = { KC_C, KC_V, COMBO_END };
const uint16_t PROGMEM kb_ent_combo[] = { KC_X, KC_V, COMBO_END };
const uint16_t PROGMEM lyr_fun_combo[] = { NUM, TR_LSFT, COMBO_END };
// right hand combos
const uint16_t PROGMEM kb_del_combo[] = { KC_M, TR_DOT, COMBO_END };
const uint16_t PROGMEM kb_bspc_combo[] = { KC_M, TR_COMM, COMBO_END };
const uint16_t PROGMEM lyr_cfg_combo[] = { KC_SPC, NAV, COMBO_END };
combo_t key_combos[COMBO_LENGTH] = {
// left hand combos
#if defined(MOUSEKEY_ENABLE)
[MOUSE_BUTTON1] = COMBO(mou_btn1_combo, TR_BTN1),
[MOUSE_BUTTON2] = COMBO(mou_btn2_combo, TR_BTN2),
[MOUSE_BUTTON3] = COMBO(mou_btn3_combo, TR_BTN3),
[MOUSE_BUTTON4] = COMBO(mou_btn4_combo, TR_BTN4),
[MOUSE_BUTTON4] = COMBO(mou_drg_combo, TR_DRGS),
[MOUSE_BUTTON5] = COMBO(mou_btn5_combo, TR_BTN5),
[MOUSE_DRGTOG] = COMBO(mou_drg_combo, TR_DRGS),
#endif //MOUSEKEY_ENABLE
[KB_TAB] = COMBO(kb_tab_combo, KC_TAB),
[KB_BSPC] = COMBO(kb_bspc_combo, KC_BSPC),
[LYR_CONFIG] = COMBO(lyr_cfg_combo, CONFIG),
[LYR_FUNCTION] = COMBO(lyr_fun_combo, FUNC)
[KEY_ESC] = COMBO(kb_esc_combo, KC_ESC),
[KEY_TAB] = COMBO(kb_tab_combo, KC_TAB),
[KEY_ENT] = COMBO(kb_end_combo, KC_ENT),
[LYR_FUNCTION] = COMBO(lyr_fun_combo, FUNC),
// right hand combos
[KEY_DEL] = COMBO(kb_del_combo, KC_DEL),
[KEY_BSPC] = COMBO(kb_bspc_combo, KC_BSPC),
[LYR_CONFIG] = COMBO(lyr_cfg_combo, CONFIG)
};
//their documentation is so confusing because you don't use COMBO_LEN defining the actions

View file

@ -237,7 +237,7 @@ enum keycodes {
#define LAYER_NUMBER \
KC_ESC, SC_SNIP, SC_FILE, FUNC, TR_GRV, KC_ENT, KC_7, KC_8, KC_9, KC_TAB, \
KC_ESC, SC_SNIP, SC_FILE, ___x___, TR_GRV, KC_ENT, KC_7, KC_8, KC_9, KC_TAB, \
_GACS_MODS________________________, TR_SCLN, KC_BSPC, KC_4, KC_5, KC_6, KC_DOT, \
_UCCPR_L___________________________________, KC_DEL, KC_1, KC_2, KC_3, TR_MINS, \
_LAYER_TRANS_____________, KC_SPC, NAV_0, ___x___