qmk/qmk_firmware

[Bug] Permissive hold doesn't enable combos on another layer before tapping term is met

Open

#24,250 opened on 2024年8月6日

GitHub で見る
 (3 comments) (1 reaction) (0 assignees)C (43,867 forks)batch import
bughelp wanted

Repository metrics

Stars
 (20,368 stars)
PR merge metrics
 (平均マージ 20d 9h) (30d で 27 merged PRs)

説明

Describe the Bug

Let's suppose we have the following two layers:

Layer 1:

  • Key 1: Tap=d, hold=MO layer 2
  • Key 2: Tap=s
  • Key 3: Tap=t

Layer 2:

  • Key 2: Tap=g
  • Key 3: Tap=h
  • Combo key 2 and 3 = r

Let's assume tapping term of 300ms and permissive hold is enabled. If key 1 is held and the combo is tapped and it hasn't been 300ms yet, the output is gh. After the 300ms, the output for the same combo is r. I would expect the combo to work before the tapping term is met as well if permissive hold is enabled, as the layer change is already registered, which is evident as the output is gh instead of st.

Keyboard Used

zsa Voyager

Link to product page (if applicable)

https://www.zsa.io/voyager

Operating System

Windows

qmk doctor Output

No response

Is AutoHotKey / Karabiner installed

  • AutoHotKey (Windows)
  • Karabiner (macOS)

Other keyboard-related software installed

No response

Additional Context

No response

コントリビューターガイド