为什么我的 F12 键有时会变成波浪号键?

为什么我的 F12 键有时会变成波浪号键?

我使用的是 Ubuntu、Yakuake 和 VMWare Server 2。我保留了 Yakuake 的默认 F12 热键,几个月来它一直运行良好。我最近开始使用 VMWare Server 2 运行几个 Ubuntu VM,有时,在启动其中一个 VM 并使用它后,F12 键会停止工作并下拉 Yakuake 控制台。

目前,F12 键在我的浏览器中不起作用。如果我在 Emacs 中,我会收到一条通知:“<f12> 未定义”,而在终端中它会输入波浪符号 (~)。如果不重启机器,我无法恢复 Yakuake 功能。

答案1

VMWare 因在 Linux 中存在键码映射问题而臭名昭著。默认设置对于许多普通应用程序来说都运行良好,但当您使用非字符键时,事情就会变得棘手。

VMWare 已发布详尽解释原因这些问题确实存在。该链接适用于 VMWare Workstation,但几年前我曾成功使用它解决了我自己的 VMWare Server 问题。

可能快速的解决方案:

如果您的键盘在本地 X 服务器上正常工作,而您只希望在远程 X 服务器(也是在 PC 上运行的 XFree86 服务器)上获得相同的行为,只需关闭虚拟机并关闭 VMware Workstation 窗口,然后添加行

xkeymap.usekeycodeMapIfXFree86 = true

到虚拟机配置文件或~/.vmware/config。在运行虚拟机的主机上进行此更改,而不是在具有远程 X 服务器的机器上进行。

如果您正在使用基于 XFree86 的服务器,而 VMware Workstation 无法将其识别为 XFree86 服务器,请改用以下命令:

xkeymap.usekeycodeMap = true 

如果这些更改不起作用或导致更多问题,您还可以尝试:

xkeymap.nokeycodeMap = true

如果这些都不起作用,您需要转到链接并详细了解要做什么。下面一行可能有效,但请最后尝试这一行,因为其他解决方案更通用,可能会解决您甚至没有意识到的问题。

xkeymap.keycode.88 = 0x58

相关内容