Open-source keyboard firmware for Atmel AVR and Arm USB families
Go to file
Sergey Vlasov 610035dce8
Add HOLD_ON_OTHER_KEY_PRESS option for dual-role keys (#9404)
* Add HOLD_ON_OTHER_KEY_PRESS option for dual-role keys

Implement an additional option for dual-role keys which converts the
dual-role key press into a hold action immediately when another key is
pressed (this is different from the existing PERMISSIVE_HOLD option,
which selects the hold action when another key is tapped (pressed and
then released) while the dual-role key is pressed).  The Mod-Tap keys
already behave in a similar way, unless the IGNORE_MOD_TAP_INTERRUPT
option is enabled (but with some additional delays); the added option
makes this behavior available for all other kinds of dual-role keys.

* [Docs] Update tap-hold docs for HOLD_ON_OTHER_KEY_PRESS

Document the newly added HOLD_ON_OTHER_KEY_PRESS option and update the
documentation for closely related options (PERMISSIVE_HOLD and
IGNORE_MOD_TAP_INTERRUPT).

Use Layer Tap instead of Mod Tap in examples for PERMISSIVE_HOLD and
HOLD_ON_OTHER_KEY_PRESS, because the effect of using these options with
Mod Tap keys is mostly invisible without IGNORE_MOD_TAP_INTERRUPT.

Add comments before return statements in sample implementations of
`get_ignore_mod_tap_interrupt()`, `get_hold_on_other_key_press()` and
`get_permissive_hold()`.

Thanks to @Erovia and @precondition for comments and suggestions to
improve the documentation.
2021-08-07 09:16:26 +10:00
.github
.vscode
api_data
bin
data Remove references to info.json width and height in CLI (#13728) 2021-07-29 22:37:18 -07:00
docs Add HOLD_ON_OTHER_KEY_PRESS option for dual-role keys (#9404) 2021-08-07 09:16:26 +10:00
drivers __flash? (#13799) 2021-07-31 14:35:30 +01:00
keyboards Copy GMMK Pro screw specs to ISO readme (#13908) 2021-08-07 08:11:17 +10:00
layouts Merge remote-tracking branch 'origin/master' into develop 2021-08-03 16:40:14 +00:00
lib Update ChibiOS-Contrib, mirroring script. (#13896) 2021-08-06 16:40:12 +10:00
nix
platforms/chibios Remove the #10088 hotfix for Teensy 3.1-like Input:Club keyboards (#12870) 2021-08-04 07:38:37 +10:00
quantum Merge remote-tracking branch 'origin/master' into develop 2021-08-06 05:54:10 +00:00
tests
tmk_core Add HOLD_ON_OTHER_KEY_PRESS option for dual-role keys (#9404) 2021-08-07 09:16:26 +10:00
users Merge remote-tracking branch 'origin/master' into develop 2021-08-03 16:40:14 +00:00
util Update ChibiOS-Contrib, mirroring script. (#13896) 2021-08-06 16:40:12 +10:00
.clang-format
.editorconfig
.gitattributes
.gitignore
.gitmodules
.travis.yml
book.json
bootloader.mk
build_full_test.mk
build_json.mk
build_keyboard.mk
build_layout.mk
build_test.mk Move print/debug files to quantum (#12069) 2021-08-03 18:49:33 +01:00
CODE_OF_CONDUCT.md
common_features.mk Move print/debug files to quantum (#12069) 2021-08-03 18:49:33 +01:00
common.mk
disable_features.mk
Dockerfile
Doxyfile
doxygen-todo
LICENSE
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md
Makefile
message.mk
nose2.cfg
readme.md
requirements-dev.txt
requirements.txt
secrets.tar.enc
setup.cfg
shell.nix
show_options.mk add yaml_build_options target (#10533) 2021-08-06 08:18:32 +10:00
testlist.mk
Vagrantfile

Quantum Mechanical Keyboard Firmware

Current Version Build Status Discord Docs Status GitHub contributors GitHub forks

This is a keyboard firmware based on the tmk_keyboard firmware with some useful features for Atmel AVR and ARM controllers, and more specifically, the OLKB product line, the ErgoDox EZ keyboard, and the Clueboard product line.

Documentation

The docs are powered by Docsify and hosted on GitHub. They are also viewable offline; see Previewing the Documentation for more details.

You can request changes by making a fork and opening a pull request, or by clicking the "Edit this page" link at the bottom of any page.

Supported Keyboards

The project also includes community support for lots of other keyboards.

Maintainers

QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, Hasu. The OLKB product firmwares are maintained by Jack Humbert, the Ergodox EZ by ZSA Technology Labs, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.

Official Website

qmk.fm is the official website of QMK, where you can find links to this page, the documentation, and the keyboards supported by QMK.