我在笔记本电脑上使用外接键盘,主要是关闭箭头键的数字锁定,因为我习惯用左手。自从从 Ubuntu 14.04 lts 更新到 16.04 lts 后,行为就有所不同了。
小键盘的 home 和 end 键现在工作得更好了,因为它们现在提供与普通 home 和 end 键相同的控制信号。(ESC-[h 和 ESC-[f,而不是 ESC-[1~ 和 ESC-[4~)但是当我在带有 vim 或 emacs 的终端中使用它时,kp_begin 开始让我抓狂。
kp_begin 是 5 键在关闭 numlock 时所具有的功能。在 emacs GUI 中,它会移动到文档的最开头(类似于 M-<)。它在 emacs 的终端窗口中从未起作用,这很好。但现在,即使 numlock 已关闭,它也会将数字 5 打印到 emacs 终端的屏幕上。意外地按下它而不是箭头键会很烦人。
使用 vim 时,在终端中,kp_begin 的作用与 Esc 键相同。现在,它使 vim 进入插入模式,然后在文档中打印大写字母 E 和换行符。这同样令人恼火,因为我有时会按它而不是箭头键。
一定有某种方法可以恢复其原有的行为。
答案1
我找到了一个解决方案。我可以用代码改变按键的行为:[CODE] xmodmap -e "keycode NN = Begin KP_5 Begin KP_5" [/CODE] 其中 NN 是相关按键的键码。显然,KP_Begin 是导致问题的原因,因此将其更改为 Begin 可以解决问题。