默认情况下,我的 Macbook Air 上的任何布局都不允许我打印反引号 (`) 和波浪号 (~)。相反,我得到的是反斜杠、竖线或其他任何符号,具体取决于布局。
我使用以下命令更改了要用于打印波浪号的键的行为:
xev
<press tilde button>
keycode <keycode from xev output> = grave asciitilde >~/.Xmodmap
xmodmap ~/.xmodmaprc
(说明基于这些https://stackoverflow.com/questions/17757232/switch-tab-and-backtick-keys-ubuntu-linux)
但不幸的是,切换布局后,我又得到了默认行为。
如何使这些改变永久生效?
答案1
对于 Timofey 来说有效的解决方案对于我来说却不起作用,原因不明。不过,一个有效的解决方案是将
echo 0 > /sys/module/hid_apple/parameters/iso_layout
进入/etc/rc.local
。
这个建议来自这里:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1245081
通过
https://stdio.sangwhan.com/backtick-tilde-problem-macbook-air/
答案2
好的,我解决了这个问题。
首先,xmodmaprc
在 Ubuntu 14.04 中不起作用。解决方案是编辑xkb
(X KeyBoard 扩展)配置文件。
找到该文件/usr/share/X11/xkb/symbols/pc
,备份,然后打开并注释掉以下行:
key <LSGT> { [ less, greater, bar, brokenbar ] };
在下一行添加以下内容:
key <LSGT> { [ grave, asciitilde, grave, asciitilde ] };
如果您需要更改其他语言环境的配置,请检查文件夹/usr/share/X11/xkb/symbols/
并找到与您要更改的语言环境相对应的文件。
要应用更改,您必须删除所有 xkb 缓存文件:
rm -rf /var/lib/xkb/*
答案3
另一种以非特权用户身份运行的解决方案是:
setxkbmap -option apple:badmap
作为特权用户,也可以使用以下命令修复键盘设备的 X 配置中的问题:
# /etc/X11/xorg.conf.d/90-custom-kbd.conf
Section "InputClass"
Identifier "keyboard defaults"
MatchIsKeyboard "on"
Option "XKbOptions" "apple:badmap"
EndSection
答案4
在装有 Mac 键盘的 Ubuntu 16.04 上,按右 Alt + ] 键就可以得到波浪符号。