我已经使用 xmodmap 重新映射 Ubuntu 14.04 中的蓝牙键盘的按键:
xmodmap ~/.Xmodmap
remove mod1 = Alt_L
remove mod1 = Alt_R
keycode 180 = Alt_L
keycode 225 = Alt_R
add mod1 = Alt_L
add mod1 = Alt_R
但下次蓝牙键盘连接时映射会重置。
如何使映射永久化或在连接设备上重新启用它们?
更新:
我发现终端并返回会话也会破坏 xmodmap 设置,此行可防止在 tty 情况下中断:
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
但它不是一个选项,因为它会破坏切换语言布局,而图标仍能正确显示语言。重新连接键盘也会重置 xmodmap 设置。
答案1
我通过修改键盘布局解决了这个问题。
首先,我检查了当前布局中使用的符号
$setxkbmap -print -v 10
然后修改 /usr/share/X11/xkb/symbols/inet 行
key <I180> {[XF86HomePage]};
key <I225> {[XF86Search]};
引用自 /usr/share/X11/xkb/symbols/altwin
key <I180> {[Alt_L, Meta_L]}; // was XF86HomePage
key <I225> {[Alt_R,Meta_R]}; // was XF86Search
modifier_map Mod1 {<I180>, <I225>}; // removes sticky fake alt problem
并使用命令
$sudo dpkg-reconfigure xkb-data
它从 /var/lib/xkb/ 中删除了编译的键盘布局。与
$sudo rm /var/lib/xkb/*.xkm
并导致它们在下次切换时重新编译。
PS:我发现 slm 的答案中的链接很有帮助 https://unix.stackexchange.com/questions/101410/where-do-find-information-about-xkb-symbols-ie-dead-acute-kp-1-delete-down