在升级到 Ubuntu 13.10 之前,我使用了两种键盘布局 - GR 和 DE。我能够在一个 .xmodmap 中设置两者,这意味着我能够配置 GR 和 DE。现在,当我创建 .xmodmap 时,它仅包含我当前使用的布局,但我希望两种布局都存在。我该如何实现这一点?
答案1
我还没有在 14.04 上解决这个问题,但我知道这个 bug 是 keyboard-indicator。更改布局后,xmodmap 设置会被重置。我编写了一个脚本,用于在更改布局后重置设置。我希望它对某些 realties 有用。
#!/usr/bin/env python
import os, dbus, gobject
from dbus.mainloop.glib import DBusGMainLoop
def event_handler(args):
if args == "com.canonical.indicator.keyboard":
os.system("xmodmap ~/.Xmodmap")
dbus.mainloop.glib.DBusGMainLoop(set_as_default = True)
bus = dbus.SessionBus()
bus.add_signal_receiver(event_handler,
dbus_interface="com.canonical.Unity.Panel.Service",
signal_name="ReSync")
loop = gobject.MainLoop()
loop.run()
答案2
是的,这绝对是 13.10 中的一个错误,我找到了针对此问题的解决方案“至少对我来说”,首先更新您的系统,安装“gnome-tweak-tool”:
sudo apt-get install gnome-tweak-tool
转到“打字”选项,将“更改布局的键”更改为“alt + shift”,然后单击“Alt / Win键行为”并选择“控制映射到Win键(和通常的ctrl键)”。
我希望这能对别人有帮助
答案3
我确认了这一点,也确认了 xkb 工具中也会出现这种情况(因此没有解决方法)。xmodmap / xkb 修改在布局更改之间被重置(我使用 FI-US)。
这里有几个与问题相关的错误,也许最接近的错误是这个:
https://bugs.launchpad.net/ubuntu/+source/indicator-keyboard/+bug/1215826
(我在评论#34中没有找到解决方法配置选项)
我删除了新的键盘指示器,但它只解决了当聚焦其他窗口时不会重置 xmodmap 的问题。
我目前的知识:
使用键盘修改或布局,但您不能同时使用两者。糟糕的是,这可能不会很快得到修复(启动错误报告仍然开放)。
有点回归相关:
我也在 Unity 中发现了同一种错误(我也见过同样的问题,但是很少见),这里是相关的 launchBug:
https://bugs.launchpad.net/ubuntu/+source/unity/+bug/1084451
编辑:
来自 repos 的 gnome-tweak-tool 崩溃并出现段错误(launchBug 中已知错误,但我的名誉不允许我在这里链接它)。
答案4
使用 13.10 确认这一点!当我手动运行 xmodmap ~/.Xmodmap 时,它仅在将布局更改为另一个布局时才有效。
相同的设置在 13.04 中完美运行..