forked from mirrors/qmk_firmware
7a08b9d374
* Update other keyboards for rgb matrix changes * Remove customized bootmagic code * Fix corne layout compilation error * Fix compiler errors with all keymaps * Add Simple Visualizer for ergodox infinity * Fix compile issue with Corne * Fix keymap stuff * Add alias for mouse layer * Add Halmak Keyboard layout * Updates for Kyria * Add support for oled interval * Change RGB stuff [CHANGE] Fix coexistence issues * Fix rgb_stuff * Add custom ploopyco mouse keymap * Decrease default dwell time * Updates based on last breaking changes update * Disable command on dactyl * Update ergodox to use proper commands for rgb matrix indicators * Update all rgb matrix indicator functions * Update rules for dactyl-manuform * Reduce wait time for mouse layer off event * Add more info to logger * Add wrappers for get_tapping term * Move version.h include into only file that actually needs it * Update rgb sleep stuff * Update key print function * Change DM keymap settings * Change pin for DM Manuform * Add Proton C stuff for Corne keymap * more arm corne tinkering * Even more arm stuff for corne * Cleanup corne stuff * redirect default keymap to drashna because I am a very bad man * change corne rgb priority * Update tractyl manuform to not conflict * Add more secret stuff * more dactyl tweaks * Add more options to split transport * Changes of oled support * Change split settings * Improve keylogger formatting more * tweak oled stuff * Oled and such tweaks * Reduce brightness due to leds * Decrease brightness more * Only run layer code if master
108 lines
3.7 KiB
C
108 lines
3.7 KiB
C
/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
|
|
*
|
|
* This program is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation, either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#pragma once
|
|
#include "drashna.h"
|
|
|
|
#if defined(KEYBOARD_handwired_dactyl_manuform_5x6_right_trackball)
|
|
# 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)
|