qmk/qmk_firmware

[Bug] There's no way to tell Space Cadet to not emit the tapping key

Open

#8,360 opened on 2020年3月9日

GitHub で見る
 (7 comments) (0 reactions) (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

I have commented in #3192 but I think this deserves its own issue.

It's currently a problem that it's impossible to tell Space Cadet that you don't need the tapping key and to not emit it. You can return false in the processing function for other keys, but there's no way to cancel Space Cadet's tapping.

My usage is:

  • Space Cadet shifts (pressing is parenthesis, holding is shift).
  • Alt+Shift passing through as normal, for language change in the OS (no parentheses, no matter whether I instantly tap Shift).
  • Left shift+Right shift sending "()", as sometimes I haven't managed to release left shift before tapping right.
  • Right shift+Left shift sending Caps Lock.

I currently can't make these work, because if I tap a Shift key quickly, its tapping keycode is always emitted, even if it was part of Alt+Shift for changing the language, and there's no way to change this from my config because I can't tell Space Cadet to not emit the parenthesis no matter how short the tap is.

There should be a way to tell Space Cadet "you don't need to emit the tapping key, I've got it".

System Information

  • Keyboard: Centromere
    • Revision (if applicable): v2
  • Operating system: Linux
  • AVR GCC version:
  • ARM GCC version:
  • QMK Firmware version: I'm using @spe2's fork, I'm not entirely sure what version it is, but I would love to use mainline.
  • Any keyboard related software installed?
    • AutoHotKey
    • Karabiner
    • Other:

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