* 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
* 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
* error log cleanup: 40percentclub/25
40percentclub/25: Claims to support a community layout that does not exist: ortho_5x5
* error log cleanup: 40percentclub/4x4
☒ 40percentclub/4x4: Claims to support a community layout that does not exist: ortho_4x8
☒ 40percentclub/4x4: Claims to support a community layout that does not exist: ortho_4x16
* error log cleanup: 40percentclub/5x5
☒ 40percentclub/5x5: Claims to support a community layout that does not exist: ortho_5x5
* error log cleanup: 40percentclub/nori
☒ 40percentclub/nori: Claims to support a community layout that does not exist: ortho_4x8
* error log cleanup: barracuda
☒ barracuda: Claims to support a community layout that does not exist: ortho_3x11
* error log cleanup: bpiphany/frosty_flake
☒ keyboards/bpiphany/frosty_flake/frosty_flake.h: LAYOUT_tkl_ansi: Nested layout macro detected. Matrix data not available!
* error log cleanup: bpiphany/pegasushoof/2013
☒ keyboards/bpiphany/pegasushoof/2013/2013.h: LAYOUT_tkl_ansi: Nested layout macro detected. Matrix data not available!
* error cleanup: bpiphany/pegasushoof/2015
☒ keyboards/bpiphany/pegasushoof/2015/2015.h: LAYOUT_tkl_ansi: Nested layout macro detected. Matrix data not available!
☒ keyboards/bpiphany/pegasushoof/2015/2015.h: LAYOUT_tkl_iso: Nested layout macro detected. Matrix data not available!
* error log cleanup: 40percentclub
☒ 40percentclub/25: Claims to support a community layout that does not exist: ortho_5x10
☒ 40percentclub/5x5: Claims to support a community layout that does not exist: ortho_5x10
* error cleanup: converter/usb_usb
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_ansi: Nested layout macro detected. Matrix data not available!
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_iso: Nested layout macro detected. Matrix data not available!
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_jis: Nested layout macro detected. Matrix data not available!
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_ansi: Nested layout macro detected. Matrix data not available!
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_iso: Nested layout macro detected. Matrix data not available!
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_jis: Nested layout macro detected. Matrix data not available!
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_ansi: Nested layout macro detected. Matrix data not available!
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_iso: Nested layout macro detected. Matrix data not available!
☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_jis: Nested layout macro detected. Matrix data not available!
* error cleanup: ergo42
☒ ergo42/rev1: Claims to support a community layout that does not exist: ortho_4x14
* error cleanup: handwired/412_64
☒ handwired/412_64: Claims to support a community layout that does not exist: ortho_4x16
* error log cleanup: handwired/tritium_numpad
☒ handwired/tritium_numpad: Claims to support a community layout that does not exist: nontra_6x4
* error log cleanup: handwired/xealous/rev1
☒ handwired/xealous/rev1: Claims to support a community layout that does not exist: split60
* error log cleanup: kbdfans/kbd67/rev2
⚠ kbdfans/kbd67/rev2: info.json uses alias name LAYOUT_65_ansi_blocker_splitbs instead of LAYOUT_65_ansi_blocker_split_bs
* error cleanup: keebio/nyquist
☒ keyboards/keebio/nyquist/nyquist.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available!
☒ keyboards/keebio/nyquist/nyquist.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available!
☒ keyboards/keebio/nyquist/nyquist.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available!
* error cleanup: kindakeyboards/conone65
☒ kindakeyboards/conone65: Claims to support a community layout that does not exist: 65_iso_split_bs
* error cleanup: latinpadble
☒ latinpadble: Claims to support a community layout that does not exist: pad
* error cleanup: masterworks/classy_tkl/rev_a
☒ masterworks/classy_tkl/rev_a: Claims to support a community layout that does not exist: tkl_ansi_wkl
* error cleanup: meira
⚠ meira/featherble: info.json uses alias name LAYOUT_ortho_4x12 instead of LAYOUT
⚠ meira/promicro: info.json uses alias name LAYOUT_ortho_4x12 instead of LAYOUT
* error cleanup: nopunin10did/jabberwocky
⚠ nopunin10did/jabberwocky: MANUFACTURER in config.h is overwriting manufacturer in info.json
* error cleanup: ok60
☒ ok60: Claims to support a community layout that does not exist: 60_ansi_split_bksp_rshift
* error cleanup: ok60
☒ ok60: Claims to support a community layout that does not exist: 60_ansi_split_bksp_rshift
* error cleanup: planck
☒ keyboards/planck/ez/ez.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available!
☒ keyboards/planck/ez/ez.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available!
⚠ planck/thk: DEBOUNCE in config.h is overwriting debounce in info.json
⚠ planck/thk: DEVICE_VER in config.h is overwriting usb.device_ver in info.json
⚠ planck/thk: DIODE_DIRECTION in config.h is overwriting diode_direction in info.json
⚠ planck/thk: MANUFACTURER in config.h is overwriting manufacturer in info.json
⚠ planck/thk: PRODUCT_ID in config.h is overwriting usb.pid in info.json
⚠ planck/thk: VENDOR_ID in config.h is overwriting usb.vid in info.json
⚠ planck/thk: QMK_ESC_OUTPUT in config.h is overwriting qmk_lufa_bootloader.esc_output in info.json
⚠ planck/thk: QMK_ESC_INPUT in config.h is overwriting qmk_lufa_bootloader.esc_input in info.json
⚠ planck/thk: QMK_LED in config.h is overwriting qmk_lufa_bootloader.led in info.json
⚠ planck/thk: QMK_SPEAKER in config.h is overwriting qmk_lufa_bootloader.speaker in info.json
⚠ planck/thk: Matrix pins are specified in both info.json and config.h, the config.h values win.
⚠ planck/thk: LAYOUTS in rules.mk is overwriting community_layouts in info.json
⚠ planck/thk: Feature mousekey is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature extrakey is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature console is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature command is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature sleep_led is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature nkro is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature backlight is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature rgblight is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature bluetooth is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature audio is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature encoder is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature dip_switch is specified in both info.json and rules.mk, the rules.mk value wins.
⚠ planck/thk: Feature bootmagic_lite is specified in both info.json and rules.mk, the rules.mk value wins.
* error cleanup: primekb/prime_m
☒ primekb/prime_m: Claims to support a community layout that does not exist: ortho_5x6
* error cleanup: rgbkb/sol/rev2
⚠ rgbkb/sol/rev2: RGBLED_NUM->rgblight.led_count: invalid literal for int() with base 10: '(BACKLIGHT_LEDS + FULLHAND_LEDS)'
* error log cleanup: shk9
☒ shk9: Claims to support a community layout that does not exist: ortho_3x3
* error log cleanup: sowbug
⚠ sowbug/68keys: RGBLED_NUM->rgblight.led_count: invalid literal for int() with base 10: 'DRIVER_LED_TOTAL'
⚠ sowbug/ansi_tkl: RGBLED_NUM->rgblight.led_count: invalid literal for int() with base 10: '(DRIVER_LED_TOTAL)'
* error log cleanup: torn
☒ torn: Claims to support a community layout that does not exist: split_3x6_4
* error cleanup: ymdk/np24/u4rgb6
☒ ymdk/np24/u4rgb6: Claims to support a community layout that does not exist: ortho_4x6
* error cleanup: masterworks/classy_tkl/rev_a
☒ masterworks/classy_tkl/rev_a: Claims to support a community layout that does not exist: tkl_iso_wkl
* 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>
* Enable 4x4 and 5x5 community keymap support
* Pull 4x4 community keymap fixes from @noroadsleft
* Build fixes for guidoism keymap - move keymap to layouts/community/planck_mit as it uses the LAYOUT_planck_mit macro
* Remove unnecessary re-definitions for XXXXXXX and _______
* Update 6lit to use KC_NO in layout macros
* Update rules.mk to follow current template
* Remove use of deprecated function action_get_macro - unused and contents were from old template
* Remove use of deprecated function action_get_macro - all code was commented out
* Remove use of deprecated function action_get_macro - convert macro to use process_record_user
* Convert keymap to consistent use of _______
* fix use of old style header guards
* Swap KC_NO for XXXXXXX macro since the swap to the macro for KC_TRANS
* Resolve use of ?= in rules.mk files
* Remove duplication of rules.mk and config.h in gherkin mjt keymap
* Remove unnecessary #includes
* Align layout macros so foobar can use gherkin keymaps
* Align 6lit layout macros with foobar
* Remove ifndef QUANTUM_DIR from keymaps
* Initial move of 40percent.club boards to common parent folder.
* Refactor readme files to be consistent
* Refactor readme files to be consistent - fix make command examples.
* Refactor readme files to be consistent - align readme filenames.
* Refactor readme files to be consistent - fix repo url.
* Disable Community keymap builds as they are currently failing due to missing functionality
* Move more of 40percent.club boards to common parent folder.
* Refactor readme files to be consistent - align readme filenames.
* Refactor readme files to be consistent - fix make command examples.