我正在尝试在 Kubuntu 20.04 上设置日语输入法(fcitx-mozc),这项任务可能很简单,但是经过几个小时的练习,按照了几十个教程之后,似乎没有任何效果:
- 如果我启动“Fcitx 配置”,我会出现一个对话框,提示“您当前正在运行 KDE,但找不到用于 fcitx 的 KCModule,此 KCModule 的软件包名称通常是 kcm-fcitx 或 kde-config-fcitx。” kde-config-fcitx 已安装。并且 kcm-fcitx 不在 repo 中。
- 根据教程这,系统设置->区域->输入法下应该有一个配置面板。但不存在这样的面板。
- 其他教程建议安装 fcitx-config-gtk3(不在 repo 中)和/或 fcitx-configtool(不在 repo 中)。
- fcitx 已在 im-config 中选择。
我不知所措。在 Mint 上安装花了 2 秒钟,而且 100% 都是通过 UI 完成的。这是我一两天前刚刚安装的全新 Kubuntu,所以我所做的其他更改不太可能影响到这一点。我是不是漏掉了一些简单的东西?在新发布的 Kubuntu 20.04 上还不能输入日语吗?
编辑:这是 fcitx-diagnose 的输出:
系统信息:
uname -a
:Linux Latitude-5490-Kubuntu 5.4.42-050442-generic #202005200734 SMP Wed May 20 07:36:21 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
lsb_release -a
:No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04 LTS Release: 20.04 Codename: focal
lsb_release -d
:Description: Ubuntu 20.04 LTS
/etc/lsb-release
:DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20.04 DISTRIB_CODENAME=focal DISTRIB_DESCRIPTION="Ubuntu 20.04 LTS"
/etc/os-release
:NAME="Ubuntu" VERSION="20.04 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04 LTS" VERSION_ID="20.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=focal UBUNTU_CODENAME=focal
桌面环境:
桌面环境是
kde
。Bash 版本:
BASH_VERSION='5.0.16(1)-release'
环境:
展示:
DISPLAY=':0'
键盘布局:
setxkbmap
:xkb_keymap { xkb_keycodes { include "evdev+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_symbols { include "pc+us+inet(evdev)" }; xkb_geometry { include "pc(pc105)" }; };
xprop
:_XKB_RULES_NAMES(STRING) = "evdev", "pc105", "us", "", ""
区域设置:
所有区域设置:
C C.UTF-8 POSIX
当前区域设置:
LANG=en_US.UTF-8 LANGUAGE= LC_CTYPE="C.UTF-8" LC_NUMERIC="C.UTF-8" LC_TIME="C.UTF-8" LC_COLLATE="C.UTF-8" LC_MONETARY="C.UTF-8" LC_MESSAGES="C.UTF-8" LC_PAPER="C.UTF-8" LC_NAME="C.UTF-8" LC_ADDRESS="C.UTF-8" LC_TELEPHONE="C.UTF-8" LC_MEASUREMENT="C.UTF-8" LC_IDENTIFICATION="C.UTF-8" LC_ALL=C.UTF-8
目录:
家:
/home/metal450
${XDG_CONFIG_HOME}
:XDG_CONFIG_HOME
未设置环境变量。的现值为
XDG_CONFIG_HOME
(~/.config
)/home/metal450/.config
。Fcitx 设置目录:
当前 fcitx 设置目录是
~/.config/fcitx
(/home/metal450/.config/fcitx
)。
当前用户:
该脚本以 metal450 (1000) 的形式运行。
Fcitx 状态:
可执行文件:
在 找到了 fcitx
/usr/bin/fcitx
。版本:
Fcitx 版本:
4.2.9.7
过程:
找到 1 个 fcitx 进程:
2530 fcitx <defunct>
fcitx-remote
:无法正确连接到 fcitx。
DBus接口:
用于
dbus-send
检查 dbus。找不到 DBus 名称
org.fcitx.Fcitx
所有者。找不到 DBus 名称
org.fcitx.Fcitx
所有者的 pid。
Fcitx 配置界面:
配置工具包装器:
在 找到了 fcitx-configtool
/usr/bin/fcitx-configtool
。为 gtk2 配置 GUI:
未找到 gtk2 的配置 GUI。
gtk3 的配置 GUI:
未找到 gtk3 的配置 GUI。
为 kde 配置 GUI:
kcmshell4
未找到。找不到 GUI 配置工具,请安装
kcm-fcitx
、fcitx-config-gtk2
或之一fcitx-config-gtk3
。
前端设置:
Xim:
${XMODIFIERS}
:环境变量 XMODIFIERS 已正确设置为“@im=fcitx”。环境变量中的 Xim 服务器名称是 fcitx。
根窗口上的 XIM_SERVERS:
在根窗口上找不到 xim_server。
Qt:
qt4-
${QT4_IM_MODULE}
:环境变量 QT4_IM_MODULE 已正确设置为“fcitx”。
qt5-
${QT_IM_MODULE}
:环境变量 QT_IM_MODULE 已正确设置为“fcitx”。
Qt IM 模块文件:
找不到 Qt4 的 fcitx 输入法模块。 找不到 Qt5 的 fcitx 输入法模块。
Gtk的:
gtk-
${GTK_IM_MODULE}
:环境变量 GTK_IM_MODULE 已正确设置为“fcitx”。
gtk-query-immodules
:gtk2:
找不到
gtk-query-immodules
gtk 2找不到 gtk 2 的 fcitx im 模块。
GTK3:
找不到
gtk-query-immodules
gtk 3找不到 gtk 3 的 fcitx im 模块。
Gtk IM 模块缓存:
gtk2:
2.24.32
在 处找到了 gtk 的输入法模块缓存/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache
。版本行:# Created by /usr/lib/x86_64-linux-gnu/libgtk2.0-0/gtk-query-immodules-2.0 from gtk+-2.24.32
找到了 gtk 的 fcitx 输入法模块
2.24.32
。"/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-fcitx.so" "fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"
GTK3:
3.24.18
在 处找到了 gtk 的输入法模块缓存/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache
。版本行:# Created by /usr/lib/x86_64-linux-gnu/libgtk-3-0/gtk-query-immodules-3.0 from gtk+-3.24.18
找到了 gtk 的 fcitx 输入法模块
3.24.18
。"/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so" "fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"
Gtk IM 模块文件:
gtk2:
Gtk 2 输入法模块文件 /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-fcitx.so 不存在。
GTK3:
Gtk 3 输入法模块文件 /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so 不存在。
配置:
Fcitx 插件:
插件配置目录:
找到了 fcitx 插件配置目录:
/usr/share/fcitx/addon
。插件列表:
找到 12 个已启用的附加组件:
fcitx-autoeng fcitx-chttrans fcitx-clipboard fcitx-fullwidth-char fcitx-imselector fcitx-ipcportal fcitx-keyboard fcitx-punc fcitx-quickphrase fcitx-remote fcitx-spell fcitx-unicode
找到 0 个已禁用的附加组件:
附加库:
找到了所有附加组件的所有库。
用户界面:
找不到启用的 fcitx 用户界面!
输入法:
找到 1 个已启用的输入法:
fcitx-keyboard-us
默认输入法:
您仅启用了一种键盘输入法。您可能需要添加另一种输入法来输入其他语言。
日志:
date
:Sat May 23 13:20:19 PDT 2020
~/.config/fcitx/log/
:total 0
~/.config/fcitx/log/crash.log
:~/.config/fcitx/log/crash.log
未找到。
关于:“无法找到 GUI 配置工具,请安装 、 或 之一kcm-fcitx
。fcitx-config-gtk2
”fcitx-config-gtk3
这些都不在 repo 中可用,但如上所述,已安装 kde-config-fcitx。
关于:无法找到 Qt4 的 fcitx 输入法模块 & 无法找到 Qt5 的 fcitx 输入法模块。根据https://wiki.archlinux.org/index.php/fcitx#Input_method_module,它们应该是 fcitx-qt4 和 fcitx-qt5。但它们都不在 repo 中。
答案1
我最终的解决方案是放弃 Fcitx 并使用 Anthy(fcitx 的替代 IME)。经过数小时与 fcitx 的斗争,包括在 github 上发布了一份非常详细的错误报告(开发人员似乎通常会忽略它),我尝试了 Anthy。它几乎立即安装并运行。安装方法:
sudo apt install ibus-anthy ibus-gtk ibus-gtk3
- 重启
- 重新启动后,您应该会在系统托盘中看到“EN”符号。
- 系统托盘图标->首选项->输入法->添加->日语->Anthy
- 完成。您现在可以使用Super+更改语言Space。
因此,这实际上并不是回答“如何让 fcitx 在 kubuntu 20.04 上运行”的问题,而是回答“如何让日语输入在 kubuntu 20.04 上运行”的问题。
答案2
摘要(TLDR)
使用 Gnome/Ubuntu 18.04:
- 为你的 SO 安装日语:
- 参考文献使用 Ubuntu 18.04 LTS Bionic Beaver 编写日语和日语输入。
- 安装路径:
system settings
> 选择Region & Language
> 单击Manage Installed Languages
>Language Support
窗口单击Install / Remove Languages...
>Installed Languages
窗口检查Japanese
> 单击Apply
>Log out
。
- 安装至少一个 IMF:
sudo apt install ibus
,和/或;sudo apt install fcitx
- 为您的 IMF 安装至少一个 IME:
- 如果选择
ibus
:sudo apt install ibus-mozc
,和/或;sudo apt install ibus-anthy
,和/或;sudo apt install ibus-kkc
,和/或;sudo apt install ibus-skk
。
- 如果选择
fcitx
:sudo apt install fcitx-mozc
,和/或;sudo apt install fcitx-anthy
,和/或;sudo apt install fcitx-kkc
,和/或;sudo apt install fcitx-skk
。
- 如果选择
解释
经过您的答案anthy
你对和 的概念理解错了fcitx
。它们是不同类别的软件。第一个是 IMF,第二个是 IME。
我使用的是 Ubuntu 18.04,带有 Gnome。因此请尝试将我的解决方案应用到您的本地环境。
您需要安装 3 种软件包:(日语)语言、至少一个 IMF 和至少一个(日语)IME。
日语
您需要安装日语(以获取核心包)。按照使用 Ubuntu 18.04 LTS Bionic Beaver 编写日语和日语输入:
- 在 中
system settings
选择Region & Language
。 - 点击
Manage Installed Languages
。 - 在
Language Support
窗口中单击Install / Remove Languages...
。 - 在
Installed Languages
窗口中,选中Japanese
,单击Apply
。 Log out
你的 Ubuntu 配置文件才能生效。
国际货币基金组织一揽子计划
国际货币基金组织输入法框架软件。它们管理所有不同的语言输入。
例如,我安装了英语和西班牙语。因此,IMF 为我提供了一个切换输入语言的开关。而且我还可以操作两个或更多西班牙语输入软件。
Ubuntu 已ibus
安装。您可以安装一个(或两个)IMF。IMF 的示例是ibus
和fcitx
。请参阅 Linux IMF 列表Unix 平台输入法列表和Linux输入法框架简单总结。
要安装,请输入:
IME 软件包
IME 是输入法编辑器/引擎软件。它们将键盘上的键翻译成要输出的所需语言的字符。
因此,使用同一个键盘,我可以输入西班牙语、英语、意大利语等。而且我可以为同一种语言安装多个 IME。例如,我可以为英语安装 2 个 IME,为韩语安装 3 个 IME,等等。每个 IME 都有自己的配置、菜单、文档等。因此,请选择适合您要求的 IME。
您需要为每个已安装的 IMF 安装至少一个日语 IME。例如,Ubuntu 附带ibus
IMF。因此,您可以安装以下一个(或多个)日语 IME:
- 莫兹克:
sudo apt install ibus-mozc
,和/或; - 安西:
sudo apt install ibus-anthy
,和/或; - 韩国科学院:
sudo apt install ibus-kkc
,和/或; - 韩国SKK:
sudo apt install ibus-skk
。
如果您安装了fctix
IMF,则需要安装至少一个特定的日语 IME:
- 莫兹克:
sudo apt install fcitx-mozc
,和/或; - 安西:
sudo apt install fcitx-anthy
,和/或; - 韩国科学院:
sudo apt install fcitx-kkc
,和/或; - 韩国SKK:
sudo apt install fcitx-skk
。
安装后
完成所有这些后,您可以从图标托盘 (IMF) 上的语言选择器中选择输入法 (IME)。
请参阅下文,在 GNOME/Ubuntu 上:
- IMF(
ibus
)上Gnome Status Menu
(由语言图标选择器表示)。 - 此 IMF 中的所有可选 IME(葡萄牙语、西班牙语、英语、日语-mozc、日语-anthy、日语-kkc、日语-skk)(
ibus
)。
使用 Gnome 快捷方式在 IME 之间快速切换:按住Super并按下Space。
就这样!
答案3
參考http://disq.us/p/2h4n2gv,关于输入法安装的非常详细...