Can*_*Bal 4 keyboard vmware unity
在 VMware 中启动虚拟机之前,所有修饰键都可以正常工作。即使我启动 VMware,但在我启动虚拟机之前,一切都运行良好。
但是,一旦我启动了虚拟机,我的左 Ctrl和右 Shift键就会停止工作。他们根本没有影响。
以下是一些可能会导致某些事情的观察结果:
sudo setxkbmap暂时将一切安排妥当。一旦 VMware 获得关注并且我输入了一些东西,问题就会回来。这是我第一次使用 Unity(我已经使用 Gnome 很长时间了),我怀疑问题与此有关。任何想法为什么会发生这种情况?
小智 5
域名注册地址:
在 Gnome Tweak Tool 中,将“Ctrl 键位置”设置为“Caps Lock 为 Ctrl”,将“Caps Lock 键行为”设置为“Caps Lock 已禁用”。
完整故事:
问题似乎是 Ubuntu 如何重新映射 CapsLock 键。当 Gnome Tweak Tool 的“Caps Lock key behavior”属性设置为“Make Caps an additional Ctrl”时,xmodmap 报告:
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Caps_Lock (0x42), 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)
Run Code Online (Sandbox Code Playgroud)
在出现问题是双方锁定并控制列表“CAPS_LOCK(的0x42)”。一切正常,直到您将焦点设置为 VMWare VM(我使用 VMWare Player 进行了测试)。聚焦VMWare的窗口后,xmodmap会报告一个空映射:
xmodmap: up to 0 keys per modifier, (keycodes in parentheses):
shift
lock
control
mod1
mod2
mod3
mod4
mod5
Run Code Online (Sandbox Code Playgroud)
运行会setxkbmap重置键盘映射并暂时解决问题。在使用 时xmodmap,我发现从锁中删除 Caps_Lock (0x42) 会阻止 VMWare 刷新键盘映射。但是,Ubuntu 14.04 会忽略.Xmodmap文件,因此没有简单的方法可以使用xmodmap.
我们可以通过更改 Gnome Tweak Tool 中的两个设置来修复这种情况的根本原因,如本文顶部所述。这样做将正确配置键盘映射,以便 Caps_Lock (0x42) 不会出现在两个位置:
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock
control Control_L (0x25), Control_L (0x42), 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)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1371 次 |
| 最近记录: |