我有一个 Apple 铝制键盘。键的左边1是小/大 ( < >) 键,而不是重音符/波浪符 ( ` ~)。
xmodmap
对我来说不起作用:布局切换(完成setxkbmap
)重置了我的 xmodmap 更改。.Xmodmap
文件也没有帮助。
我如何重新映射波浪号键?
答案1
xmodmap 方式
首先,检查这出去。
这是我的版本.xsession
:
#! /usr/bin/env sh
GTK_IM_MODULE=xim
QT_IM_MODULE=xim
xmodmap ~/.Xmodmap-Apple
以及相应的~/.Xmodmap-Apple
(俄语版本):
keycode 94 = grave asciitilde Cyrillic_io Cyrillic_IO
keycode 191 = Print Sys_Req Print Sys_Req Print Sys_Req
keycode 192 = Scroll_Lock NoSymbol Scroll_Lock NoSymbol Scroll_Lock
keycode 193 = Pause Break Pause Break Pause Break
keycode 49 = less greater less greater
keycode 108 = Multi_key Alt_L Multi_key Alt_L
setxkbmap 方式
在 Linux 中,setxkbmap
用于切换键盘布局。可惜的是,setxkbmap
&xmodmap
不能一起工作:它们会重置彼此的更改 :( 您必须选择以下之一:
- 不要切换布局
- 每次布局切换后调用
xmodmap
(或制作替换脚本setxkbmap
) - 修改
xkb
键盘的按键映射。
我们将使用后者。首先,检查您使用的布局:
$ setxkbmap -print
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete+caps(internal)" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+ru:2+inet(evdev)+altwin(meta_win)+group(alt_shift_toggle)+compose(ralt)+eurosign(e)+terminate(ctrl_alt_bksp)+macintosh_vndr/apple(alupckeys)" };
xkb_geometry { include "pc(pc104)" };
};
这是您的符号图:xkb_symbols ... macintosh_vndr/apple(alupckeys)
在 Ubuntu 中,我们在这里有一个苹果键盘的映射:'/usr/share/X11/xkb/符号/macintosh_vndr/苹果'。首先,备份此文件。此文件有几个部分,每个部分开头如下:
xkb_symbols "extended" {
xkb_symbols "laptop" {
xkb_symbols "laptop_bad_switch" {
xkb_symbols "alukbd" {
xkb_symbols "alupckeys" {
后者映射,,"alupckeys"
将F13-替换F15为PrintScreen,,ScrollLock。Pause如果您缺少这些键,请使用它:)
}
从上面的命令输出中选择您获得的部分,并在该部分的末尾附加以下内容:
key <LSGT> { [ grave, asciitilde, grave, asciitilde ] };
};
现在,重新启动 X。耶,享受将波浪号键放在正确位置的乐趣吧:)
此命令还可以帮助:
$ setxkbmap -option "apple:alupckeys" -print | xkbcomp - $DISPLAY
答案2
在官方 Ubuntu 文档中有一个专门讨论该主题的页面:苹果键盘
这里根据您的 Ubuntu 版本列出了几个修复方法。