Commit Graph

56 Commits (11deaf60b43235acc15aa7c8b1e901cba78503e6)

Author SHA1 Message Date
Joel Challis 80b72487ce
Migrate features from rules.mk to data drive - LMN (#23277) 2024-03-15 01:42:33 +00:00
Joel Challis e26e12402b
Manual user keymap removal (#23104) 2024-02-19 09:48:06 +00:00
fauxpark 2c191e21c2 Merge remote-tracking branch 'upstream/master' into develop 2023-12-20 16:03:14 +11:00
Nick Brassel 9539f135d8
Remove obvious user keymaps, `keyboards/[0-9]*` edition. (#22691) 2023-12-18 13:53:02 +11:00
Joel Challis 2acb426b8e
Remove "empty" files (#22603) 2023-12-05 08:37:00 +00:00
Joel Challis 1ed03f498f
Remove userspace keymaps (#22544) 2023-11-27 05:36:45 +11:00
Ryan 5d2f2af198
OLED: driver naming cleanups (#21710) 2023-08-15 10:30:34 +01:00
Ryan 2f9f555add
Move `TAP_CODE_DELAY` to data driven (#21363) 2023-06-25 22:06:31 +10:00
Joel Challis 4ae45ca995
Tidy up encoder_map directions (#20847) 2023-05-10 22:55:49 +01:00
James Young 0a8f023488
MechWild Mercutio Layout Addition (#20738)
* add matrix_diagram.md

* info.json: apply friendly formatting

* add LAYOUT_625u_space with reference keymap
2023-05-06 10:24:49 -07:00
Nick Brassel c9f619124d
Encodermap direction define. (#20454) 2023-04-15 16:18:44 +01:00
Ryan 172a40686b
Move single `LAYOUT_all`s to data driven (#20430) 2023-04-15 21:08:15 +10:00
jack 36ab0c0aaa
Add core/fallback encoder behaviour (#20320) 2023-04-03 10:18:17 -06:00
Ryan caa8c81086
Move matrix config to info.json, part 7 (#20020) 2023-03-11 00:39:56 +11:00
Ryan 7e0299117b
Move encoder config to data driven (#19923)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-02-26 09:45:12 +11:00
Ryan 2da0827d4f
Remove matrix size defines (#19581) 2023-02-17 16:08:25 +11:00
Ryan f9aeea64c1
Migrate `MCU` and `BOOTLOADER` to data-driven (#19529) 2023-02-08 18:41:46 +11:00
Ryan f0618a1d53
Remove `IS_HOST_LED_ON` and migrate usages (#19753) 2023-02-06 02:36:09 +00:00
Ryan ebb512db82
Debounce defines cleanup (#19742)
* 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
2023-02-03 19:19:58 +00:00
Nick Brassel f6dd8dea2e
Remove usages of config_common.h from config.h files. (#19714) 2023-01-31 06:03:30 +11:00
Ryan 1978007fae
Tap Dance: remove `qk_` prefix (#19313) 2022-12-14 12:40:25 -08:00
Ryan 002b58f0e4
Normalise Space Cadet keycodes (#18864) 2022-10-27 11:19:16 +01:00
Ryan 1cb1a5a374
Remove legacy Grave Escape keycodes (#18787) 2022-10-20 18:04:11 -07:00
Ryan 5e4b076af3
Remove legacy keycodes, part 5 (#18710)
* `KC_SLCK` -> `KC_SCRL`
* `KC_NLCK` -> `KC_NUM`
2022-10-15 22:29:43 +01:00
Ryan 5629ba1807
Remove legacy keycodes, part 4 (#18683)
* `KC_PGDOWN` -> `KC_PGDN`

* `KC_PSCREEN` -> `KC_PSCR`

* `KC_SCOLON` -> `KC_SCLN`

* `KC_BSLASH` -> `KC_BSLS`

* `KC_BSPACE` -> `KC_BSPC`
2022-10-13 18:28:14 +01:00
Ryan c6f1b594a2
Remove legacy keycodes, part 2 (#18660)
* `KC_SYSREQ` -> `KC_SYRQ`

And one `KC_ALT_ERASE` -> `KC_ERAS`

* `KC_NONUS_BSLASH` -> `KC_NUBS`

* `KC_NUMLOCK` -> `KC_NUM`

* `KC_CLCK` -> `KC_CAPS`

* `KC_SCROLLLOCK` -> `KC_SCRL`

* `KC_LBRACKET` -> `KC_LBRC`

* `KC_RBRACKET` -> `KC_RBRC`

* `KC_CAPSLOCK` -> `KC_CAPS`
2022-10-10 20:06:26 +01:00
Joel Challis e068f7a8d1
RESET -> QK_BOOT user keymaps (#18560) 2022-10-01 17:47:12 +01:00
Jeff Epler 9632360caa
Use a macro to compute the size of arrays at compile time (#18044)
* Add ARRAY_SIZE and CEILING utility macros

* Apply a coccinelle patch to use ARRAY_SIZE

* fix up some straggling items

* Fix 'make test:secure'

* Enhance ARRAY_SIZE macro to reject acting on pointers

The previous definition would not produce a diagnostic for
```
int *p;
size_t num_elem = ARRAY_SIZE(p)
```
but the new one will.

* explicitly get definition of ARRAY_SIZE

* Convert to ARRAY_SIZE when const is involved

The following spatch finds additional instances where the array is
const and the division is by the size of the type, not the size of
the first element:
```
@ rule5a using "empty.iso" @
type T;
const T[] E;
@@

- (sizeof(E)/sizeof(T))
+ ARRAY_SIZE(E)

@ rule6a using "empty.iso" @
type T;
const T[] E;
@@

- sizeof(E)/sizeof(T)
+ ARRAY_SIZE(E)
```

* New instances of ARRAY_SIZE added since initial spatch run

* Use `ARRAY_SIZE` in docs (found by grep)

* Manually use ARRAY_SIZE

hs_set is expected to be the same size as uint16_t, though it's made
of two 8-bit integers

* Just like char, sizeof(uint8_t) is guaranteed to be 1

This is at least true on any plausible system where qmk is actually used.

Per my understanding it's universally true, assuming that uint8_t exists:
https://stackoverflow.com/questions/48655310/can-i-assume-that-sizeofuint8-t-1

* Run qmk-format on core C files touched in this branch

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-08-30 10:20:04 +02:00
Joel Challis bbc3bc55f2
RESET -> QK_BOOT user keymaps (#17940) 2022-08-21 23:55:30 +01:00
Nick Brassel 154d35ac14
Remove `UNUSED_PINS` (#17931) 2022-08-06 23:23:35 +10:00
Ryan 3da6575e24
Move keyboard USB IDs and strings to data driven: M (#17859) 2022-08-03 17:15:43 +10:00
Less/Rikki fc9654a1d0
feat: encoder map, OLED & encoder kb-level config (#17767) 2022-07-26 21:25:23 +01:00
jonavin 7f0581cd35
Jonavin mercutio - reduce mem footprint (#17498)
* Reduce mem footprint - remove sprintf

* remove stdio reference and use get_u8_str

Co-authored-by: Jonavin <=>
2022-07-21 13:44:51 +01:00
Stephon Parker e5e7039368
[Keymap] Contra - QWERTY US basic layout; MechWild Marcuio - EN update layout (#16787)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Stephon Parker <stephonparker@Stephons-MacBook-Pro.local>
2022-05-12 23:36:12 -07:00
FearlessSpiff 5995432202
[Keymap] add mouse controls to Mechwilds Mercutio FearlessSpiff (#16566) 2022-03-07 18:17:30 -08:00
FearlessSpiff 8f630c17b9
[Keymap] Add Fearless Spiff keymap for Mechwild Mercutio based on Bongocat and Jonavin (#15802) 2022-01-10 15:01:32 -08:00
Ryan a8d440e4e0
Tidy up NKRO_ENABLE rules (#15382) 2021-12-09 16:05:44 +11:00
Ryan c12b997679
Tidy up `SLEEP_LED_ENABLE` rules (#15362) 2021-12-01 21:13:00 +11:00
James Young 84ea77ead6
Remove `BOOTMAGIC_ENABLE = lite` option (#15002)
* remove BOOTMAGIC_ENABLE=lite setting

* change keyboard BOOTMAGIC_ENABLE rules

Edits keyboard-level instances of `BOOTMAGIC_ENABLE = lite` to `BOOTMAGIC_ENABLE = yes`.

* change keyboard BOOTMAGIC_ENABLE inline comments

Edits keyboard-level BOOTMAGIC_ENABLE inline comments to "Enable Bootmagic Lite".

* change keymap BOOTMAGIC_ENABLE rules

Edits keymap-level instances of `BOOTMAGIC_ENABLE = lite` to `BOOTMAGIC_ENABLE = yes`.

* change keymap BOOTMAGIC_ENABLE inline comments

Edits/adds keymap-level BOOTMAGIC_ENABLE inline comments to read "Enable Bootmagic Lite".

* change layout/user BOOTMAGIC_ENABLE rules/comments

Edits instances of `BOOTMAGIC_ENABLE = lite` to `BOOTMAGIC_ENABLE = yes`.

Edits/adds keymap-level BOOTMAGIC_ENABLE inline comments to read "Enable Bootmagic Lite".

* update non-rules.mk BOOTMAGIC_ENABLE references in keyboards/

* remove docs references to Full Bootmagic

* convert data-driven Bootmagic Lite instances

* remove Bootmagic Lite bodge from data-driven generation

* Merge remote-tracking branch 'upstream/develop' into rm/bootmagic-full_q4a

* update docs/ja/config_options.md per mtei

* update docs/faq_misc.md per mtei

Remove remaining Full Bootmagic reference.
2021-11-05 08:18:09 +11:00
Drashna Jaelre 9d235d4fc5
[Core] Change OLED task function to be boolean (#14864)
* [Core] Add kb level callbacks to OLED driver

* Update keyboards and keymaps

* Update docs

* Update userspace configs

* Add fix for my keymap ...

* update lefty
2021-11-02 09:42:50 +11:00
jonavin 705cd433c2
[Keymap] fix NKRO - switch to get_mods() and refactor encoder action code (#14278)
Co-authored-by: Jonavin <=>
2021-09-28 12:24:12 -07:00
Ryan 5af1799735
Remove BLUETOOTH_ENABLE from keyboard-level rules.mk (#14379) 2021-09-12 15:27:29 +10:00
Ryan 4791cfae1a
Remove width, height and key_count from info.json (#14274) 2021-09-12 14:04:56 +10:00
Ryan d5cb7de5e4
Change USBasp and bootloadHID bootloaders to lowercase (#14354) 2021-09-10 17:17:54 +10:00
Xelus22 4e1c5887c5
[Core] Refactor OLED to allow easy addition of other types (#13454)
* add docs

* core changes

* update keyboards to new OLED

* updated users to new OLED

* update layouts to new OLED

* fixup docs

* drashna's suggestion

* fix up docs

* new keyboards with oled

* core split changes

* remaining keyboard files

* Fix The Helix keyboards oled options

* reflect develop

Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: mtei <2170248+mtei@users.noreply.github.com>
2021-08-24 16:28:26 +10:00
James Young 4279b14adf
Merge remote-tracking branch 'upstream/master' into develop
Conflicts:
	keyboards/gmmk/pro/ansi/keymaps/jonavin/rules.mk
	keyboards/space_space/rules.mk
2021-08-19 11:32:23 -07:00
jonavin 98af5bc64e
[Keymap] Add jonavin user space / common functions (#13876)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Jonavin <=>
2021-08-19 10:45:49 -07:00
James Young a03aa301de
Remove Full Bootmagic (#13846)
* 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
2021-08-06 23:59:56 -07:00
Jonavin 8d611f6873
[Keymap] Jonavin keymap Mercutio add win key lockout function (#13670)
Co-authored-by: Jonavin <=>
2021-07-29 08:47:14 -07:00
Jonavin 002d90b357
[Keymap] Jonavin merc additional encoder functionality (#13039)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Jonavin <=>
2021-07-03 08:13:41 -07:00