我从 2010 年 8 月开始使用 Ubuntu。现在,我使用的是 Ubuntu 14.04 和 gnome-shell 3.12.1。我试图找到切换语言的快捷键,但它不起作用,而且我的重音符键 (`) 也被禁用了。现在,只要我在键盘上按下这个键,它就会像Esc键一样工作。有人能告诉我如何配置它吗?有人能告诉我如何定义键盘快捷键来切换输入语言吗?
当我按下命令“xev -event keyboard”时,它会打开一个小窗口,如果我按下重音键(`),则输出如下:
KeyPress event, serial 28, synthetic NO, window 0x4000001,
root 0x2bb, subw 0x0, time 2422193, (366,566), root:(368,710),
state 0x0, keycode 49 (keysym 0xff1b, Escape), same_screen YES,
XKeysymToKeycode returns keycode: 9
XLookupString gives 1 bytes: (1b) ""
XmbLookupString gives 1 bytes: (1b) ""
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x4000001,
root 0x2bb, subw 0x0, time 2422339, (366,566), root:(368,710),
state 0x0, keycode 49 (keysym 0xff1b, Escape), same_screen YES,
XKeysymToKeycode returns keycode: 9
XLookupString gives 1 bytes: (1b) ""
XFilterEvent returns: False
答案1
您需要将键重新映射到Grave
。
这取自这个答案。
xev
将输出有关所按下的键的一些信息。第三行很重要。它应该类似于:state 0x10, keycode 49 (keysym 0xff55, Escape), same_screen YES,
在这个例子中
Escape
,是当前分配给该键的行为的名称,数字keycode是识别该键的内部id。现在,当您想要更改按键时使用
xmodmap
。xmodmap -e "keycode 49 = grave"
这会将键盘上键码为 49 的键更改为 键
grave
。这很简单。不幸的是,这会丢失~
字符。
要允许该~
键,您必须将其分配给修饰符。修饰符依次为:
(no modifier key used is implied as first)
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
因此,我们希望`
在没有修饰符(项目 1)时和~
有修饰符时的情况相同。命令为:
xmodmap -e "keycode 49 = grave asciitilde"
asciitilde
是~
关键。
您还可以将其设置为随着大写字母等的变化而变化,因此,如果我想要|
在打开大写字母时使用它,您可以使用:
xmodmap -e "keycode 49 = grave asciitilde bar"
bar
是 `| 键。
注意:这些更改仅适用于活动 X 会话,重启后将丢失。如果要永久保存更改,必须在执行上述命令后运行以下命令:
xmodmap -pke >~/.Xmodmap
.Xmodmap
(它会在你的主目录中创建一个名为的文件( ~
))
然后你必须创建一个名为.xinitrc
在您放置命令的主目录中xmodmap .Xmodmap
。
来源:Ubuntu 论坛
答案2
我发现我可以很轻松地使用组合键来输入正确的重音。
按下重音键 à 的方法是(就我而言)先按下右 Windows 键RtWin,然后连续a按下`¬| 键(键盘左上角 键旁边的键1! ),但不一定同时按下,只需一个接一个地按下。
其他重音符号也同样合乎逻辑。最不明显的是 ç,它是RtWin键,然后c是逗号,。
我希望这会有所帮助并且我已经正确理解了您的要求。