sshkeyboard单键快速连按触发不全?求树莓派SSH按键全响应方案
解决sshkeyboard单键快速连按触发不全的问题
这个问题是因为sshkeyboard库默认会忽略按住按键产生的重复事件,而快速连按单个按键时,系统可能会把连续的短间隔按键识别为“按住重复”,导致回调只触发少数几次;交替按键时因为每次按键不同,不会被判定为重复,所以能全触发。
直接修改代码,在调用listen_keyboard时添加ignore_hold=False参数,关闭重复事件忽略:
from sshkeyboard import listen_keyboard def onpress(key): print("input detected") # 关闭重复事件忽略,捕捉所有按键按下动作 listen_keyboard(on_press=onpress, ignore_hold=False)
如果修改后还是有问题,可以检查SSH终端的按键输入设置:
- 在终端执行
stty -a查看当前配置,重点关注min和time参数 - 如果
time=0,可以尝试执行stty time 1(设置10毫秒的等待时间),让终端更精准识别单次按键,避免合并快速输入的字符
内容的提问来源于stack exchange,提问作者Raebel Christo
相关产品推荐
相关产品推荐

