- Brought back Mouse Z for temporary mouse usage - Combined Mouse and Function Keys into one Layer - Cleaned up unused code (e.g. combos, key overrides) - Updated all keyboards with new layer - Updated documentation - I think this will be it for now. Making a list somewhere else for future enhancements
		
			
				
	
	
		
			182 lines
		
	
	
	
		
			5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			182 lines
		
	
	
	
		
			5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
* Set build options for
 | 
						|
* - consistent configuration across all keyboards
 | 
						|
* - enable features specific to certain board (e.g. encoders, rgb, oled)
 | 
						|
* - a way to save memory on MCU
 | 
						|
*
 | 
						|
* Pattern
 | 
						|
* - This will hold config for features we force to be on
 | 
						|
* - bring in additional configuration for features that can be enabled/disabled
 | 
						|
*/
 | 
						|
 | 
						|
#pragma once
 | 
						|
 | 
						|
//Turn off settings we won't use to save memory
 | 
						|
#undef LOCKING_SUPPORT_ENABLE
 | 
						|
#undef LOCKING_RESYNC_ENABLE
 | 
						|
 | 
						|
//Set common configuration for all keyboards
 | 
						|
#define USB_POLLING_INTERVAL_MS 1
 | 
						|
#define LAYER_STATE_8BIT
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/* Tapping, Oneshot
 | 
						|
*  https://docs.qmk.fm/tap_hold
 | 
						|
*  https://docs.qmk.fm/one_shot_keys
 | 
						|
*/
 | 
						|
#define TAP_CODE_DELAY 5                    //time before tap is released
 | 
						|
#define TAP_HOLD_CAPS_DELAY TAP_CODE_DELAY  //turning down delay for caps lock so ploopy can do DPI switching
 | 
						|
#define WAIT_DELAY 5                        //custom variable to configure time between taps
 | 
						|
 | 
						|
#define TAPPING_TERM 175
 | 
						|
 | 
						|
#define QUICK_TAP_TERM 120
 | 
						|
 | 
						|
#define ONESHOT_TAP_TOGGLE 3
 | 
						|
#define ONESHOT_TIMEOUT 2000
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/* Caps Word
 | 
						|
*  https://docs.qmk.fm/features/caps_word
 | 
						|
* 
 | 
						|
*  Explore these
 | 
						|
*  #undef BOTH_SHIFTS_TURNS_ON_CAPS_WORD
 | 
						|
*  #undef CAPS_WORD_INVERT_ON_SHIFT
 | 
						|
*/
 | 
						|
#if defined(CAPS_WORD_ENABLE)
 | 
						|
#  define DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD
 | 
						|
#  define CAPS_WORD_IDLE_TIMEOUT 2000
 | 
						|
#endif //CAPS_WORD_ENABLE
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/* Combos
 | 
						|
*  https://docs.qmk.fm/features/combo
 | 
						|
*/
 | 
						|
#if defined(COMBO_ENABLE)
 | 
						|
#  define COMBO_ONLY_FROM_LAYER 0 //this will always setup combos based off of QWERTY layout
 | 
						|
#  define EXTRA_SHORT_COMBOS
 | 
						|
 | 
						|
#  define COMBO_TERM 35
 | 
						|
 | 
						|
#  define COMBO_MUST_TAP_PER_COMBO
 | 
						|
#  define COMBO_SHOULD_TRIGGER
 | 
						|
#endif //COMBO_ENABLE
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/* Split keyboard
 | 
						|
*  https://docs.qmk.fm/features/split_keyboard
 | 
						|
*/
 | 
						|
#if defined(SPLIT_KEYBOARD)
 | 
						|
#  define SPLIT_TRANSPORT_MIRROR
 | 
						|
#  define SPLIT_LAYER_STATE_ENABLE
 | 
						|
#  define SPLIT_LED_STATE_ENABLE
 | 
						|
#  define SPLIT_MODS_ENABLE
 | 
						|
#  define SPLIT_OLED_ENABLE
 | 
						|
#  define SPLIT_ACTIVITY_ENABLE
 | 
						|
#  define SPLIT_WPM_ENABLE
 | 
						|
#  define MASTER_RIGHT
 | 
						|
#endif //SPLIT_KEYBOARD
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/* OLED
 | 
						|
*  https://docs.qmk.fm/features/oled_driver
 | 
						|
*/
 | 
						|
#if defined(OLED_ENABLE)
 | 
						|
#  define OLED_TIMEOUT 60000 //1 min
 | 
						|
#  define OLED_FONT_H "./lib/font.c"
 | 
						|
#endif //OLED_ENABLE
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/* Haptic Feedback
 | 
						|
*  https://docs.qmk.fm/features/haptic_feedback
 | 
						|
*/
 | 
						|
#if defined(HAPTIC_ENABLE)
 | 
						|
#  if defined(HAPTIC_DRV2605L)
 | 
						|
#    define DRV2605L_GREETING DRV2605L_EFFECT_750_MS_ALERT_100
 | 
						|
#    define DRV2605L_DEFAULT_MODE DRV2605L_EFFECT_STRONG_CLICK_1_100
 | 
						|
#  endif //HAPTIC_DRV2605L
 | 
						|
#endif //HAPTIC_ENABLE
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/* Audio
 | 
						|
*  https://docs.qmk.fm/features/audio
 | 
						|
*  https://docs.qmk.fm/squeezing_avr#audio-settings
 | 
						|
*/
 | 
						|
#if defined(AUDIO_ENABLE)
 | 
						|
#  define KLOR_SOUND W__NOTE(_DS0), W__NOTE(_DS1), H__NOTE(_DS2), H__NOTE(_DS3), Q__NOTE(_DS4), Q__NOTE(_DS5), E__NOTE(_DS6), E__NOTE(_DS7), S__NOTE(_DS8), Q__NOTE(_GS0)
 | 
						|
#  define BYE_SOUND H__NOTE(_DS4), H__NOTE(_DS3), W__NOTE(_DS1)
 | 
						|
 | 
						|
#  define NO_MUSIC_MODE
 | 
						|
#  define AUDIO_CLICKY
 | 
						|
#  define STARTUP_SONG SONG(KLOR_SOUND)
 | 
						|
#  define GOODBYE_SONG SONG(BYE_SOUND)
 | 
						|
#  define DEFAULT_LAYER_SONGS \
 | 
						|
    { SONG(QWERTY_SOUND)      \
 | 
						|
      ,SONG(COLEMAK_SOUND)    \
 | 
						|
      ,SONG(GUITAR_SOUND)     \
 | 
						|
    }
 | 
						|
#endif //AUDIO_ENABLE
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/* RGB Matrix
 | 
						|
*  https://docs.qmk.fm/features/rgb_matrix
 | 
						|
*/
 | 
						|
#if defined(RGB_MATRIX_ENABLE)
 | 
						|
#  undef  RGB_MATRIX_DEFAULT_VAL
 | 
						|
 | 
						|
#  define RGB_MATRIX_SLEEP
 | 
						|
#  define RGB_MATRIX_TIMEOUT 60000 //1 min
 | 
						|
 | 
						|
#  define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150
 | 
						|
#  define RGB_MATRIX_DEFAULT_HUE 4
 | 
						|
#  define RGB_MATRIX_DEFAULT_SAT 79
 | 
						|
#  define RGB_MATRIX_DEFAULT_VAL 59
 | 
						|
#  define RGB_MATRIX_DEFAULT_SPD 32
 | 
						|
 | 
						|
#  if defined(KEYBOARD_bastardkb_charybdis_3x5) \
 | 
						|
   || defined(KEYBOARD_dztech_dz60rgb_v2_1)    \
 | 
						|
   || defined(KEYBOARD_bluebell_swoop)         \
 | 
						|
   || defined(KEYBOARD_klor_2040)
 | 
						|
 | 
						|
#    define ENABLE_RGB_MATRIX_BREATHING
 | 
						|
#    define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
 | 
						|
#    define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
 | 
						|
#    define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
 | 
						|
#    define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
 | 
						|
#    define ENABLE_RGB_MATRIX_DUAL_BEACON
 | 
						|
#    define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
 | 
						|
#    define ENABLE_RGB_MATRIX_HUE_BREATHING
 | 
						|
#    define ENABLE_RGB_MATRIX_TYPING_HEATMAP
 | 
						|
 | 
						|
#    define ENABLE_RGB_MATRIX_DIGITAL_RAIN
 | 
						|
 | 
						|
#    define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
 | 
						|
#    define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
 | 
						|
#    define ENABLE_RGB_MATRIX_SPLASH
 | 
						|
#    define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
 | 
						|
 | 
						|
#    define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_TYPING_HEATMAP
 | 
						|
 | 
						|
   //enable minimal effects to save memory
 | 
						|
#  else
 | 
						|
#    define ENABLE_RGB_MATRIX_BREATHING
 | 
						|
#    define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
 | 
						|
#    define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_BREATHING
 | 
						|
#  endif //KEYBOARD_bastardkb_charybdis_3x5...
 | 
						|
 | 
						|
   //heatmap specific settings
 | 
						|
#  if defined(ENABLE_RGB_MATRIX_TYPING_HEATMAP)
 | 
						|
#    define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS 9     //default 25
 | 
						|
#    define RGB_MATRIX_TYPING_HEATMAP_SPREAD 40               //40
 | 
						|
#    define RGB_MATRIX_TYPING_HEATMAP_AREA_LIMIT 16           //16
 | 
						|
#    define RGB_MATRIX_TYPING_HEATMAP_INCREASE_STEP 20        //32
 | 
						|
#  endif //ENABLE_RGB_MATRIX_TYPING_HEATMAP
 | 
						|
#endif //RGB_MATRIX_ENABLE
 |