AltGr 键不适用于 VirtualBox 中的 Ubuntu

AltGr 键不适用于 VirtualBox 中的 Ubuntu

我刚刚在 Windows 7 中安装了 VirtualBox(来自 Oracle),并使用最新的 Ubuntu 创建了一个虚拟机。

在 Firefox 中,我可以使用左侧的 Ctrl 键,而右侧的 Ctrl 键则没有任何效果。但是,我无法使用 AltGr 键(也称为右 Alt)来生成例如像 {} 这样的大括号(我通过 Ctrl V 粘贴了它)。

在终端窗口中,我可以将“输入法”切换为“Multipress”,然后我可以使用 AltGr 键入例如 {},这就是我为本次发布生成这些字符的方式。然而,对于“Multipress”,Ctrl 键似乎没有任何效果。因此,为了例如键入 Ctrl DI 必须右键单击并将“输入法”切换为“系统(IBus(智能输入总线))”。那么 AltGr 就不起作用了。

我尝试在系统设置键盘布局中指定撰写键。

这样,Ctrl 和 AltGr 都不起作用了。

以下是 xmodmap 的报告内容:

[~]
$ xmodmap -pke | $ xmodmap -pke | grep -i 控制
键码 37 = Control_L NoSymbol Control_L
键码 105 = Control_R NoSymbol Control_R
[~]
$ xmodmap -pke | $ xmodmap -pke | grep -i 替代
键码 64 = Alt_L Meta_L Alt_L Meta_L
键码 204 = NoSymbol Alt_L NoSymbol Alt_L
[~]
$_

我怎样才能解决这个问题?

附加信息:键盘是标准 PC 键盘,Logitech K120,采用挪威布局。

另外,我第一次尝试问这个问题在超级用户站点但2天后没有回复...

答案1

运行命令xev。在 xev 窗口中,按AltGr键。你会看到类似的东西

KeyPress event, serial 29, synthetic NO, window 0x6400001,
    root 0x105, subw 0x0, time 966635535, (243,-207), root:(1891,26),
    state 0x0, keycode 66 (keysym 0xff7e, Mode_switch), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

记下键码;因为关键不是做你想做的事,你会看到其他东西(可能Alt_R)而不是Mode_switch。您想要将此键码分配给Mode_switch,这是 X11 中 AltGr 的名称。将以下命令放入主目录中名为.Xmodmap(注意大写)的文件中:X

keycode 66 = Mode_switch

此外,您可能需要为 分配一个修饰符Mode_switch,但如果发生的只是键码差异,那么就已经存在了。看设置西班牙语 eñe 字母的键了解更多信息。

运行xmodmap ~/.Xmodmap以测试您的文件。在许多系统上,包括 Ubuntu 10.04,该文件会在默认的 Gnome 环境中自动加载。在其他发行版或环境中,您可能需要xmodmap ~/.Xmodmap在登录时明确指示要运行。

相关内容