mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-07-16 12:51:47 +00:00
Doc rewording and minor edit.
This commit is contained in:
parent
352f4fa095
commit
ed53b7dadc
@ -437,20 +437,20 @@ On Other Key Press. Chordal Hold is enabled by adding to your `config.h`:
|
|||||||
Chordal Hold implements, by default, an "opposite hands" rule. Suppose a
|
Chordal Hold implements, by default, an "opposite hands" rule. Suppose a
|
||||||
tap-hold key is pressed and then, before the tapping term, another key is
|
tap-hold key is pressed and then, before the tapping term, another key is
|
||||||
pressed. With Chordal Hold, the tap-hold key is settled as tapped if the two
|
pressed. With Chordal Hold, the tap-hold key is settled as tapped if the two
|
||||||
keys are on the same hand. This behavior may be useful to avoid accidental
|
keys are on the same hand.
|
||||||
modifier activation with mod-taps, particularly in rolled keypresses when using
|
|
||||||
home row mods.
|
Otherwise, if the keys are on opposite hands, Chordal Hold introduces no new
|
||||||
|
behavior. Hold On Other Key Press or Permissive Hold may be used together with
|
||||||
|
Chordal Hold to configure the behavior in the opposite hands case. With Hold On
|
||||||
|
Other Key Press, an opposite hands chord is settled immediately as held. Or with
|
||||||
|
Permissive Hold, an opposite hands chord is settled as held provided the other
|
||||||
|
key is pressed and released (nested press) before releasing the tap-hold key.
|
||||||
|
|
||||||
|
Chordal Hold may be useful to avoid accidental modifier activation with
|
||||||
|
mod-taps, particularly in rolled keypresses when using home row mods.
|
||||||
|
|
||||||
Notes:
|
Notes:
|
||||||
|
|
||||||
* In the case that the keys are on opposite hands, Chordal Hold alone does not
|
|
||||||
yet settle the tap-hold key. Chordal Hold may be used in combination with Hold
|
|
||||||
On Other Key Press or Permissive Hold to determine the behavior. With Hold On
|
|
||||||
Other Key Press, an opposite hands chord is settled immediately as held. Or
|
|
||||||
with Permissive Hold, an opposite hands chord is settled as held provided the
|
|
||||||
other key is pressed and released (nested press) before releasing the tap-hold
|
|
||||||
key.
|
|
||||||
|
|
||||||
* Chordal Hold has no effect after the tapping term.
|
* Chordal Hold has no effect after the tapping term.
|
||||||
|
|
||||||
* Chordal Hold has no effect when the other key is also a tap-hold key. This is
|
* Chordal Hold has no effect when the other key is also a tap-hold key. This is
|
||||||
|
@ -69,12 +69,10 @@ bool get_chordal_hold_default(keyrecord_t *tap_hold_record, keyrecord_t *other_r
|
|||||||
|
|
||||||
__attribute__((weak)) char chordal_hold_handedness_kb(keypos_t key) {
|
__attribute__((weak)) char chordal_hold_handedness_kb(keypos_t key) {
|
||||||
# if defined(SPLIT_KEYBOARD) || ((MATRIX_ROWS) > (MATRIX_COLS))
|
# if defined(SPLIT_KEYBOARD) || ((MATRIX_ROWS) > (MATRIX_COLS))
|
||||||
# pragma message "Inferred handedness rows"
|
|
||||||
// If the keyboard is split or if MATRIX_ROWS > MATRIX_COLS, assume that the
|
// If the keyboard is split or if MATRIX_ROWS > MATRIX_COLS, assume that the
|
||||||
// first half of the rows are left and the latter half are right.
|
// first half of the rows are left and the latter half are right.
|
||||||
return (key.row < (MATRIX_ROWS) / 2) ? /*left*/ 'L' : /*right*/ 'R';
|
return (key.row < (MATRIX_ROWS) / 2) ? /*left*/ 'L' : /*right*/ 'R';
|
||||||
# else
|
# else
|
||||||
# pragma message "Inferred handedness cols"
|
|
||||||
// Otherwise, assume the first half of the cols are left, others are right.
|
// Otherwise, assume the first half of the cols are left, others are right.
|
||||||
return (key.col < (MATRIX_COLS) / 2) ? /*left*/ 'L' : /*right*/ 'R';
|
return (key.col < (MATRIX_COLS) / 2) ? /*left*/ 'L' : /*right*/ 'R';
|
||||||
# endif
|
# endif
|
||||||
@ -82,7 +80,6 @@ __attribute__((weak)) char chordal_hold_handedness_kb(keypos_t key) {
|
|||||||
|
|
||||||
__attribute__((weak)) char chordal_hold_handedness_user(keypos_t key) {
|
__attribute__((weak)) char chordal_hold_handedness_user(keypos_t key) {
|
||||||
# if defined(CHORDAL_HOLD_LAYOUT)
|
# if defined(CHORDAL_HOLD_LAYOUT)
|
||||||
# pragma message "Using chordal_hold_layout"
|
|
||||||
// If given, read handedness from `chordal_hold_layout` array.
|
// If given, read handedness from `chordal_hold_layout` array.
|
||||||
return (char)pgm_read_byte(&chordal_hold_layout[key.row][key.col]);
|
return (char)pgm_read_byte(&chordal_hold_layout[key.row][key.col]);
|
||||||
# else
|
# else
|
||||||
|
Loading…
Reference in New Issue
Block a user