* Clean up `DEBOUNCE` in config.h, 0-9
* Clean up `DEBOUNCE` in config.h, A
* Clean up `DEBOUNCE` in config.h, B
* Clean up `DEBOUNCE` in config.h, C
* Clean up `DEBOUNCE` in config.h, D
* Clean up `DEBOUNCE` in config.h, E
* Clean up `DEBOUNCE` in config.h, F
* Clean up `DEBOUNCE` in config.h, G
* Clean up `DEBOUNCE` in config.h, H
* Clean up `DEBOUNCE` in config.h, handwired
* Clean up `DEBOUNCE` in config.h, I
* Clean up `DEBOUNCE` in config.h, J
* Clean up `DEBOUNCE` in config.h, K
* Clean up `DEBOUNCE` in config.h, L
* Clean up `DEBOUNCE` in config.h, M
* Clean up `DEBOUNCE` in config.h, N
* Clean up `DEBOUNCE` in config.h, O
* Clean up `DEBOUNCE` in config.h, P
* Clean up `DEBOUNCE` in config.h, Q
* Clean up `DEBOUNCE` in config.h, R
* Clean up `DEBOUNCE` in config.h, S
* Clean up `DEBOUNCE` in config.h, T
* Clean up `DEBOUNCE` in config.h, U
* Clean up `DEBOUNCE` in config.h, V
* Clean up `DEBOUNCE` in config.h, W
* Clean up `DEBOUNCE` in config.h, X
* Clean up `DEBOUNCE` in config.h, Y
* Clean up `DEBOUNCE` in config.h, Z
* Remove default debounce from info.json
* Migrate non-default debounce to info.json
* Migrate `LAYOUTS` to data driven, 0-9
* Migrate `LAYOUTS` to data driven, A
* Migrate `LAYOUTS` to data driven, B
* Migrate `LAYOUTS` to data driven, C
* Migrate `LAYOUTS` to data driven, D
* Migrate `LAYOUTS` to data driven, E
* Migrate `LAYOUTS` to data driven, F
* Migrate `LAYOUTS` to data driven, G
* Migrate `LAYOUTS` to data driven, H
* Migrate `LAYOUTS` to data driven, handwired
* Migrate `LAYOUTS` to data driven, I
* Migrate `LAYOUTS` to data driven, J
* Migrate `LAYOUTS` to data driven, K
* Migrate `LAYOUTS` to data driven, L
* Migrate `LAYOUTS` to data driven, M
* Migrate `LAYOUTS` to data driven, N
* Migrate `LAYOUTS` to data driven, O
* Migrate `LAYOUTS` to data driven, P
* Migrate `LAYOUTS` to data driven, Q
* Migrate `LAYOUTS` to data driven, R
* Migrate `LAYOUTS` to data driven, S
* Migrate `LAYOUTS` to data driven, T
* Migrate `LAYOUTS` to data driven, U
* Migrate `LAYOUTS` to data driven, V
* Migrate `LAYOUTS` to data driven, W
* Migrate `LAYOUTS` to data driven, X
* Migrate `LAYOUTS` to data driven, Y
* Migrate `LAYOUTS` to data driven, Z
* add some split data to info.json
* add tags
* add half of config_options.md to info.json
* add support for designating master split
* sort out split transport and primary
* fix bad data in UNUSED_PINS
* fixup custom transport
* wip
* allow for setting split right half keyboard matrix
* add SPLIT_USB_DETECT
* minor cleanup
* fix an erroneous message
* rework split.usb_detect
* adding missing rgblight vars to info.json
* add mouse_key to info.json
* add all remaining options from docs/config_options.md
* fix audio voices
* qmk info: Change text output to use dotted notation
* tweak layout output
* resolve alias names
* break out some functions to make flake8 happy
* add a field for bootloader instructions
* qmk generate-info-json: add a write-to-file argument
Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal.
* -arg_only, +action
Because it was never my intention that one would have to specify a value for the argument that enables writing the file.
* Bring qmk generate-info-json inline with other generate commands
* pytest fixup
* fix esca/getawayvan
* fix data driven errors for bpiphany converters
* features.force_nkro -> usb.force_nkro
* split.primary->split.main
* fix esca/getawayvan_f042
* fix the bpiphany converters for real
* fix bpiphany/tiger_lily
* Apply suggestions from code review
Co-authored-by: Nick Brassel <nick@tzarc.org>
* fix generate-api errors
* fix matrix pin extraction for split boards
* fix ploopyco/trackball_nano/rev1_001
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
* disambiguate Bootmagic rules in keymaps
The files edited by this commit were added at a point in time where `BOOTMAGIC_ENABLE = yes` enabled full Bootmagic.
This commit edits the files to specify that full Bootmagic is intended.
* remove BOOTMAGIC_ENABLE=full setting
* unify commented BOOTMAGIC_ENABLE rules in keyboards
Explicitly sets `BOOTMAGIC_ENABLE = no` in keyboards where the rule was commented out.
Command:
```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#[ \t]*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-zA-Z]\+\).*;\1 = no # Virtual DIP switch configuration;g' {} +
```
* remove commented Bootmagic rules from keymap/user level
Command:
```
find keyboards/ layouts/ users/ -type f -name 'rules.mk' -exec sed -i -e '/#.*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*/d' {} +
```
* update keyboard BOOTMAGIC_ENABLE rule formatting
Sets the formatting of BOOTMAGIC_ENABLE rules to `BOOTMAGIC_ENABLE = [value]`, without the inline comments (which will be replaced later).
Command:
```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
```
* update keyboards' BOOTMAGIC_ENABLE settings
Updates keyboard `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used.
Command:
```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = \)full;\1lite;g' '{}' +
```
* update keymap/user BOOTMAGIC_ENABLE settings
Updates keymap/user `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used.
Commands:
```
find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' +
find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' +
```
* remove and replace inline comments in keyboards and keymap/user files
Removes and replaces the inline comments, which have been updated to read `Enable Bootmagic Lite`.
Commands:
```
find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = lite\);\1 # Enable Bootmagic Lite;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = yes\);\1 # Enable Bootmagic Lite;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = no\);\1 # Enable Bootmagic Lite;g' '{}' +
```
* rename improperly named makefiles
Some files intended to be used as makefiles had improper names causing them to not be used as intended when building.
This commit corrects the filenames of the affected files.
* update renamed file with new rule formatting
* update QMK's template files
Updates QMK's `rules.mk` templates to use the new inline comment.
* update QMK Docs
- remove documentation of full Bootmagic
- update links to Bootmagic Lite doc
- add doc for Magic Keycodes
* rules.mk patch for coarse/ixora and coarse/vinta
* Removed reference to firmware size in 0-9,a-f board-level and default keymap 'rules.mk' files
* Correct some 'rules.mk' in boards buried under vendor folders
* PR8027 patch
Co-authored-by: GeorgeKoenig <35542036+GeorgeKoenig@users.noreply.github.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>