答案1
我建议你尝试一下输入重映射器软件。它们提供了图形用户界面用于映射您的按键,它可以识别几乎所有的按钮(甚至是我的鼠标中没有注册任何点击的额外按钮xbindkeys
)并显示在此应用程序中。
安装
命令行:
input-remapper
在 Ubuntu 存储库中可用,因此您可以通过打开终端并运行来安装:
sudo apt install input-remapper
但是,此存储库中的版本比当前版本略有落后。例如,适用于 Ubuntu 22.04(最新 LTS)的版本是 1.4.0,而最新版本(撰写本文时)是 2.0.1。要安装最新版本,根据项目的 README,运行这些命令(针对最新版本进行适当调整):
sudo apt install git python3-setuptools gettext
git clone https://github.com/sezanzeb/input-remapper.git
cd input-remapper && ./scripts/build.sh
sudo apt install -f ./dist/input-remapper-2.0.1.deb
注意:Input-remapper ≥ 2.0 至少需要 Ubuntu 22.04。
图形用户界面(GUI):
您可以在软件中心(或者应用中心) 在 Ubuntu 上。
界面
在 GUI 中,软件将列出连接到您的 PC 的所有设备,如下所示:
在上图中,你必须添加:
- 改名:为映射配置文件添加名称,然后按右侧的向下箭头按钮
- 添加:使用该按钮为您的配置文件创建新的键盘映射。如果您之前已经设置了映射,则可能需要停止注入。
- 记录:按下此按钮并在键盘上录制您的麦克风键。
- 输出:您现在可以在窗口右侧的输出部分映射新键。您可以参考项目的用法部分包含几个关键输入。
- 申请:单击此按钮并打开自动加载,以便在软件启动后激活配置文件。
另外,不要忘记将此软件添加到启动应用程序以及启用自动加载选项,这样一旦您登录系统它就会自动映射密钥。
答案2
您可以使用密钥.它是一个按键重新映射工具。
要安装它,请逐个运行以下命令。
sudo apt install build-essential
git clone https://github.com/rvaiya/keyd
cd keyd
make && sudo make install
sudo systemctl enable keyd && sudo systemctl start keyd
首先,运行sudo keyd monitor
并按下您要重命名的键以了解其名称。我将称之为name_of_the_key_you_found
/etc/keyd/default.conf
然后,创建包含以下内容的文件。
[ids]
0001:0001
[main]
name_of_the_key_you_found = backspace
最后,运行命令sudo keyd reload
以使更改生效。
答案3
在 Wayland 上,xmodmap
似乎不再有效,但是星火是......下面是我刚刚在我的系统上所做的:
首先,我搜索了以下文件/usr/share/X11/xkb/
(这就是你的键盘数据定义的地方)作为我的键盘麦克风静音键的名称,即XF86AudioMicMute
(这些多媒体键有名称,请参阅下面的其他链接答案)像这样:
$ grep -r -i 'XF86AudioMicMute' /usr/share/X11/xkb/
/usr/share/X11/xkb/symbols/inet: key <FK20> { [ XF86AudioMicMute ] };
/usr/share/X11/xkb/symbols/inet: key <I256> { [ XF86AudioMicMute ] }; // KEY_MICMUTE
...显示文件中的两行/usr/share/X11/xkb/symbols/inet
,然后我像这样编辑该文件:
sudo gedit /usr/share/X11/xkb/symbols/inet
...然后,注释掉上面的两行并将每一行复制在其下面,将其更改为如下所示:
# key <FK20> { [ XF86AudioMicMute ] };
key <FK20> { [ BackSpace ] }; // KEY_MICMUTE_REMAPED
...
# key <I256> { [ XF86AudioMicMute ] }; // KEY_MICMUTE
key <I256> { [ BackSpace ] }; // KEY_MICMUTE_REMAPED
... 其余行保持不变...然后,保存文件并退出用户当前的桌面会话,然后重新登录...瞧,我的麦克风静音键现在重新映射为 BackSpace 键。
如果您想了解有关多媒体键的更多信息,请参阅我的其他 (老的)在这里回答。
还值得注意的是,你可以进一步限制感兴趣的文件,/usr/share/X11/xkb
以修改当前活动键盘的当前活动布局中的任何键setxkbmap
用法如下:
setxkbmap -print -verbose 10
...输出如下:
Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules: evdev
model: pc105
layout: us
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+us+inet(evdev)
geometry: pc(pc105)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};
...include
每个部分旁边都有例如xkb_symbols
指的是与该部分相关的文件名 pc
,例如us
和inet
。