forked from mirrors/qmk_firmware
3a7816843c
* Adding new tap dance key * Adding new tap dance code * add code for copy/paste to tap dance * testing tap dance enums * New tap dance keycodes * Fix enums
44 lines
1.1 KiB
C
44 lines
1.1 KiB
C
#pragma once
|
|
|
|
#include "quantum.h"
|
|
#include "version.h"
|
|
|
|
#define DEFAULT 0 //Custom ANSI
|
|
#define LAYER1 1 //Default ANSI (enable with Fn2+CAPS)
|
|
#define LAYER2 2 //Function keys, arrows, custom shortcuts, volume control
|
|
#define LAYER3 3 //RGB Underglow controls and RESET
|
|
|
|
//Aliases for longer keycodes
|
|
#define KC_CAD LALT(LCTL(KC_DEL))
|
|
#define KC_LOCK LGUI(KC_L)
|
|
#define CA_QUOT LCA(KC_QUOT)
|
|
#define CA_SCLN LCA(KC_SCLN)
|
|
#define KC_CTLE LCTL_T(KC_ESC)
|
|
#define LT_SPCF LT(2, KC_SPC)
|
|
#define TD_TESC TD(TD_ESC)
|
|
#define TD_TWIN TD(TD_WIN)
|
|
#define TD_TCTL TD(TD_RCTL)
|
|
|
|
enum cust_keys {
|
|
KC_MAKE = SAFE_RANGE
|
|
};
|
|
|
|
enum tap_dance {
|
|
TD_WIN,
|
|
TD_ESC,
|
|
TD_RCTL
|
|
};
|
|
|
|
// define a type containing as many tapdance states as you need
|
|
typedef enum {
|
|
SINGLE_TAP,
|
|
SINGLE_HOLD,
|
|
DOUBLE_TAP
|
|
} td_state_t;
|
|
|
|
// function to determine the current tapdance state
|
|
int cur_dance (qk_tap_dance_state_t *state);
|
|
|
|
// `finished` and `reset` functions for each tapdance keycode
|
|
void ctl_copy_finished (qk_tap_dance_state_t *state, void *user_data);
|
|
void ctl_copy_reset (qk_tap_dance_state_t *state, void *user_data);
|