diff options
author | Daniel RodrÃguez Rivero <rdanielo@gmail.com> | 2020-01-27 23:42:38 +0100 |
---|---|---|
committer | Drashna Jaelre <drashna@live.com> | 2020-01-27 14:42:38 -0800 |
commit | 1b7a003d842c76cd141af726c13e2af1a4458bac (patch) | |
tree | 678d8482537b4b444810fa0d520dbff9eb0c4ff4 /users/danielo515/tap_dance.h | |
parent | 0804f0a5dd08ed0807a67793ef329fa49ed5b16f (diff) |
[Keymap] update to Danielo515 keymaps (#8004)
* feat(build): added script for compiling with docker easily
* chore: bring my own build with docker to master
* feat: merge ergodox ez into latest maste
* chore: remove my build with docker file
* chore: remove my changes to process_leader
* feat: more modular user danielo515
* Apply suggestions from @ridingqwerty
Co-Authored-By: ridingqwerty <george.g.koenig@gmail.com>
* chore: more suggestions implemented
* chore: add my basic details
* Apply suggestions from @drashna
Co-Authored-By: Drashna Jaelre <drashna@live.com>
* fix: more @drashna fixes
* feat: @fauxpark optimization
* fix: some more @drashna improvements
Co-Authored-By: Drashna Jaelre <drashna@live.com>
* chore: small improvement on layout
* fix: some more @drashna improvements
* chore: remove some F dance
Co-authored-by: ridingqwerty <george.g.koenig@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Diffstat (limited to 'users/danielo515/tap_dance.h')
-rw-r--r-- | users/danielo515/tap_dance.h | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/users/danielo515/tap_dance.h b/users/danielo515/tap_dance.h new file mode 100644 index 0000000000..6ec4fe13cf --- /dev/null +++ b/users/danielo515/tap_dance.h @@ -0,0 +1,80 @@ +#include "quantum.h" +extern bool CMD(uint16_t kc); +extern bool onMac; + + +#define ACTION_TAP_DANCE_DOUBLE_SAFE(kc1, kc2) { \ + .fn = { NULL, qk_tap_dance_pair_finished_safe, qk_tap_dance_pair_reset_safe }, \ + .user_data = (void *)&((qk_tap_dance_pair_t) { kc1, kc2 }), \ + } + +#ifdef QUAD_DANCE +//Enums used to clearly convey the state of the tap dance +enum { + SINGLE_TAP = 1, + SINGLE_HOLD = 2, + DOUBLE_TAP = 3, + DOUBLE_HOLD = 4, + DOUBLE_SINGLE_TAP = 5 //send SINGLE_TAP twice - NOT DOUBLE_TAP + // Add more enums here if you want for triple, quadruple, etc. +}; +int cur_dance (qk_tap_dance_state_t *state); +# endif + +enum tap_dance { + COPY_CUT, + PASTE_DANCE, + _TD_F1, + _TD_F2, + _TD_F3, + _TD_F4, + _TD_F5, + _TD_F6, + _TD_F7, + _TD_F8, + _TD_F9, + _TD_F10, + _TD_F11, + _TD_F12, + _TD_H_ENTER, + _TD_CLN, + _TD_SLASH, + // old ones + LEFT_HOME, + J_ENT, + H_MINS, + RGT_HOME, + _TD_COPY, + _TD_CUT, + _TD_PASTE, +}; +void qk_tap_dance_pair_finished_safe(qk_tap_dance_state_t *state, void *user_data); +void qk_tap_dance_pair_reset_safe(qk_tap_dance_state_t *state, void *user_data); +void td_copy_cut (qk_tap_dance_state_t *state, void *user_data); +void td_paste(qk_tap_dance_state_t *state, void *user_data); +int cur_dance (qk_tap_dance_state_t *state); +void dance_cut (qk_tap_dance_state_t *state, void *user_data); +void dance_copy (qk_tap_dance_state_t *state, void *user_data); +void dance_paste (qk_tap_dance_state_t *state, void *user_data); + +#define TD_COPY TD(_TD_COPY) +#define TD_CUT TD(_TD_CUT) +#define KC_TD_COPY TD(_TD_COPY) // Declarations for macros that add KC_ +#define KC_TD_CUT TD(_TD_CUT) +#define KC_TD_PASTE TD(_TD_PASTE) +#define KC_E_GRV ES_GRV +#define TD_F1 TD(_TD_F1) +#define TD_F2 TD(_TD_F2) +#define TD_F3 TD(_TD_F3) +#define TD_F4 TD(_TD_F4) +#define TD_F5 TD(_TD_F5) +#define TD_F6 TD(_TD_F6) +#define TD_F7 TD(_TD_F7) +#define TD_F8 TD(_TD_F8) +#define TD_F9 TD(_TD_F9) +#define TD_F10 TD(_TD_F10) +#define TD_F11 TD(_TD_F11) +#define TD_F12 TD(_TD_F12) +#define H_ENTER TD(_TD_H_ENTER) +#define TD_CLN TD(_TD_CLN) +#define TD_SLASH TD(_TD_SLASH) |