mirror of
				https://github.com/qmk/qmk_userspace.git
				synced 2025-11-03 18:30:07 -05:00 
			
		
		
		
	Refactor config and rules.mk for improved clarity and organization
This commit is contained in:
		
					parent
					
						
							
								4c48b15c8f
							
						
					
				
			
			
				commit
				
					
						cbaa62fa0d
					
				
			
		
					 2 changed files with 15 additions and 94 deletions
				
			
		| 
						 | 
					@ -1,8 +1,6 @@
 | 
				
			||||||
/* Copyright 2022 Sadek Baroudi <sadekbaroudi@gmail.com>
 | 
					/* Copyright 2022 Sadek Baroudi <sadekbaroudi@gmail.com>
 | 
				
			||||||
 *#define TAPPING_TERM 140
 | 
					 *
 | 
				
			||||||
#define AUTO_SHIFT_TIMEOUT 170  // Slightly longer than TAPPING_TERM
 | 
					 * This program is free software: you can redistribute it and/or modify
 | 
				
			||||||
#define RETRO_SHIFT
 | 
					 | 
				
			||||||
#define RETRO_TAPPINGThis program is free software: you can redistribute it and/or modify
 | 
					 | 
				
			||||||
 * it under the terms of the GNU General Public License as published by
 | 
					 * it under the terms of the GNU General Public License as published by
 | 
				
			||||||
 * the Free Software Foundation, either version 2 of the License, or
 | 
					 * the Free Software Foundation, either version 2 of the License, or
 | 
				
			||||||
 * (at your option) any later version.
 | 
					 * (at your option) any later version.
 | 
				
			||||||
| 
						 | 
					@ -18,73 +16,22 @@
 | 
				
			||||||
#define ENABLE_COMPILE_KEYCODE
 | 
					#define ENABLE_COMPILE_KEYCODE
 | 
				
			||||||
#pragma once
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// #include "config_common.h"
 | 
					// Userspace-specific configuration
 | 
				
			||||||
 | 
					// Hardware-specific settings should be in the keyboard's config.h or info.json
 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
 * Keyboard Matrix Assignments
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * Change this to how you wired your keyboard
 | 
					 | 
				
			||||||
 * COLS: AVR pins used for columns, left to right
 | 
					 | 
				
			||||||
 * ROWS: AVR pins used for rows, top to bottom
 | 
					 | 
				
			||||||
 * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
 | 
					 | 
				
			||||||
 *                  ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
 | 
					 | 
				
			||||||
 *                  NO_DIODE = switches are directly connected to AVR pins
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
#define DIRECT_PINS { \
 | 
					 | 
				
			||||||
    { B5, F7, F6, F5, F4 }, \
 | 
					 | 
				
			||||||
    { B4, D4, C6, D7, E6 }, \
 | 
					 | 
				
			||||||
    { B3, B2, B6, B7, D5 }, \
 | 
					 | 
				
			||||||
    { F0, F1, C7, NO_PIN, NO_PIN } \
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#ifdef OLED_ENABLE
 | 
					 | 
				
			||||||
#define OLED_DISPLAY_128X32
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// #define SSD1306OLED
 | 
					 | 
				
			||||||
#undef USE_I2C
 | 
					 | 
				
			||||||
//#undef SSD1306OLED
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
 | 
					 | 
				
			||||||
#define DEBOUNCE 5
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
 | 
					 | 
				
			||||||
#define LOCKING_SUPPORT_ENABLE
 | 
					 | 
				
			||||||
/* Locking resynchronize hack */
 | 
					 | 
				
			||||||
#define LOCKING_RESYNC_ENABLE
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Serial settings */
 | 
					 | 
				
			||||||
#define USE_SERIAL
 | 
					 | 
				
			||||||
/* serial.c configuration for split keyboard */
 | 
					 | 
				
			||||||
#define SOFT_SERIAL_PIN D2
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Tapping and timing configuration
 | 
				
			||||||
#define TAPPING_TERM 140
 | 
					#define TAPPING_TERM 140
 | 
				
			||||||
#define PERMISSIVE_HOLD  // Activate mod immediately when another key pressed
 | 
					#define PERMISSIVE_HOLD         // Activate mod immediately when another key pressed
 | 
				
			||||||
#define AUTO_SHIFT_TIMEOUT 170
 | 
					#define AUTO_SHIFT_TIMEOUT 170  // Slightly longer than TAPPING_TERM
 | 
				
			||||||
#define RETRO_SHIFT
 | 
					#define RETRO_SHIFT
 | 
				
			||||||
#define RETRO_TAPPING
 | 
					#define RETRO_TAPPING
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// #define MASTER_LEFT
 | 
					// Combo configuration
 | 
				
			||||||
 | 
					 | 
				
			||||||
// Use EE_HANDS to allow USB connection on either side
 | 
					 | 
				
			||||||
// Flash each half with appropriate handedness bootloader
 | 
					 | 
				
			||||||
#define EE_HANDS
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*#define SPLIT_USB_DETECT
 | 
					 | 
				
			||||||
#define SPLIT_LAYER_STATE_ENABLE */
 | 
					 | 
				
			||||||
#define SPLIT_WPM_ENABLE
 | 
					 | 
				
			||||||
#define SPLIT_MODS_ENABLE
 | 
					 | 
				
			||||||
#define SPLIT_LAYER_STATE_ENABLE
 | 
					 | 
				
			||||||
// Smathev - define combos (COMBO_COUNT is auto-calculated by QMK)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define CASEMODES_ENABLE
 | 
					#define CASEMODES_ENABLE
 | 
				
			||||||
 | 
					 | 
				
			||||||
#define COMBO_REF_DEFAULT _NORTO
 | 
					#define COMBO_REF_DEFAULT _NORTO
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Backwards compatibility with existing out-of-tree keymaps */
 | 
					// Backwards compatibility with existing keymaps
 | 
				
			||||||
#define LAYOUT_sweeeeep LAYOUT_split_3x5_3
 | 
					#define LAYOUT_sweeeeep LAYOUT_split_3x5_3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Custom font for OLED (if keyboard has OLED enabled)
 | 
				
			||||||
 | 
					 | 
				
			||||||
#define OLED_FONT_H "keyboards/fingerpunch/sweeeeep/keymaps/smathev/glcdfont.c"
 | 
					#define OLED_FONT_H "keyboards/fingerpunch/sweeeeep/keymaps/smathev/glcdfont.c"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,40 +4,14 @@ SRC += smathev.c \
 | 
				
			||||||
       casemodes.c
 | 
					       casemodes.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Build Options
 | 
					# Build Options
 | 
				
			||||||
#   change yes to no to disable
 | 
					# Only include userspace-specific features here
 | 
				
			||||||
#
 | 
					# Hardware and basic features should be in keyboard's info.json
 | 
				
			||||||
BOOTMAGIC_ENABLE = no       # Virtual DIP switch configuration
 | 
					 | 
				
			||||||
EXTRAKEY_ENABLE = yes       # Audio control and System control
 | 
					 | 
				
			||||||
CONSOLE_ENABLE = no        # Console for debug
 | 
					 | 
				
			||||||
COMMAND_ENABLE = no        # Commands for debug and configuration
 | 
					 | 
				
			||||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
 | 
					 | 
				
			||||||
SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
 | 
					 | 
				
			||||||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
 | 
					 | 
				
			||||||
NKRO_ENABLE = no            # USB Nkey Rollover
 | 
					 | 
				
			||||||
BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
MIDI_ENABLE = no            # MIDI support
 | 
					 | 
				
			||||||
UNICODE_ENABLE = no         # Unicode
 | 
					 | 
				
			||||||
BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
 | 
					 | 
				
			||||||
AUDIO_ENABLE = no           # Audio output on port C6
 | 
					 | 
				
			||||||
FAUXCLICKY_ENABLE = no      # Use buzzer to emulate clicky switches
 | 
					 | 
				
			||||||
ENCODER_ENABLE = no
 | 
					 | 
				
			||||||
OLED_ENABLE = YES
 | 
					 | 
				
			||||||
OLED_DRIVER_ENABLE = yes
 | 
					 | 
				
			||||||
OLED_DRIVER = ssd1306
 | 
					 | 
				
			||||||
# EXTRAFLAGS     += -flto     # macros disabled, if you need the extra space
 | 
					 | 
				
			||||||
MOUSEKEY_ENABLE = no
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
SPLIT_KEYBOARD = yes        # Use shared split_common code
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
LAYOUTS = split_3x5_3       # Community layout support
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
DEFERRED_EXEC_ENABLE = yes
 | 
					DEFERRED_EXEC_ENABLE = yes
 | 
				
			||||||
# Smathev added from: https://getreuer.info/posts/keyboards/repeat-key/index.html
 | 
					 | 
				
			||||||
COMBO_ENABLE = yes
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Smathev implemented from: https://docs.qmk.fm/#/feature_auto_shift
 | 
					# Userspace-specific features
 | 
				
			||||||
AUTO_SHIFT_ENABLE = yes
 | 
					COMBO_ENABLE = yes           # Combo key feature
 | 
				
			||||||
 | 
					AUTO_SHIFT_ENABLE = yes      # Auto shift for hold-to-shift
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Implemented from  https://github.com/samhocevar-forks/qmk-firmware/blob/master/docs/feature_tap_dance.md
 | 
					# Implemented from  https://github.com/samhocevar-forks/qmk-firmware/blob/master/docs/feature_tap_dance.md
 | 
				
			||||||
# TAP_DANCE_ENABLE = yes
 | 
					# TAP_DANCE_ENABLE = yes
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue