Tidy up Mod-Tap shortcuts (#4806)
parent
64c957d907
commit
3bd30085d8
|
@ -108,20 +108,20 @@ This key would activate Left Control and Left Shift when held, and send Escape w
|
||||||
For convenience, QMK includes some Mod-Tap shortcuts to make common combinations more compact in your keymap:
|
For convenience, QMK includes some Mod-Tap shortcuts to make common combinations more compact in your keymap:
|
||||||
|
|
||||||
|Key |Aliases |Description |
|
|Key |Aliases |Description |
|
||||||
|------------|---------------------------------------|-------------------------------------------------------|
|
|------------|-----------------------------------------------------------------|-------------------------------------------------------|
|
||||||
|`LCTL_T(kc)`|`CTL_T(kc)` |Left Control when held, `kc` when tapped |
|
|`LCTL_T(kc)`|`CTL_T(kc)` |Left Control when held, `kc` when tapped |
|
||||||
|`RCTL_T(kc)`| |Right Control when held, `kc` when tapped |
|
|`RCTL_T(kc)`| |Right Control when held, `kc` when tapped |
|
||||||
|`LSFT_T(kc)`|`SFT_T(kc)` |Left Shift when held, `kc` when tapped |
|
|`LSFT_T(kc)`|`SFT_T(kc)` |Left Shift when held, `kc` when tapped |
|
||||||
|`RSFT_T(kc)`| |Right Shift when held, `kc` when tapped |
|
|`RSFT_T(kc)`| |Right Shift when held, `kc` when tapped |
|
||||||
|`LALT_T(kc)`|`ALT_T(kc)` |Left Alt when held, `kc` when tapped |
|
|`LALT_T(kc)`|`ALT_T(kc)` |Left Alt when held, `kc` when tapped |
|
||||||
|`RALT_T(kc)`|`ALGR_T(kc)` |Right Alt when held, `kc` when tapped |
|
|`RALT_T(kc)`|`ALGR_T(kc)` |Right Alt when held, `kc` when tapped |
|
||||||
|`LGUI_T(kc)`|`LCMD_T(kc)`, `RWIN_T(kc)`, `GUI_T(kc)`|Left GUI when held, `kc` when tapped |
|
|`LGUI_T(kc)`|`LCMD_T(kc)`, `LWIN_T(kc)`, `GUI_T(kc)`, `CMD_T(kc)`, `WIN_T(kc)`|Left GUI when held, `kc` when tapped |
|
||||||
|`RGUI_T(kc)`|`RCMD_T(kc)`, `RWIN_T(kc)` |Right GUI when held, `kc` when tapped |
|
|`RGUI_T(kc)`|`RCMD_T(kc)`, `RWIN_T(kc)` |Right GUI when held, `kc` when tapped |
|
||||||
|`C_S_T(kc)` | |Left Control and Shift when held, `kc` when tapped |
|
|`C_S_T(kc)` | |Left Control and Shift when held, `kc` when tapped |
|
||||||
|`MEH_T(kc)` | |Left Control, Shift and Alt when held, `kc` when tapped|
|
|`MEH_T(kc)` | |Left Control, Shift and Alt when held, `kc` when tapped|
|
||||||
|`LCAG_T(kc)`| |Left Control, Alt and GUI when held, `kc` when tapped |
|
|`LCAG_T(kc)`| |Left Control, Alt and GUI when held, `kc` when tapped |
|
||||||
|`RCAG_T(kc)`| |Right Control, Alt and GUI when held, `kc` when tapped |
|
|`RCAG_T(kc)`| |Right Control, Alt and GUI when held, `kc` when tapped |
|
||||||
|`ALL_T(kc)` | |Left Control, Shift, Alt and GUI when held, `kc` when tapped - more info [here](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)|
|
|`HYPR_T(kc)`|`ALL_T(kc)` |Left Control, Shift, Alt and GUI when held, `kc` when tapped - more info [here](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)|
|
||||||
|`SGUI_T(kc)`|`SCMD_T(kc)`, `SWIN_T(kc)` |Left Shift and GUI when held, `kc` when tapped |
|
|`SGUI_T(kc)`|`SCMD_T(kc)`, `SWIN_T(kc)` |Left Shift and GUI when held, `kc` when tapped |
|
||||||
|`LCA_T(kc)` | |Left Control and Alt when held, `kc` when tapped |
|
|`LCA_T(kc)` | |Left Control and Alt when held, `kc` when tapped |
|
||||||
|
|
||||||
|
|
|
@ -343,20 +343,20 @@ This is a reference only. Each group of keys links to the page documenting their
|
||||||
## [Mod-Tap Keys](feature_advanced_keycodes.md#mod-tap)
|
## [Mod-Tap Keys](feature_advanced_keycodes.md#mod-tap)
|
||||||
|
|
||||||
|Key |Aliases |Description |
|
|Key |Aliases |Description |
|
||||||
|------------|---------------------------------------|-------------------------------------------------------|
|
|------------|-----------------------------------------------------------------|-------------------------------------------------------|
|
||||||
|`LCTL_T(kc)`|`CTL_T(kc)` |Left Control when held, `kc` when tapped |
|
|`LCTL_T(kc)`|`CTL_T(kc)` |Left Control when held, `kc` when tapped |
|
||||||
|`RCTL_T(kc)`| |Right Control when held, `kc` when tapped |
|
|`RCTL_T(kc)`| |Right Control when held, `kc` when tapped |
|
||||||
|`LSFT_T(kc)`|`SFT_T(kc)` |Left Shift when held, `kc` when tapped |
|
|`LSFT_T(kc)`|`SFT_T(kc)` |Left Shift when held, `kc` when tapped |
|
||||||
|`RSFT_T(kc)`| |Right Shift when held, `kc` when tapped |
|
|`RSFT_T(kc)`| |Right Shift when held, `kc` when tapped |
|
||||||
|`LALT_T(kc)`|`ALT_T(kc)` |Left Alt when held, `kc` when tapped |
|
|`LALT_T(kc)`|`ALT_T(kc)` |Left Alt when held, `kc` when tapped |
|
||||||
|`RALT_T(kc)`|`ALGR_T(kc)` |Right Alt when held, `kc` when tapped |
|
|`RALT_T(kc)`|`ALGR_T(kc)` |Right Alt when held, `kc` when tapped |
|
||||||
|`LGUI_T(kc)`|`LCMD_T(kc)`, `RWIN_T(kc)`, `GUI_T(kc)`|Left GUI when held, `kc` when tapped |
|
|`LGUI_T(kc)`|`LCMD_T(kc)`, `LWIN_T(kc)`, `GUI_T(kc)`, `CMD_T(kc)`, `WIN_T(kc)`|Left GUI when held, `kc` when tapped |
|
||||||
|`RGUI_T(kc)`|`RCMD_T(kc)`, `RWIN_T(kc)` |Right GUI when held, `kc` when tapped |
|
|`RGUI_T(kc)`|`RCMD_T(kc)`, `RWIN_T(kc)` |Right GUI when held, `kc` when tapped |
|
||||||
|`C_S_T(kc)` | |Left Control and Shift when held, `kc` when tapped |
|
|`C_S_T(kc)` | |Left Control and Shift when held, `kc` when tapped |
|
||||||
|`MEH_T(kc)` | |Left Control, Shift and Alt when held, `kc` when tapped|
|
|`MEH_T(kc)` | |Left Control, Shift and Alt when held, `kc` when tapped|
|
||||||
|`LCAG_T(kc)`| |Left Control, Alt and GUI when held, `kc` when tapped |
|
|`LCAG_T(kc)`| |Left Control, Alt and GUI when held, `kc` when tapped |
|
||||||
|`RCAG_T(kc)`| |Right Control, Alt and GUI when held, `kc` when tapped |
|
|`RCAG_T(kc)`| |Right Control, Alt and GUI when held, `kc` when tapped |
|
||||||
|`ALL_T(kc)` | |Left Control, Shift, Alt and GUI when held, `kc` when tapped - more info [here](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)|
|
|`HYPR_T(kc)`|`ALL_T(kc)` |Left Control, Shift, Alt and GUI when held, `kc` when tapped - more info [here](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)|
|
||||||
|`SGUI_T(kc)`|`SCMD_T(kc)`, `SWIN_T(kc)` |Left Shift and GUI when held, `kc` when tapped |
|
|`SGUI_T(kc)`|`SCMD_T(kc)`, `SWIN_T(kc)` |Left Shift and GUI when held, `kc` when tapped |
|
||||||
|`LCA_T(kc)` | |Left Control and Alt when held, `kc` when tapped |
|
|`LCA_T(kc)` | |Left Control and Alt when held, `kc` when tapped |
|
||||||
|
|
||||||
|
|
|
@ -640,38 +640,39 @@ enum quantum_keycodes {
|
||||||
// M-od, T-ap - 256 keycode max
|
// M-od, T-ap - 256 keycode max
|
||||||
#define MT(mod, kc) (QK_MOD_TAP | (((mod) & 0x1F) << 8) | ((kc) & 0xFF))
|
#define MT(mod, kc) (QK_MOD_TAP | (((mod) & 0x1F) << 8) | ((kc) & 0xFF))
|
||||||
|
|
||||||
#define CTL_T(kc) MT(MOD_LCTL, kc)
|
|
||||||
#define LCTL_T(kc) MT(MOD_LCTL, kc)
|
#define LCTL_T(kc) MT(MOD_LCTL, kc)
|
||||||
#define RCTL_T(kc) MT(MOD_RCTL, kc)
|
#define RCTL_T(kc) MT(MOD_RCTL, kc)
|
||||||
|
#define CTL_T(kc) LCTL_T(kc)
|
||||||
|
|
||||||
#define SFT_T(kc) MT(MOD_LSFT, kc)
|
|
||||||
#define LSFT_T(kc) MT(MOD_LSFT, kc)
|
#define LSFT_T(kc) MT(MOD_LSFT, kc)
|
||||||
#define RSFT_T(kc) MT(MOD_RSFT, kc)
|
#define RSFT_T(kc) MT(MOD_RSFT, kc)
|
||||||
|
#define SFT_T(kc) LSFT_T(kc)
|
||||||
|
|
||||||
#define ALT_T(kc) MT(MOD_LALT, kc)
|
|
||||||
#define LALT_T(kc) MT(MOD_LALT, kc)
|
#define LALT_T(kc) MT(MOD_LALT, kc)
|
||||||
#define RALT_T(kc) MT(MOD_RALT, kc)
|
#define RALT_T(kc) MT(MOD_RALT, kc)
|
||||||
|
#define ALT_T(kc) LALT_T(kc)
|
||||||
#define ALGR_T(kc) RALT_T(kc)
|
#define ALGR_T(kc) RALT_T(kc)
|
||||||
|
|
||||||
#define GUI_T(kc) MT(MOD_LGUI, kc)
|
|
||||||
#define CMD_T(kc) GUI_T(kc)
|
|
||||||
#define WIN_T(kc) GUI_T(kc)
|
|
||||||
#define LGUI_T(kc) MT(MOD_LGUI, kc)
|
#define LGUI_T(kc) MT(MOD_LGUI, kc)
|
||||||
|
#define RGUI_T(kc) MT(MOD_RGUI, kc)
|
||||||
#define LCMD_T(kc) LGUI_T(kc)
|
#define LCMD_T(kc) LGUI_T(kc)
|
||||||
#define LWIN_T(kc) LGUI_T(kc)
|
#define LWIN_T(kc) LGUI_T(kc)
|
||||||
#define RGUI_T(kc) MT(MOD_RGUI, kc)
|
|
||||||
#define RCMD_T(kc) RGUI_T(kc)
|
#define RCMD_T(kc) RGUI_T(kc)
|
||||||
#define RWIN_T(kc) RGUI_T(kc)
|
#define RWIN_T(kc) RGUI_T(kc)
|
||||||
|
#define GUI_T(kc) LGUI_T(kc)
|
||||||
|
#define CMD_T(kc) LCMD_T(kc)
|
||||||
|
#define WIN_T(kc) LWIN_T(kc)
|
||||||
|
|
||||||
#define C_S_T(kc) MT(MOD_LCTL | MOD_LSFT, kc) // Control + Shift e.g. for gnome-terminal
|
#define C_S_T(kc) MT(MOD_LCTL | MOD_LSFT, kc) // Left Control + Shift e.g. for gnome-terminal
|
||||||
#define MEH_T(kc) MT(MOD_LCTL | MOD_LSFT | MOD_LALT, kc) // Meh is a less hyper version of the Hyper key -- doesn't include Win or Cmd, so just alt+shift+ctrl
|
#define MEH_T(kc) MT(MOD_LCTL | MOD_LSFT | MOD_LALT, kc) // Meh is a less hyper version of the Hyper key -- doesn't include GUI, so just Left Control + Shift + Alt
|
||||||
#define LCAG_T(kc) MT(MOD_LCTL | MOD_LALT | MOD_LGUI, kc) // Left control alt and gui
|
#define LCAG_T(kc) MT(MOD_LCTL | MOD_LALT | MOD_LGUI, kc) // Left Control + Alt + GUI
|
||||||
#define RCAG_T(kc) MT(MOD_RCTL | MOD_RALT | MOD_RGUI, kc) // Right control alt and gui
|
#define RCAG_T(kc) MT(MOD_RCTL | MOD_RALT | MOD_RGUI, kc) // Right Control + Alt + GUI
|
||||||
#define ALL_T(kc) MT(MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI, kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/
|
#define HYPR_T(kc) MT(MOD_LCTL | MOD_LSFT | MOD_LALT | MOD_LGUI, kc) // see http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/
|
||||||
#define SGUI_T(kc) MT(MOD_LGUI | MOD_LSFT, kc)
|
#define SGUI_T(kc) MT(MOD_LGUI | MOD_LSFT, kc) // Left Shift + GUI
|
||||||
#define SCMD_T(kc) SGUI_T(kc)
|
#define SCMD_T(kc) SGUI_T(kc)
|
||||||
#define SWIN_T(kc) SGUI_T(kc)
|
#define SWIN_T(kc) SGUI_T(kc)
|
||||||
#define LCA_T(kc) MT(MOD_LCTL | MOD_LALT, kc) // Left control and left alt
|
#define LCA_T(kc) MT(MOD_LCTL | MOD_LALT, kc) // Left Control + Alt
|
||||||
|
#define ALL_T(kc) HYPR_T(kc)
|
||||||
|
|
||||||
// Dedicated keycode versions for Hyper and Meh, if you want to use them as standalone keys rather than mod-tap
|
// Dedicated keycode versions for Hyper and Meh, if you want to use them as standalone keys rather than mod-tap
|
||||||
#define KC_HYPR HYPR(KC_NO)
|
#define KC_HYPR HYPR(KC_NO)
|
||||||
|
|
Loading…
Reference in New Issue