如何在 Linux 上使用 Java 应用程序使用数字键盘箭头

问题描述 投票:0回答:4

数字键盘上的箭头键不适用于 Linux 上的 Java 应用程序。 奇怪的是,Home、End、PgUp、PgDn、Ins、Del 都可以工作。

这在使用 Intellij 编程时尤其烦人。

如何让箭头键发挥作用?

java linux intellij-idea numeric keypad
4个回答
8
投票

IntelliJ(和 CLion)提供配置键映射的功能。 在

File->Settings->Keymap->Editor actions
下,可以将两个击键(“正常”上/下/左/右和键盘击键)分配给相应的操作。 完成此操作后,一切都会变得很顺利。 不需要摆弄xkb什么的。


7
投票

键盘上的物理键使用 xkb 映射到键代码。 以下是我如何在 Linux 的 Debian 衍生版本上使用 Java 应用程序(如 Intellij)使用数字键:

  1. 切换到root用户
  2. cd /usr/share/X11/xkb/symbols
  3. cp 键盘 keypad.original(以防万一)
  4. 编辑键盘并将所有出现的 KP_UpKP_DownKP_LeftKP_Right 分别替换为 UpDownLeftRight
  5. 保存
  6. dpkg-重新配置xkb-数据
  7. 重启

现在数字键盘将发出常规、箭头、键代码,而不是 java 无法识别的数字键盘、箭头、键代码。


2
投票

另一种选择:

  1. 编辑/etc/default/keyboard(保存一份副本以防万一)
  2. 将 XKBOPTIONS 的值添加或更新为“numpad:microsoft”
  3. 保存文件
  4. 重启

0
投票
  • ~/.config/JetBrains/IntellijIdea2024.01/keymaps/
  • ~/.config/JetBrains/< product >< version>/keymaps/

创建文件 xml 或使用

文件->设置->键盘映射->编辑器

编辑任意按键操作,然后Idea在此文件夹中创建文件

<keymap version="1" name="GNOME copy" parent="Default for GNOME">
<action id="EditorDown">
<keyboard-shortcut first-keystroke="down"/>
<keyboard-shortcut first-keystroke="kp_down"/>
</action>
<action id="EditorRight">
<keyboard-shortcut first-keystroke="right"/>
<keyboard-shortcut first-keystroke="kp_right"/>
</action>
<action id="EditorLeft">
<keyboard-shortcut first-keystroke="left"/>
<keyboard-shortcut first-keystroke="kp_left"/>
</action>
<action id="EditorUp">
<keyboard-shortcut first-keystroke="up"/>
<keyboard-shortcut first-keystroke="kp_up"/>
</action>
<action id="Vcs.Log.GoToChild"/>
</keymap>
© www.soinside.com 2019 - 2024. All rights reserved.