aboutsummaryrefslogtreecommitdiff
path: root/users/drashna/process_records.h
diff options
context:
space:
mode:
Diffstat (limited to 'users/drashna/process_records.h')
-rw-r--r--users/drashna/process_records.h101
1 files changed, 101 insertions, 0 deletions
diff --git a/users/drashna/process_records.h b/users/drashna/process_records.h
new file mode 100644
index 000000000..620997add
--- /dev/null
+++ b/users/drashna/process_records.h
@@ -0,0 +1,101 @@
1#pragma once
2#include "drashna.h"
3
4#if defined(KEYMAP_SAFE_RANGE)
5 #define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE
6#else
7 #define PLACEHOLDER_SAFE_RANGE SAFE_RANGE
8#endif
9
10enum userspace_custom_keycodes {
11 VRSN = PLACEHOLDER_SAFE_RANGE, // Prints QMK Firmware and board info
12 KC_QWERTY, // Sets default layer to QWERTY
13 KC_COLEMAK, // Sets default layer to COLEMAK
14 KC_DVORAK, // Sets default layer to DVORAK
15 KC_WORKMAN, // Sets default layer to WORKMAN
16 KC_DIABLO_CLEAR, // Clears all Diablo Timers
17 KC_OVERWATCH, // Toggles game macro input mode (so in OW, it defaults to game chat)
18 KC_SALT, // See drashna.c for details
19 KC_MORESALT,
20 KC_SALTHARD,
21 KC_GOODGAME,
22 KC_SYMM,
23 KC_JUSTGAME,
24 KC_GLHF,
25 KC_TORB,
26 KC_AIM,
27 KC_C9,
28 KC_GGEZ,
29 KC_MAKE, // Run keyboard's customized make command
30 KC_RGB_T, // Toggles RGB Layer Indication mode
31 KC_SECRET_1, // test1
32 KC_SECRET_2, // test2
33 KC_SECRET_3, // test3
34 KC_SECRET_4, // test4
35 KC_SECRET_5, // test5
36 KC_CCCV, // Hold to copy, tap to paste
37 KC_NUKE, // NUCLEAR LAUNCH DETECTED!!!
38 UC_FLIP, // (ಠ痊ಠ)┻━┻
39 UC_TABL, // ┬─┬ノ( º _ ºノ)
40 UC_SHRG, // ¯\_(ツ)_/¯
41 UC_DISA, // ಠ_ಠ
42 NEW_SAFE_RANGE //use "NEWPLACEHOLDER for keymap specific codes
43};
44
45bool process_record_secrets(uint16_t keycode, keyrecord_t *record);
46bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
47
48
49
50#define LOWER MO(_LOWER)
51#define RAISE MO(_RAISE)
52#define ADJUST MO(_ADJUST)
53#define TG_MODS TG(_MODS)
54#define TG_GAME TG(_GAMEPAD)
55
56#define KC_SEC1 KC_SECRET_1
57#define KC_SEC2 KC_SECRET_2
58#define KC_SEC3 KC_SECRET_3
59#define KC_SEC4 KC_SECRET_4
60#define KC_SEC5 KC_SECRET_5
61
62#define QWERTY KC_QWERTY
63#define DVORAK KC_DVORAK
64#define COLEMAK KC_COLEMAK
65#define WORKMAN KC_WORKMAN
66
67#define KC_RESET RESET
68#define KC_RST KC_RESET
69
70#ifdef SWAP_HANDS_ENABLE
71#define KC_C1R3 SH_TT
72#else // SWAP_HANDS_ENABLE
73#define KC_C1R3 KC_BSPC
74#endif // SWAP_HANDS_ENABLE
75
76#define BK_LWER LT(_LOWER, KC_BSPC)
77#define SP_LWER LT(_LOWER, KC_SPC)
78#define DL_RAIS LT(_RAISE, KC_DEL)
79#define ET_RAIS LT(_RAISE, KC_ENTER)
80
81/* OSM keycodes, to keep things clean and easy to change */
82#define KC_MLSF OSM(MOD_LSFT)
83#define KC_MRSF OSM(MOD_RSFT)
84
85#define OS_LGUI OSM(MOD_LGUI)
86#define OS_RGUI OSM(MOD_RGUI)
87#define OS_LSFT OSM(MOD_LSFT)
88#define OS_RSFT OSM(MOD_RSFT)
89#define OS_LCTL OSM(MOD_LCTL)
90#define OS_RCTL OSM(MOD_RCTL)
91#define OS_LALT OSM(MOD_LALT)
92#define OS_RALT OSM(MOD_RALT)
93#define OS_MEH OSM(MOD_MEH)
94#define OS_HYPR OSM(MOD_HYPR)
95
96#define ALT_APP ALT_T(KC_APP)
97
98#define MG_NKRO MAGIC_TOGGLE_NKRO
99
100#define UC_IRNY UC(0x2E2E)
101#define UC_CLUE UC(0x203D)