summaryrefslogtreecommitdiff
path: root/users/replicaJunction/replicaJunction.h
diff options
context:
space:
mode:
authorJoshua T <replicaJunction@users.noreply.github.com>2018-08-15 17:38:41 -0500
committerDrashna Jaelre <drashna@live.com>2018-08-15 15:38:41 -0700
commitc19d949b72844120fff5159bc7e637ada4dd2579 (patch)
tree834d410b135352015a887d6f5fc94feefd96b726 /users/replicaJunction/replicaJunction.h
parent632287535c83e6607de97a5998713def61dc01bc (diff)
Keymap: Revamp replicaJunction keymaps (#3589)
* Revamp replicaJunction keymaps Updates both the replicaJunction Ergodox and Atreus keymaps and moves most of the logic into a new user directory. * Cleanup as requested in #3589 * Slightly increased TAPPING_TERM * Fixed typo in #pragma once * Fix TAPPING_TERM redefined in config.h * Add include of replicaJunction.h Due to the tap dance references, without this include, I was getting compiler errors about both internal QMK items like `qk_tap_dance_state_t` and constants defined in my replicaJunction.h file like TD_LAYER_TOGGLE. Also remove some commented-out code that defined an enum which has since moved to replicaJunction.h.
Diffstat (limited to 'users/replicaJunction/replicaJunction.h')
-rw-r--r--users/replicaJunction/replicaJunction.h115
1 files changed, 115 insertions, 0 deletions
diff --git a/users/replicaJunction/replicaJunction.h b/users/replicaJunction/replicaJunction.h
new file mode 100644
index 0000000000..ab0e8ab3e3
--- /dev/null
+++ b/users/replicaJunction/replicaJunction.h
@@ -0,0 +1,115 @@
+#pragma once
+
+#include "quantum.h"
+
+///////////////////////////////////////////////////////////////////////////////
+// Keymap definitions
+///////////////////////////////////////////////////////////////////////////////
+
+// Layer definitions
+// #define L_COLEMAK 0
+// #define L_QWERTY 1
+// #define L_NUM 2
+// #define L_EXTEND 3
+// #define L_FUNC 4
+// #define L_GAMING 5
+// #define L_SYMBOL 6
+// #define L_LL_R 7
+// #define L_LL_S 8
+// #define L_LL_E 9
+// #define L_LL_I 10
+
+// Keyboard aliases
+#define _______ KC_TRNS
+#define ooooooo KC_TRNS
+
+#define MO_FUNC MO(L_FUNC)
+#define TT_NUM TT(L_NUM)
+#define TG_GAME TG(L_GAMING)
+#define OSL_SYM OSL(L_SYMBOL)
+
+#define OSM_LSF OSM(MOD_LSFT)
+#define OSM_RSF OSM(MOD_RSFT)
+
+#define KX_CTSF LCTL(KC_LSFT)
+#define KX_STAB LSFT(KC_TAB)
+#define KX_CGR LCTL(KC_GRV)
+#define KX_PAST LCTL(LGUI(LALT(KC_V)))
+#define KX_SRCH LCTL(LGUI(LALT(KC_S)))
+
+#define KX_BKNM LT(L_NUM, KC_BSPC)
+#define KX_DCTL CTL_T(KC_DEL)
+#define KX_NALT ALT_T(KC_ENT)
+#define KX_ECTL CTL_T(KC_ESC)
+#define KX_SPAC LT(L_EXTEND, KC_SPC)
+
+#define KX_Z_MT CTL_T(KC_Z)
+#define KX_X_MT GUI_T(KC_X)
+#define KX_C_MT MT(MOD_LCTL | MOD_LALT, KC_C)
+#define KX_D_MT ALT_T(KC_D)
+
+#define KX_SLMT CTL_T(KC_SLSH)
+#define KX_DOMT GUI_T(KC_DOT)
+#define KX_COMT MT(MOD_LCTL | MOD_LALT, KC_COMM)
+#define KX_H_MT ALT_T(KC_H)
+
+#ifdef L_LL_R
+ #define KC_R_LT LT(L_LL_R, KC_R)
+#else
+ #define KC_R_LT KC_R
+#endif
+
+#ifdef L_LL_S
+ #define KC_S_LT LT(L_LL_S, KC_S)
+#else
+ #define KC_S_LT KC_S
+#endif
+
+#ifdef L_LL_E
+ #define KC_E_LT LT(L_LL_E, KC_E)
+#else
+ #define KC_E_LT KC_E
+#endif
+
+#ifdef L_LL_I
+ #define KC_I_LT LT(L_LL_I, KC_I)
+#else
+ #define KC_I_LT KC_I
+#endif
+
+// "Macro" functions
+enum userspace_custom_keycodes {
+ RJ_MAKE = SAFE_RANGE, // QMK make command
+ RJ_QMKV, // QMK version
+ RJ_EQ, // ==
+ RJ_NEQ, // !=
+ RJ_GEQ, // >=
+ RJ_LEQ, // <=
+ RJ_GEQR, // => ("greater than or equal - right")
+ RJ_DUND, // $_
+ RJ_SELS, // select * (used for PowerShell)
+ RJ_MUTE, // Discord mute (GUI+Shift+M)
+ RJ_DEAF, // Discord deafen (GUI+Shift+D)
+ RJ_DOVR // Toggle Discord overlay (GUI+Shift+O)
+};
+
+// Mouse keys
+#define M_UP KC_MS_UP
+#define M_DOWN KC_MS_DOWN
+#define M_LEFT KC_MS_LEFT
+#define M_RIGHT KC_MS_RIGHT
+#define M_LCLIK KC_MS_BTN1
+#define M_RCLIK KC_MS_BTN2
+#define M_MCLIK KC_MS_BTN3
+#define M_WHLUP KC_WH_U
+#define M_WHLDN KC_WH_D
+
+// Used in macro definitions
+#define TAP(code) register_code (code); unregister_code (code);
+
+// Tap Dance
+#ifdef TAP_DANCE_ENABLE
+#define TD_LAYER_TOGGLE 0
+extern void dance_layer(qk_tap_dance_state_t *state, void *user_data);
+#define TD_LAYR TD(TD_LAYER_TOGGLE)
+#endif // TAP_DANCE_ENABLE