版本:Xubuntu 安装。
% cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04 LTS"
% env | grep -E 'XMOD|_IM'
GTK_IM_MODULE=ibus
QT_IM_MODULE=ibus
XMODIFIERS=@im=ibus
im-config
印刷
Current configuration for the input method:
* Active configuration: ibus (normally missing)
* Normal automatic choice: ibus (normally ibus or fcitx or uim)
* Override rule: zh_CN,fcitx:zh_TW,fcitx:zh_HK,fcitx:zh_SG,fcitx:ja_JP,fcitx:ko_KR,fcitx:vi_VN,fcitx
* Current override choice: (en_US)
* Current automatic choice: ibus
* Number of valid choices: 3 (normally 1)
The override rule is defined in /etc/default/im-config.
The configuration set by im-config is activated by re-starting X.
Explicit selection is not required to enable the automatic configuration if the active one is default/auto/cjkv/missing.
Available input methods: ibus fcitx xim
Unless you really need them all, please make sure to install only one input method tool.
理由: 我对 Xubuntu 上的键盘设置有相当多的经验,但我遇到的问题越来越让我恼火。我不理解 fcitx 中的“活动输入法”概念,并且 fcitx 在输入时会随机切换布局。缺乏文档让我停止使用它。UIM 会吞掉 Sublime Text 中的字符。当我移动光标时,它会在几秒钟后插入这些字符。我尝试切换到 IBus(使用 mocz 来输入日语)。
我的用例: 我在会话中使用 en-us(英语)、“Neo 2”(德语)和 mocz(日语)键盘布局。我需要一个简单的开关来在这些键盘之间切换。我对任何启用此功能的设置都很满意。
如何重现:
- 我启动。
- 我登录(键盘是美国的,可以)
- 我确认“IBus”是登录期间的“键盘输入法系统”(在“语言支持”中可见)。因此,IBus 在 X11 会话登录期间正确启动。
- 我打开鼠标垫并打字(键盘是美国的,可以)
- 我触发
<Super>+Space
切换到 Neo2。见下图。我输入(键盘是美国的,不是好的) - 我触发
<Super>+Space
切换到 mocz。我输入(键盘是美国的,不是好的) % setxkbmap -query
给出:rules: evdev model: pc105 layout: us
并确认问题(键盘仍然是美国键盘,不是好的)
gsettings get org.gnome.desktop.input-sources sources
给出@a(ss) []
(不确定这应该告诉我什么,但其他线程提到了它)。- 我点击系统托盘中的 IBus 菜单并选择键盘“德语 - 德语(Neo 2)”。
- 我打字(键盘是 Neo 2,好的)
% setxkbmap -query
给出:rules: evdev model: pc105 layout: de variant: neo
并确认正确的键盘设置。
我点击系统托盘中的 IBus 菜单并选择键盘“日语 - Mocz”。此外,我在 IBus 菜单中选择了“输入模式”“平假名”。
- 我打字(键盘仍然是 Neo 2,不是好的)
我的问题:我发现几个问题,但要将其归结为一个问题:我认为xfce4-xkb-plugin
(登录后仅限美国)IBus
在 X11 会话登录后会干扰(美国 + Neo2 工作)。我该如何禁用这种干扰?(xfce4-xkb-plugin
仅注册了美国键盘,并且“布局”实际上设置为“使用系统默认值”)
答案1
评论中的讨论澄清了未安装软件包ibus-gtk
和ibus-gtk3
。它们对于使 IBus 与 Gtk 应用程序正常工作非常重要。
在 Ubuntu 中,IBus 是默认安装的,这些包始终存在(因为它们是包推荐的ubuntu-desktop
):
ibus
ibus-gtk
ibus-gtk3
ibus-table
简而言之:至少安装ibus-gtk
和ibus-gtk3
。