最近我从 12.04 升级到了 14.04 LTS,但发现 iBus 变得很疯狂。
在 12.04 中,列表中没有英文输入法,因为当启动应用程序时,iBus 会处于“输入法关闭”状态;然后我可以通过按 Ctl+Sp 打开 IM,然后输入中文或其他内容。
但在 14.04 中,英语(美国)也是输入法之一。除此之外,我还启用了中文(拼音)和日语(mozc)。结果,应用程序启动时会以中文作为其默认输入法。我尝试删除并重新添加输入法,但输入法列表固定在下图中的顺序,拼音似乎是默认的
我该如何配置顺序并设为英语默认?非常感谢!
编辑
事实上,每个新启动的应用程序的初始输入法似乎都是随机的,Mozc 也可能是默认输入法。
我还找到了一个解决方案,虽然它只是在当前登录会话中设置默认 IM 的一种方法。它是这样的
- 转到没有任何应用程序窗口的工作区(或者只是不关注任何应用程序)
- 按下热键将 IM 更改为英语(或您喜欢的任何默认语言)
- 那么新启动的应用程序或新的 xterm 选项卡中的初始 IM 将是英文
的输出gsettings list-recursively org.freedesktop.ibus
是
org.freedesktop.ibus.general dconf-preserve-name-prefixes ['/desktop/ibus/engine/pinyin', '/desktop/ibus/engine/bopomofo', '/desktop/ibus/engine/hangul']
org.freedesktop.ibus.general preload-engines-inited true
org.freedesktop.ibus.general use-system-keyboard-layout true
org.freedesktop.ibus.general embed-preedit-text true
org.freedesktop.ibus.general enable-by-default false
org.freedesktop.ibus.general use-global-engine false
org.freedesktop.ibus.general preload-engine-mode 0
org.freedesktop.ibus.general use-xmodmap true
org.freedesktop.ibus.general switcher-delay-time 400
org.freedesktop.ibus.general version '1.5.5'
org.freedesktop.ibus.general load-xkb-layouts ['us', 'us(chr)', 'us(dvorak)', 'ad', 'al', 'am', 'ara', 'az', 'ba', 'bd', 'be', 'bg', 'br', 'bt', 'by', 'de', 'dk', 'ca', 'ch', 'cn(tib)', 'cz', 'ee', 'epo', 'es', 'et', 'fi', 'fo', 'fr', 'gb', 'ge', 'ge(dsb)', 'ge(ru)', 'ge(os)', 'gh', 'gh(akan)', 'gh(ewe)', 'gh(fula)', 'gh(ga)', 'gh(hausa)', 'gn', 'gr', 'hu', 'hr', 'ie', 'ie(CloGaelach)', 'il', 'in', 'in(tel)', 'in(bolnagri)', 'iq', 'iq(ku)', 'ir', 'ir(ku)', 'is', 'it', 'jp', 'kg', 'kh', 'kz', 'la', 'latam', 'lk', 'lk(tam_unicode)', 'lt', 'lv', 'ma', 'ma(tifinagh)', 'mal', 'mao', 'me', 'mk', 'mm', 'mt', 'mv', 'ng', 'ng(hausa)', 'ng', 'ng(igbo)', 'ng(yoruba)', 'nl', 'no', 'no(smi)', 'np', 'pk', 'pl', 'pl(csb)', 'pt', 'ro', 'rs', 'ru', 'ru(cv)', 'ru(kom)', 'ru(sah)', 'ru(tt)', 'ru(xal)', 'se', 'si', 'sk', 'sy', 'sy(ku)', 'th', 'tj', 'tr', 'ua', 'uz', 'vn']
org.freedesktop.ibus.general engines-order ['xkb:us::eng', 'pinyin', 'mozc-jp']
org.freedesktop.ibus.general preload-engines ['pinyin', 'xkb:us::eng', 'mozc-jp']
org.freedesktop.ibus.general xkb-latin-layouts ['ara', 'bg', 'cz', 'dev', 'gr', 'gur', 'in', 'jp(kana)', 'mal', 'mkd', 'ru', 'ua']
org.freedesktop.ibus.general.xkblayoutconfig east-asia ['dz', 'km', 'lo', 'my', 'th', 'vi']
org.freedesktop.ibus.general.xkblayoutconfig center-asia ['bo', 'zh']
org.freedesktop.ibus.general.xkblayoutconfig north-europe ['da', 'fi', 'fo', 'is', 'no', 'se', 'sv']
org.freedesktop.ibus.general.xkblayoutconfig west-europe ['ca', 'cs', 'de', 'en', 'es', 'fr', 'gd', 'hu', 'it', 'nl', 'pt', 'sk', 'sl']
org.freedesktop.ibus.general.xkblayoutconfig group-list ['west_europe', 'south_europe', 'east_europe', 'north_europe', 'west_asia', 'center_asia', 'east_asia', 'india', 'australia']
org.freedesktop.ibus.general.xkblayoutconfig south-europe ['bg', 'bs', 'el', 'mk', 'mt', 'ro', 'sq', 'sr']
org.freedesktop.ibus.general.xkblayoutconfig west-asia ['am', 'ar', 'az', 'ber', 'fa', 'ha', 'he', 'hy', 'ig', 'ku', 'tg', 'tr', 'yo']
org.freedesktop.ibus.general.xkblayoutconfig india ['bn', 'dv', 'gu', 'hi', 'kn', 'ml', 'ne', 'or', 'pa', 'si', 'ta', 'te', 'ur']
org.freedesktop.ibus.general.xkblayoutconfig east-europe ['be', 'csb', 'cv', 'et', 'ka', 'kk', 'ky', 'lt', 'lv', 'pl', 'ru', 'tt', 'uk', 'uz']
org.freedesktop.ibus.general.xkblayoutconfig australia ['mi']
org.freedesktop.ibus.general.hotkey next-engine ['Alt+Shift_L']
org.freedesktop.ibus.general.hotkey disable-unconditional @as []
org.freedesktop.ibus.general.hotkey enable-unconditional @as []
org.freedesktop.ibus.general.hotkey triggers-no-modifiers @as []
org.freedesktop.ibus.general.hotkey trigger ['Control+space', 'Zenkaku_Hankaku', 'Alt+Kanji', 'Alt+grave', 'Hangul', 'Alt+Release+Alt_R']
org.freedesktop.ibus.general.hotkey previous-engine @as []
org.freedesktop.ibus.general.hotkey prev-engine @as []
org.freedesktop.ibus.general.hotkey next-engine-in-menu ['Alt+Shift_L']
org.freedesktop.ibus.general.hotkey triggers ['<Alt><Shift>', '<Control>space']
org.freedesktop.ibus.panel x -1
org.freedesktop.ibus.panel y -1
org.freedesktop.ibus.panel lookup-table-orientation 1
org.freedesktop.ibus.panel show 1
org.freedesktop.ibus.panel auto-hide-timeout 10000
org.freedesktop.ibus.panel show-im-name false
org.freedesktop.ibus.panel custom-font 'Sans 10'
org.freedesktop.ibus.panel show-icon-on-systray true
org.freedesktop.ibus.panel use-custom-font false
答案1
当您想切换到美国键盘时,只需使用 setxkbmap。例如:
setxkbmap us
由于 Ibus 语言问题,我创建了一个桌面快捷方式图标来帮助我切换键盘布局。只需在 $HOME/Desktop 中编辑名为 layout.desktop 的文件并使其可执行即可。以下是恢复美国键盘布局的示例:
[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=Keymap US
Comment=
Exec=setxkbmap us
StartupNotify=false
Terminal=false
Hidden=false
答案2
尝试在键盘设置中设置默认语言。我找到了这个解决方案这里。