![当禁用按键重复时,如何让箭头键重复按键?](https://linux22.com/image/93737/%E5%BD%93%E7%A6%81%E7%94%A8%E6%8C%89%E9%94%AE%E9%87%8D%E5%A4%8D%E6%97%B6%EF%BC%8C%E5%A6%82%E4%BD%95%E8%AE%A9%E7%AE%AD%E5%A4%B4%E9%94%AE%E9%87%8D%E5%A4%8D%E6%8C%89%E9%94%AE%EF%BC%9F.png)
我需要禁用按键重复,因为长期 WPM 会提高 10%,如线程中所述Debian 中光标/打字不稳定时如何校准打字。但是,我认为重新定位插入符位置的功能对于使用按键重复时长按箭头键很有用。我想保持它们的长按,但有自定义设置延迟和速度。我的设置在键盘 > 打字哪里的延迟和选项应该针对图 1 中的箭头键进行个性化。我根本无法获得 (1) 工作的选项,并且由于按钮和键盘较多,我保留选项 (2) 对于任务来说太麻烦
- 禁用所有按键重复并启用箭头键。
- 允许所有按键重复并禁用除方向键以外的所有键。 (奥莱乔根布的回答) - - 我认为这个提案并不可靠,所以拒绝,因为无法重现所描述的效果。 - - 也超出了标题中问题的范围。
图 1 未选中按住键时重复按键
差分解决方案
- 有没有办法让按键重复不被禁用,而是在您按住按键较长时间后才开始? [Random832] - - 实际上,我想知道如果你对箭头键的方向进行多次快速更改,这是如何工作的。
硬件:华硕 Zenbook UX303UA
操作系统:Debian 8.5 64 位
Linux 内核:4.6
答案1
我不确定我到底想要什么,但可以设置应该重复的单个键(技术键码)。好像不能设置虽然个别费率和延迟
$ xset --help
<snip>
To turn auto-repeat off or on:
-r [keycode] r off
r [keycode] r on
r rate [delay [rate]]
要查找与某个键对应的键码,请使用例如。xev
:
$ xev -event keyboard
KeyPress event, serial 28, synthetic NO, window 0x5a00001,
root 0x292, subw 0x0, time 354948359, (85,132), root:(86,150),
state 0x10, ==>keycode 24<== (keysym 0x71, q), same_screen YES,
XLookupString gives 1 bytes: (71) "q"
XmbLookupString gives 1 bytes: (71) "q"
XFilterEvent returns: False
我尝试全局关闭按键重复,然后为某些按键启用它,但没有运气,所以似乎您必须为所有常规按键关闭它:(一些提示如下:
打印出所有键码映射:xmodmap -pk
.在我的系统上,我得到的范围是 8-255
关闭所有键码的重复:
$ seq 8 255 | xargs -n 1 xset -r
打开箭头键:(范围可能与您不同)
$ seq 111 166 | xargs -n 1 xset r
答案2
当所有按键的所有按键重复均已禁用时,您无法仅启用某些按键重复。我无法证实这是可能的说法。