解决 digiKam 不能调用 fcitx 输入中文的问题
By 辞峡烟斜
digiKam 推介
digiKam 是一款非常优秀的开源图像无数据处理软件,可以用它管理、组织自己的海量图片和视频资料。我现在已经弃用单独用操作系统文件浏览器并自己建立文件夹分类命名来管理图片视频资料了,使用 digiKam 可以解放双手,减轻需多劳动量,强烈推荐使用。

官网:https://www.digikam.org 。 最新版本为 7.0.0 。Linux 版本采用 AppImage 打包格式,直接下载,就可以运行。具体使用方法,此处不述,请自行看相关资料。
发现解决问题
在使用 Linux 版本过程中,发现无法调用 fcitx 输入中文,甚是奇怪。这应该就是 digiKam 本身的问题,可又找不出解决办法。通过网上搜索相关文章,并自己尝试,终于解决。以我的 Debian 10 系统为例,下面记录解决步骤:
解包 AppImage 文件
下载的 digiKam 包文件为digikam-7.0.0-x86-64.appimage
,
进入终端,执行./digikam-7.0.0-x86-64.appimage --appimage-extract
,解压digikam-7.0.0-x86-64.appimage
。解压后,当前目录会出现squashfs-root
目录。
找出需要更新的文件
查看当前系统是否已经安装fcitx-frontend-qt5
,如果没有则安装:apt-get install fcitx-frontend-qt5
。
执行dpkg -L fcitx-frontend-qt5
,找一下软件安装的位置。
输出结果里应该会包含以下一行内容:
/usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so
。
记住此路径,下面要用。
拷贝文件
将/usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so
文件拷贝到刚刚解压的digikam-7.0.0-x86-64.appimage
相应目录squashfs-root/usr/plugins/platforminputcontexts\
下。
下载 appimagetool 软件
从https://github.com/AppImage/AppImageKit/releases下载相应的 appimagetool 版本,我这里下载appimagetool-x86_64.AppImage
到与digikam-7.0.0-x86-64.appimage
同一目录下。如下图所示:

重新打包
用刚下载的appimagetool-x86_64.AppImage
重新打包修改过的squashfs-root
目录
./appimagetool-x86_64.AppImage squashfs-root digikam-7.0.0-x86-64_lxj.appimage
执行./digikam-7.0.0-x86-64_lxj.appimage
。此时,新运行的 digiKam 已经可以调用 fcitx 输入中文了。
参考文章
- Linux下QtCreator无法调用fcitx输入中文https://www.geek-share.com/detail/2792434475.html
- AppImage 使用技巧 - 打开AppImagehttps://blog.csdn.net/ppdouble/article/details/89891026
- appimage版本在18.04下无法输入中文(fcitx)https://github.com/WizTeam/WizQTClient/issues/596