Commit Graph

9336 Commits (7e983796e18e7401c062c158f23966aeb7b1405b)

Author SHA1 Message Date
Pete Sevander 7e983796e1
Process combos earlier & overlapping combos (#8591)
* Combo processing improvements.

Now it is possible to use ModTap and LayerTap keys as part of combos.
Overlapping combos also don't trigger all the combos, just exactly the
one that you press.

New settings:
- COMBO_MUST_HOLD_MODS
- COMBO_MOD_TERM
- COMBO_TERM_PER_COMBO
- COMBO_MUST_HOLD_PER_COMBO
- COMBO_STRICT_TIMER
- COMBO_NO_TIMER

* Remove the size flags from combo_t struct boolean members.

This in the end actually saves space as the members are accessed so many
times. The amount of operations needed to access the bits uses more
memory than setting the size saves.

* Fix `process_combo_key_release` not called correctly with tap-only combos

* Fix not passing a pointer when NO_ACTION_TAPPING is defined.

* Docs for `COMBO_ONLY_FROM_LAYER`

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Update quantum/process_keycode/process_combo.c

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Add `EXTRA_SHORT_COMBOS` option.

Stuff combo's `disabled` and `active` flags into `state`. Possibly can
save some space.

* Add more examples and clarify things with dict management system.

- Simple examples now has a combo that has modifiers included.
- The slightly more advanced examples now are actually more advanced
  instead of just `tap_code16(<modded-keycode>)`.
- Added a note that `COMBO_ACTION`s are not needed anymore as you can
  just use custom keycodes.
- Added a note that the `g/keymap_combo.h` macros use the
  `process_combo_event` function and that it is not usable in one's
  keymap afterwards.

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Change "the" combo action example to "email" example.

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Fix sneaky infinite loop with `combo_disable()`

No need to call `dump_key_buffer` when disabling combos because the
buffer is either being dumped if a combo-key was pressed, or the buffer is empty
if a non-combo-key is pressed.

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

* Update docs/feature_combo.md

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>

Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2021-08-06 09:44:57 +10:00
Nick Brassel 6aaf3e84e9
Rework as per 9824 (#13898) 2021-08-06 08:14:43 +10:00
Joel Challis bdaea259af
Tidy up rgbkb/mun (#13801)
* Tidy up rgbkb/mun
2021-08-05 00:59:50 +01:00
QMK Bot cb4d91f85f Merge remote-tracking branch 'origin/master' into develop 2021-08-04 21:33:19 +00:00
James Young f4c55db8dd
cKeys Handwire 101 Refactor (#13879)
* update info.json

- use human-friendly formatting
- remove `key_count` key

* rename LAYOUT to LAYOUT_ortho_4x4

* refactor default keymap

- add license header
- qmk cformat pass
- keycode grid alignment

* remove empty config.h file from default keymap

* update Manufacturer and Product strings

* tidy up handwire_101.c

- add license header
- remove boilerplate functions

* tidy up handwire_101.h

- add license header
- remove instructive comment

* minor rules.mk tidy-up

- remove Bootloader selection sample comments

* rewrite SEND_STRING() statements per fauxpark

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2021-08-04 22:32:27 +01:00
Dasky 3917fd5639
[Keyboard] Fix knops keymaps (#13872) 2021-08-04 12:10:31 -07:00
Drashna Jaelre 3568eafd65
[Keyboard] Switch Draculad to using WPM char hack (#13886) 2021-08-04 11:30:49 -07:00
QMK Bot 6525b82f5f Merge remote-tracking branch 'origin/master' into develop 2021-08-04 12:25:28 +00:00
James Young 4445455c1f
BM65ISO: refactor layout macro (#13860) 2021-08-04 22:24:54 +10:00
QMK Bot d9f30d366a Merge remote-tracking branch 'origin/master' into develop 2021-08-04 10:35:54 +00:00
Reza Jelveh 8e8803459f
Updated Ducky 2 one mini support (#11112)
* Initial Ducky One 2 Mini keyboard and keymap

* Keymap macro issue, together with general polish suggestions

* Separate default keymap into proper default, iso and ansi versions

* info.json updates (Configurator support). DEBOUNCE define adjust.

* Unused keymap defines removed.

* update requested ducky one mini2 board changes

* ducky: don't trigger app key with left shift

* ducky: make default mouse key behavior more linear

* ducky: add GRAVE_ESC_GUI_OVERRIDE to allow for win+esc to work

* ducky: playpause on fn space

* ducky: disable RGB_MATRIX until driver is merged

* ducky: clang-format matrix and one2mini.c

* ducky: update requested changes

Remove WFI_IDLE since it's already in the rules.mk CORTEX_ENABLE_WFI_IDLE=TRUE

* ducky: update requested changes

* ducky: move winkey grave esc to default keymap

* ducky: remove dipswitch from keymap and use DIP_SWITCH_MATRIX_GRID instead

* ducky: info.json lint

* ducky: enable DIP_SWITCH_ENABLE rule

* ducky: update readme

* ducky: fix backslash on default keymap

* ducky: remove unused USB_LED_CAPSLOCK_INDEX 28

* ducky: move mbi5042 led driver to ducky keyboard

* ducky: cosmetics

* ducky: requested changes

* ducky: refactor matrix.c again so we can better compare it to other boards

* ducky: remove bootmagic_lite as the boards bootloader trigger is actually handled in its own bootloader

* ducky: remove custom matrix

* ducky: update for chibios-contrib changes

* ducky: debug new USB driver

* ducky: debug usb issues

* ducky: update chibios version

* ducky: remove halconf.h

* ducky: update rules.mk

* ducky: update chconf.h

* Matching submodules.

* Restructure to explicitly define which board is in use, remove RGB driver pending followup PR.

* Revert "Matching submodules."

This reverts commit 2fbb34e0c63ea67ee09d2e2d525723c01431d1cd.

Co-authored-by: GitWellBack <48095880+GitWellBack@users.noreply.github.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-08-04 20:35:17 +10:00
QMK Bot d27ab328dc Merge remote-tracking branch 'origin/master' into develop 2021-08-04 02:10:01 +00:00
James Young ae20574f84
barracuda: update info.json layout macro reference (#13874)
* barracuda: update info.json layout macro reference

- change LAYOUT to LAYOUT_ortho_3x11

* remove Community Layouts rule

ortho_3x11 isn't a valid Community Layout.
2021-08-04 03:09:25 +01:00
QMK Bot 4ffc9d8288 Merge remote-tracking branch 'origin/master' into develop 2021-08-03 23:30:12 +00:00
James Young 8802d28aad
boardsource/holiday/spooky: update info.json layout macro reference (#13875)
- change LAYOUT to LAYOUT_ortho_2x3
2021-08-04 00:29:41 +01:00
QMK Bot 2dbc71f037 Merge remote-tracking branch 'origin/master' into develop 2021-08-03 22:54:45 +00:00
Ryan Baker d1cbea685e
rb86 (#13824)
* rb86

* adjudicate comments
2021-08-04 08:54:12 +10:00
Joakim Tufvegren 1409b36851
Remove the #10088 hotfix for Teensy 3.1-like Input:Club keyboards (#12870)
* Remove the #10088 hotfix for K20x MCU:s.

It seems to _cause_ the issue it intended to solve there.

* Cleaner way of removing #10088 hotfix.

Now only affects Ergodox Infinity, Whitefox and K-type, though.

Switches over Ergodox Infinity to the `IC_TEENSY_3_1` board, since that
was a nice place to implement the `restart_usb_driver` override.
However, I would guess this issue is present for other K20x/Teensy 3.1
boards as well...

* Fix comment regarding `IC_TEENSY_3_1` for all keyboards using it.
2021-08-04 07:38:37 +10:00
Joel Challis 3f419dc872
Unconditionally call led_init_ports (#12116)
* Unconditionally call led_init_ports

* Another call to led_init_ports
2021-08-03 18:34:32 +01:00
QMK Bot 2bc7511b9e Merge remote-tracking branch 'origin/master' into develop 2021-08-03 17:21:26 +00:00
James Young f2fc23d1b1
aves65: complete layout data (#13868)
add layout data for:
- LAYOUT_all
- LAYOUT_65_iso
- LAYOUT_65_iso_split_bs
- LAYOUT_65_iso_blocker_split_bs
- LAYOUT_65_ansi
- LAYOUT_65_ansi_split_bs
- LAYOUT_65_ansi_blocker
- LAYOUT_65_ansi_blocker_split_bs
2021-08-03 10:20:53 -07:00
QMK Bot 51eb5285a6 Merge remote-tracking branch 'origin/master' into develop 2021-08-03 17:04:00 +00:00
James Young e9a3e20813
4pplet/eagle_viper_rep/rev_a: fix missing key object (#13867)
Adds a key object for the KC_NUHS key to the info.json data.
2021-08-03 10:03:25 -07:00
QMK Bot 738e8e72ba Merge remote-tracking branch 'origin/master' into develop 2021-08-03 16:40:14 +00:00
Jonathan Rascher 853344235a
[Keymap] Minor cleanup of bcat keymaps and userspace (#13224) 2021-08-03 09:39:43 -07:00
QMK Bot 6961976855 Merge remote-tracking branch 'origin/master' into develop 2021-08-03 07:04:43 +00:00
James Young 4d42fb2031
40percentclub/nori: fix matrix reference in LAYOUT_ortho_4x8 (#13866)
* 40percentclub/nori: fix matrix reference in LAYOUT_ortho_4x8

* remove ortho_4x8 from Community Layouts rule

ortho_4x8 isn't a valid option here.
2021-08-03 00:04:07 -07:00
QMK Bot a14f331c0a Merge remote-tracking branch 'origin/master' into develop 2021-08-03 03:17:45 +00:00
James Young 2d78a43556
capsunlocked/cu7: fix missing key object (#13862)
Adds a key object for the encoder keypress.
2021-08-03 13:17:06 +10:00
QMK Bot a174d20d06 Merge remote-tracking branch 'origin/master' into develop 2021-08-03 00:53:24 +00:00
James Young be9031d01d
0xCB Static: fix `qmk info` and Configurator issues (#13856) 2021-08-02 17:52:46 -07:00
QMK Bot 5decdad8c6 Merge remote-tracking branch 'origin/master' into develop 2021-08-02 08:24:57 +00:00
JTM c2f227d2a8
Function96 V2: Fixed info.json file (#13322)
Fixes the info.json data for the LAYOUT_default and LAYOUT_ansi_splitspace macros.
2021-08-02 01:24:25 -07:00
Nick Brassel ee3c138385 Merge remote-tracking branch 'upstream/master' into develop 2021-08-02 13:55:36 +10:00
Jonavin 53683e8d20
fix develop branch move file (#13832)
Co-authored-by: zvecr <git@zvecr.com>
2021-08-01 22:37:59 +10:00
James Young 4b630c46fe
Duck Eagle/Viper V2 Refactor (#13828) 2021-07-31 13:12:49 -07:00
Drashna Jaelre 41a770ded3
[Keyboard] Fix SRC include for matrix/m20add issi driver (#13826) 2021-07-31 12:18:11 -07:00
James Young 851d995a7d
Merro60 Layout Macro Refactor (#13827) 2021-07-31 12:17:55 -07:00
James Young 1305b6d82e
Momoka Ergo: layout macro/Configurator fix (#13825)
* momoka_ergo.h: use modified QMK 3-character notation

Renames the matrix position arguments to use QMK's K<row><column> notation, but using L or R for the left and right halves, respectively.

* physically arrange layout macro

Arrange the layout macro and keycodes to resemble the assembled keyboard.

* info.json: rebuild LAYOUT data

Fixes mispositioned keys in QMK Configurator.
2021-07-31 12:16:51 -07:00
Drashna Jaelre 7bcbeffc2d
Fix compile issues due to LED changes (#13821) 2021-07-31 17:30:13 +01:00
slashbunny 3f5482bbb7
Update endgame keymap to work with suspend changes (#13805)
Updates the Massdrop CTRL keyboard engame keymap to work after the
changes to USB suspend in #12697

Fixes #13782
2021-07-31 16:28:09 +01:00
Joel Challis 70fb3e1aaf
__flash? (#13799) 2021-07-31 14:35:30 +01:00
Joel Challis 206a995ccd
Move some led drivers to common folder (#13749)
* Move some led drivers to common folder
2021-07-31 14:31:09 +01:00
James Young 954806c80f
DP60 layout macro renames (#13811)
* info.json: apply human-friendly formatting

* rename LAYOUT_60_wkl to LAYOUT_60_ansi_tsangan_split_rshift

* rename LAYOUT_60_wkl_split_bs to LAYOUT_60_tsangan_hhkb

* info.json: remove `key_count` keys
2021-07-31 14:25:47 +01:00
James Young 4604b58769
Charue Sunsetter: layout macro fixes (#13809)
* remove K214 from LAYOUT_1065_ansi macro

Position K214 is only used by the ISO layout (as KC_NUHS); it doesn't get used here. Removing it so the layout macro matches the info.json layout data.

Also updates info.json to use human-friendly formatting.

* add layout macros

Adds:

- LAYOUT_1065_ansi_split_bs macro
- LAYOUT_1065_iso macro
- LAYOUT_1065_iso_split_bs macro
- `default_iso` keymap

* add LAYOUT_all macro

Adds LAYOUT_all macro and a `default_all` keymap.

This PCB is unusual in that the ANSI Backslash and ANSI Enter do not share their matrix positions with the Non-US Backslash or ISO Enter keys at all. This layout macro supports both the ANSI and ISO positions in one macro/keymap.
2021-07-31 14:23:27 +01:00
James Young 56f84774d7
Rartland: add 65_ansi and 65_iso layouts (#13807)
* add 65_ansi and 65_iso layouts

... with Community Layout support

* add block comment of layouts to rartland.h
2021-07-31 14:22:12 +01:00
peott-fr d191ccfdc5
[Keymap] Add peott-fr Kinesis keymap (#13812) 2021-07-31 06:14:56 -07:00
Jay Greco 56200de2eb
[Keyboard] Reduce nibble oled_status keymap size (#13813) 2021-07-31 06:11:11 -07:00
Drashna Jaelre e755c5fe1f
[Keyboard] Fix RGBKB Pan Rev1 Encoder RGB handling (#13781) 2021-07-31 06:09:47 -07:00
MakotoKurauchi fb6c66a14b
change DIP_SWITCH_ENABLE to off (#13815) 2021-07-31 18:51:32 +09:00