* Change RGBLight pin for Planck Light Move it to A0, so that the SPI? pins are available for BT hackery * Add QMK DFU bootloader info * Add Solenoid * Disable annoying white LED on bottom * Enable Solenoid on Corne * Remove bounds for animations * Increase debounce for Ergodox EZ to reduce repeat key issues * Set swap hands key to be a hold-tap key This way, it's not ANNOYING and doesn't swap the hands inteniontally * Move MT Alt in Corne keymap * Re-Add fine tuned control of secrets * Squash mods to single row * Add LRA settings to haptic feedback settings for Rev6 * Fix issue with non-Planck EZ keymaps * Add 40 Percent Nano with Analog Joystick * Add Collide39 keymap * Fix OLED printing to be more flavorful * Fix up Iris GamePad and come cleanup * Expand OLED char map further * Add modded characters to keylogger * Here be dragons Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Fix up rules for community layouts * Some more OLED tweaks * Add mod mask check function * Change QMK DFU Audio pin to be correct * Use manual STM config instead of CTPC for Collide 39
		
			
				
	
	
		
			93 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #pragma once
 | |
| #include "drashna.h"
 | |
| 
 | |
| #if defined(KEYMAP_SAFE_RANGE)
 | |
| #    define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE
 | |
| #else
 | |
| #    define PLACEHOLDER_SAFE_RANGE SAFE_RANGE
 | |
| #endif
 | |
| 
 | |
| enum userspace_custom_keycodes {
 | |
|     VRSN = PLACEHOLDER_SAFE_RANGE,  // Prints QMK Firmware and board info
 | |
|     KC_QWERTY,                      // Sets default layer to QWERTY
 | |
|     KC_COLEMAK,                     // Sets default layer to COLEMAK
 | |
|     KC_DVORAK,                      // Sets default layer to DVORAK
 | |
|     KC_WORKMAN,                     // Sets default layer to WORKMAN
 | |
|     KC_DIABLO_CLEAR,                // Clears all Diablo Timers
 | |
|     KC_MAKE,                        // Run keyboard's customized make command
 | |
|     KC_RGB_T,                       // Toggles RGB Layer Indication mode
 | |
|     RGB_IDL,                        // RGB Idling animations
 | |
|     KC_SECRET_1,                    // test1
 | |
|     KC_SECRET_2,                    // test2
 | |
|     KC_SECRET_3,                    // test3
 | |
|     KC_SECRET_4,                    // test4
 | |
|     KC_SECRET_5,                    // test5
 | |
|     KC_CCCV,                        // Hold to copy, tap to paste
 | |
|     KC_NUKE,                        // NUCLEAR LAUNCH DETECTED!!!
 | |
|     UC_FLIP,                        // (ಠ痊ಠ)┻━┻
 | |
|     UC_TABL,                        // ┬─┬ノ( º _ ºノ)
 | |
|     UC_SHRG,                        // ¯\_(ツ)_/¯
 | |
|     UC_DISA,                        // ಠ_ಠ
 | |
|     NEW_SAFE_RANGE                  // use "NEWPLACEHOLDER for keymap specific codes
 | |
| };
 | |
| 
 | |
| bool process_record_secrets(uint16_t keycode, keyrecord_t *record);
 | |
| bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
 | |
| 
 | |
| #define LOWER MO(_LOWER)
 | |
| #define RAISE MO(_RAISE)
 | |
| #define ADJUST MO(_ADJUST)
 | |
| #define TG_MODS TG(_MODS)
 | |
| #define TG_GAME TG(_GAMEPAD)
 | |
| #define OS_LWR OSL(_LOWER)
 | |
| #define OS_RSE OSL(_RAISE)
 | |
| 
 | |
| #define KC_SEC1 KC_SECRET_1
 | |
| #define KC_SEC2 KC_SECRET_2
 | |
| #define KC_SEC3 KC_SECRET_3
 | |
| #define KC_SEC4 KC_SECRET_4
 | |
| #define KC_SEC5 KC_SECRET_5
 | |
| 
 | |
| #define QWERTY KC_QWERTY
 | |
| #define DVORAK KC_DVORAK
 | |
| #define COLEMAK KC_COLEMAK
 | |
| #define WORKMAN KC_WORKMAN
 | |
| 
 | |
| #define KC_RESET RESET
 | |
| #define KC_RST KC_RESET
 | |
| 
 | |
| #ifdef SWAP_HANDS_ENABLE
 | |
| #    define KC_C1R3 SH_T(KC_TAB)
 | |
| #elif defined(DRASHNA_LP)
 | |
| #    define KC_C1R3 TG(_GAMEPAD)
 | |
| #else  // SWAP_HANDS_ENABLE
 | |
| #    define KC_C1R3 KC_TAB
 | |
| #endif  // SWAP_HANDS_ENABLE
 | |
| 
 | |
| #define BK_LWER LT(_LOWER, KC_BSPC)
 | |
| #define SP_LWER LT(_LOWER, KC_SPC)
 | |
| #define DL_RAIS LT(_RAISE, KC_DEL)
 | |
| #define ET_RAIS LT(_RAISE, KC_ENTER)
 | |
| 
 | |
| /* OSM keycodes, to keep things clean and easy to change */
 | |
| #define KC_MLSF OSM(MOD_LSFT)
 | |
| #define KC_MRSF OSM(MOD_RSFT)
 | |
| 
 | |
| #define OS_LGUI OSM(MOD_LGUI)
 | |
| #define OS_RGUI OSM(MOD_RGUI)
 | |
| #define OS_LSFT OSM(MOD_LSFT)
 | |
| #define OS_RSFT OSM(MOD_RSFT)
 | |
| #define OS_LCTL OSM(MOD_LCTL)
 | |
| #define OS_RCTL OSM(MOD_RCTL)
 | |
| #define OS_LALT OSM(MOD_LALT)
 | |
| #define OS_RALT OSM(MOD_RALT)
 | |
| #define OS_MEH OSM(MOD_MEH)
 | |
| #define OS_HYPR OSM(MOD_HYPR)
 | |
| 
 | |
| #define ALT_APP ALT_T(KC_APP)
 | |
| 
 | |
| #define MG_NKRO MAGIC_TOGGLE_NKRO
 | |
| 
 | |
| #define UC_IRNY UC(0x2E2E)
 | |
| #define UC_CLUE UC(0x203D)
 |