Commit Graph

97 Commits

Author SHA1 Message Date
Joel Challis
960c4969a5 Remove empty url fields (#25181) 2025-04-22 17:59:00 +01:00
Ryan
61c7c1f74c Convert some AVR GPIO operations to macros (#23424) 2024-05-02 10:48:49 +01:00
Joel Challis
a65818d929 Migrate build target markers to keyboard.json - BM (#23627) 2024-04-27 11:40:36 -07:00
James Young
42f61611e8 Data-Driven Keyboard Conversions: M, Part 3 (#23614) 2024-04-26 05:41:09 +01:00
Ryan
2dd406f08f Remove quantum.h includes from keyboard custom matrix.cs (#23371) 2024-03-30 14:07:19 +00:00
Joel Challis
e26e12402b Manual user keymap removal (#23104) 2024-02-19 09:48:06 +00:00
Joel Challis
1ed03f498f Remove userspace keymaps (#22544) 2023-11-27 05:36:45 +11:00
Ryan
c157c19b81 Dedupe I2C, SPI, UART driver inclusions (#22253) 2023-10-13 17:25:32 +11:00
Ryan
5bd68e3695 Move single LAYOUTs to data driven (#20365) 2023-04-12 13:42:51 +10:00
Ryan
f9aeea64c1 Migrate MCU and BOOTLOADER to data-driven (#19529) 2023-02-08 18:41:46 +11:00
Ryan
f20a05440e Remove unused MATRIX_HAS_GHOST from config.h (#19726) 2023-02-03 00:04:10 +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
b727434391 Remove commented out backlight config & stray "backlight levels" (#19703) 2023-01-28 15:42:44 +00:00
Joel Challis
3b11e98215 Update use of legacy keycodes (#19120) 2022-11-22 22:07:47 +11:00
Ryan
5974d989fe Normalise Unicode keycodes (#18898)
* `UC_MOD`/`UC_RMOD` -> `UC_NEXT`/`UC_PREV`

* `UNICODE_MODE_*` -> `QK_UNICODE_MODE_*`

* `UC_MAC` -> `UNICODE_MODE_MACOS`

* `UC_LNX` -> `UNICODE_MODE_LINUX`

* `UC_WIN` -> `UNICODE_MODE_WINDOWS`

* `UC_BSD` -> `UNICODE_MODE_BSD`

* `UC_WINC` -> `UNICODE_MODE_WINCOMPOSE`

* `UC_EMACS` -> `UNICODE_MODE_EMACS`

* `UC__COUNT` -> `UNICODE_MODE_COUNT`

* `UC_M_MA` -> `UC_MAC`

* `UC_M_LN` -> `UC_LINX`

* `UC_M_WI` -> `UC_WIN`

* `UC_M_BS` -> `UC_BSD`

* `UC_M_WC` -> `UC_WINC`

* `UC_M_EM` -> `UC_EMAC`

* Docs

* Update quantum/unicode/unicode.h
2022-10-31 21:15:12 +00:00
Ryan
002b58f0e4 Normalise Space Cadet keycodes (#18864) 2022-10-27 11:19:16 +01:00
Ryan
18dc851e37 Remove legacy Debug keycode (#18769)
* `DEBUG` -> `DB_TOGG`, default-ish keymaps

* `DEBUG` -> `DB_TOGG`, user keymaps

* `DEBUG` -> `DB_TOGG`, community layouts

* `DEBUG` -> `DB_TOGG`, userspace

* `DEBUG` -> `DB_TOGG`, docs & core
2022-10-19 11:33:05 +01:00
Ryan
74223c34a9 Remove legacy keycodes, part 6 (#18740)
* `KC_RSHIFT` -> `KC_RSFT`

* `KC_RCTRL` -> `KC_RCTL`

* `KC_LSHIFT` -> `KC_LSFT`

* `KC_LCTRL` -> `KC_LCTL`
2022-10-16 14:14:40 +01: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
Joel Challis
a9e5e23063 Remove keymaps that still reference legacy macros (#18693) 2022-10-13 14:17:20 +11:00
Ryan
e96d829724 Remove legacy keycodes, part 3 (#18669)
* `KC__VOLDOWN` -> `KC_VOLD`

* `KC__VOLUP` -> `KC_VOLU`

* `KC__MUTE` -> `KC_MUTE`

* `KC_POWER` -> `KC_PWR`
2022-10-11 14:21:47 +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
Ryan
4b2d71de52 Remove legacy international keycodes (#18588) 2022-10-09 14:51:09 +11: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
QMK Bot
d4f9eb5225 Merge remote-tracking branch 'origin/master' into develop 2022-08-03 07:16:28 +00:00
Ryan
3da6575e24 Move keyboard USB IDs and strings to data driven: M (#17859) 2022-08-03 17:15:43 +10:00
Drashna Jaelre
0da6562c4d Make default layer size 16-bit (#15286)
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2022-06-19 07:37:51 +10:00
Tomasz Janeczko
6567b21688 Move more UART-based keyboards to use timeout correctly. (#17329)
Co-authored-by: Tomasz Janeczko <tomasz.j@hey.com>
2022-06-08 14:51:41 -07:00
Ryan
764dc18a81 Remove NO_ACTION_MACRO and NO_ACTION_FUNCTION from keyboard config.h (#16655) 2022-03-15 13:56:58 +00:00
Ryan
6f81880f17 Convert some more boards to Matrix Lite (#15489) 2021-12-27 21:15:56 +11:00
Ryan
c12268807d Migrate serial_uart usages to UART driver (#15479)
* Migrate Thermal Printer feature to UART driver

* Migrate 40percentclub UT47 to UART driver

* Migrate Centromere to UART driver

* Migrate Chimera Ergo to UART driver

* Migrate Chimera Let's Split to UART driver

* Migrate Chimera Ortho to UART driver

* Migrate Chimera Ortho Plus to UART driver

* Migrate Comet46 to UART driver

* Migrate Palm USB converter to UART driver

* Migrate Sun USB converter to UART driver

* Migrate Dichotomy to UART driver

* Migrate Honeycomb to UART driver

* Migrate Mitosis to UART driver

* Migrate Redox W to UART driver

* Migrate Uni660 to UART driver

* Migrate Telophase to UART driver
2021-12-15 11:00:39 +00:00
Ryan
f718a10889 Fix up build options comments (#15463) 2021-12-12 18:05:37 -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
QMK Bot
e5d48f6d16 Merge remote-tracking branch 'origin/master' into develop 2021-09-30 09:17:50 +00:00
Ryan
0b37e07f90 Remove redundant MIDI_ENABLE = no in keyboard-level rules.mk (#14649) 2021-09-30 19:17:20 +10:00
fauxpark
1895151a9c Merge remote-tracking branch 'upstream/master' into develop 2021-09-12 14:10:26 +10:00
Ryan
4791cfae1a Remove width, height and key_count from info.json (#14274) 2021-09-12 14:04:56 +10:00
QMK Bot
e6ff638abf Merge remote-tracking branch 'origin/master' into develop 2021-09-10 03:36:14 +00:00
Ryan
7eea780a7d Remove bootloader listings from rules.mk (#14330) 2021-09-10 13:35:46 +10:00
QMK Bot
504c00c2e1 Merge remote-tracking branch 'origin/master' into develop 2021-09-10 03:32:53 +00:00
Ryan
2cb9219a3e Remove commented out BLUETOOTH_ENABLE rules (#14361) 2021-09-10 13:32:22 +10:00
Ryan
41c50bb653 Change keyboard level include guards to pragma once (#14248)
* Change keyboard level include guards to `pragma once`

And clean up a lot of layout macros

* Oops

* Remove dangling endif
2021-09-01 19:03:14 +10:00
James Young
4b453dca92 Remove MIDI Configuration boilerplate (#11151)
* remove keyboard-level instances of `MIDI_ENABLE = no`

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e  '/^[ #]*MIDI_ENABLE[ \t]*=[ \t]*no/d' {} +
```

Co-Authored-By: Nick Brassel <nick@tzarc.org>

* fix case-sensitivity issues on MIDI_ENABLE

Change instances of `MIDI_ENABLE = YES` to `MIDI_ENABLE = yes`.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;MIDI_ENABLE[ \t]*=[ \t]*[Yy][Ee][Ss];MIDI_ENABLE = yes;g' {} +
```

* replace `# MIDI controls` with `# MIDI support`

Replace `# MIDI controls` with `# MIDI support` in keyboard-level `rules.mk` files.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#[ \t]*MIDI[ \t]*\(controls\|support\).*;# MIDI support;g' {} +
```

* align inline comments

Aligns the inline comments to the length used by the QMK AVR rules.mk template.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;MIDI_ENABLE *= *yes.*;MIDI_ENABLE = yes           # MIDI support;g'  {} +
```

* remove commented instances of `MIDI_ENABLE` from keyboard `rules.mk` files

Commands:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#\([ \t]*MIDI_ENABLE\) = yes; \1 = no ;' {} +
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;^\([ \t]*\)\(MIDI_ENABLE = no\);\2\1;' {} +
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e '/^[ #]\+MIDI_ENABLE *= *no/d' {} +
```

* remove MIDI configuration boilerplate from keyboard config.h files

Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-08-16 06:51:13 +10: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
Ryan
44260c3414 Remove API_SYSEX_ENABLEs from rules.mk (#13389) 2021-06-30 23:30:42 -07:00
Drashna Jaelre
f0b30e0027 Make Swap Hands use PROGMEM (#12284)
This converts the array that the Swap Hands feature uses to use PROGMEM,
and to read from that array, as such. Since this array never changes at
runtime, there is no reason to keep it in memory. Especially for AVR
boards, as memory is a precious resource.
2021-05-09 23:21:09 -07:00
James Young
a8d64c8b89 Change BOOTMAGIC_ENABLE=yes to use Bootmagic Lite (#12172) 2021-04-12 21:18:52 +02:00