qmk/qmk_firmware

[Bug] SH_T Swap-hands action produces extra tap depending on timing

Open

#24,410 建立於 2024年9月19日

在 GitHub 查看
 (8 留言) (0 反應) (0 負責人)C (43,867 fork)batch import
bughelp wanted

倉庫指標

Star
 (20,368 star)
PR 合併指標
 (平均合併 20天 9小時) (30 天內合併 27 個 PR)

描述

I have r key mirrored to i. Quick SH_T(KC_SPC) + r combination results in i while doing it slowly results in i as expected. Logs below contain both cases in order.

ilikeheaps:plyboard:1: ---- action_exec: start -----
ilikeheaps:plyboard:1: EVENT: 0305d(21482)
ilikeheaps:plyboard:1: Tapping: Start(Press tap key).
ilikeheaps:plyboard:1: TAPPING_KEY=0305d(21482):0 
ilikeheaps:plyboard:1: processed: 0305d(21482):0 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: ---- action_exec: start -----
ilikeheaps:plyboard:1: EVENT: 0102d(21553)
ilikeheaps:plyboard:1: waiting_buffer_enq: { [7]=0602d(21553):0  }
ilikeheaps:plyboard:1: ---- action_exec: process waiting_buffer -----
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: ---- action_exec: start -----
ilikeheaps:plyboard:1: EVENT: 0305u(21590)
ilikeheaps:plyboard:1: Tapping: First tap(0->1).
ilikeheaps:plyboard:1: TAPPING_KEY=0305d(21482):1-
ilikeheaps:plyboard:1: ACTION: ACT_SWAP_HANDS[0:2C] layer_state:  default_layer_state: 
ilikeheaps:plyboard:1: keyboard_report: 00 | 2C 00 00 00 00 00 
ilikeheaps:plyboard:1: waiting_buffer_enq: { [7]=0602d(21553):0  [0]=0305u(21590):1- }
ilikeheaps:plyboard:1: ---- action_exec: process waiting_buffer -----
ilikeheaps:plyboard:1: Tapping: key event while last tap(>0).
ilikeheaps:plyboard:1: ACTION: ACT_LMODS[0:0F] layer_state:  default_layer_state: 
ilikeheaps:plyboard:1: keyboard_report: 00 | 2C 0F 00 00 00 00 
ilikeheaps:plyboard:1: processed: waiting_buffer[7] =0602d(21553):0 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: Tapping: Tap release(1)
ilikeheaps:plyboard:1: ACTION: ACT_SWAP_HANDS[0:2C] layer_state:  default_layer_state: 
ilikeheaps:plyboard:1: keyboard_report: 00 | 00 0F 00 00 00 00 
ilikeheaps:plyboard:1: TAPPING_KEY=0000u(0):0 
ilikeheaps:plyboard:1: processed: waiting_buffer[0] =0000u(0):0 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: ---- action_exec: start -----
ilikeheaps:plyboard:1: EVENT: 0102u(21626)
ilikeheaps:plyboard:1: ACTION: ACT_LMODS[0:0F] layer_state:  default_layer_state: 
ilikeheaps:plyboard:1: keyboard_report: 00 | 00 00 00 00 00 00 
ilikeheaps:plyboard:1: processed: 0602u(21626):0 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: ---- action_exec: start -----
ilikeheaps:plyboard:1: EVENT: 0305d(23288)
ilikeheaps:plyboard:1: Tapping: Start(Press tap key).
ilikeheaps:plyboard:1: TAPPING_KEY=0305d(23288):0 
ilikeheaps:plyboard:1: processed: 0305d(23288):0 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: Tapping: End. Timeout. Not tap(0): 0000u(23488)
ilikeheaps:plyboard:1: ACTION: ACT_SWAP_HANDS[0:2C] layer_state:  default_layer_state: 
ilikeheaps:plyboard:1: TAPPING_KEY=0000u(0):0 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: ---- action_exec: start -----
ilikeheaps:plyboard:1: EVENT: 0102d(23572)
ilikeheaps:plyboard:1: ACTION: ACT_LMODS[0:0F] layer_state:  default_layer_state: 
ilikeheaps:plyboard:1: keyboard_report: 00 | 0F 00 00 00 00 00 
ilikeheaps:plyboard:1: processed: 0602d(23572):0 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: ---- action_exec: start -----
ilikeheaps:plyboard:1: EVENT: 0102u(23798)
ilikeheaps:plyboard:1: ACTION: ACT_LMODS[0:0F] layer_state:  default_layer_state: 
ilikeheaps:plyboard:1: keyboard_report: 00 | 00 00 00 00 00 00 
ilikeheaps:plyboard:1: processed: 0602u(23798):0 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: 
ilikeheaps:plyboard:1: ---- action_exec: start -----
ilikeheaps:plyboard:1: EVENT: 0305u(23843)
ilikeheaps:plyboard:1: ACTION: ACT_SWAP_HANDS[0:2C] layer_state:  default_layer_state: 
ilikeheaps:plyboard:1: processed: 0305u(23843):0 

貢獻者指南