]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - users/stanrc85/stanrc85.h
[Keyboard] Snagpad Configurator bugfix and readme refactor (#6381)
[qmk_firmware.git] / users / stanrc85 / stanrc85.h
index 1d9602a05e5a7c148f827504014dc09c86b20085..ceb7167e10308b564eaf7738f6e59bbd3fd7f866 100644 (file)
@@ -3,14 +3,16 @@
 #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
-
-enum custom_keycodes {
-  KC_MAKE = SAFE_RANGE,
-  NEW_SAFE_RANGE  //use "NEW_SAFE_RANGE" for keymap specific codes
+enum my_layers {
+  _NUMPAD = 0,  //Macropad numpad
+  _NAVKEY,      //Macropad nav keys
+  _MEDIA,       //Macropad media controls
+  _RGB,         //Macropad RGB controls
+  _FN1PAD,      //Macropad reset and make commands
+  _QWERTY = 0,  //Qwerty with custom shortcuts and functions
+  _DEFAULT,     //Default ANSI for gaming, enable with FN2+RCtl
+  _FN1_60,      //Function keys, arrows, custom shortcuts, volume control
+  _FN2_60       //RGB Underglow controls and RESET
 };
 
 //Aliases for longer keycodes
@@ -19,6 +21,34 @@ enum custom_keycodes {
 #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 LT_SPCF LT(_FN1_60, KC_SPC)
 #define TD_TESC TD(TD_ESC)
 #define TD_TWIN TD(TD_WIN)
+#define TD_TCTL TD(TD_RCTL)
+#define CA_COPY LCTL(KC_C)
+#define CA_PSTE LCTL(KC_V)
+
+enum cust_keys {
+  KC_MAKE = SAFE_RANGE,
+  KC_RDP
+};
+
+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);