fcitx输入法在wps、wineqq中失灵问题的解决

最近由Mint转到了Open SUSE下,各种折腾。

眼看着已经折腾差不多了,今天又遇到个问题:

在Wineqq以及wps下,fcitx输入法打不开,没法输入中文。

这就非常坑了,这两个软件输入不了中文,基本就相当于没安装。于是乎上网各种查。网上查到的教程上大部分都是说这是因为有几个环境变量没有配置正确造成的。按照网上的方法,分别在~/.bashrc ~/.xprofile /etc/profile 文件中添加了如下代码:

export XIM="fcitx"
export XIM_PROGRAM="fcitx"
export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"

export QT_IM_MODULE="fcitx"


重启,发现还是不好使。

偶然发现,如果在命令行中运行wps等命令,fcitx就好使。初步怀疑是上面配置的环境变量在双击运行的时候未生效造成的。

写一脚本,测试,代码如下:

#!/usr/bin/sh
export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"
export QT_IM_MODULE="fcitx"
/usr/bin/wpp
保存为wpp.sh,将桌面上的wps-office-wpp.desktop目标地址改成该脚本之后,运行,好使了。
确定是环境变量的问题了。

接下来,就可以对wps、wineqq做一下小改动。

Wine QQ

wineqq的运行脚本是/opt/longene/tm2013/tm2013.sh (我安装的是tm2013,qq2013同理)。编辑此脚本,在最开始加入

export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"
export QT_IM_MODULE="fcitx"
保存

WPS

对于wps,双击桌面图标运行的是/usr/bin/wps(wpp,et),所以需要用一个脚本,在执行程序之前,配置一下环境变量。实际脚本跟上面的测试脚本有一点点区别:

#!/usr/bin/sh
export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"
export QT_IM_MODULE="fcitx"
/usr/bin/wpp $1
之所以将可执行文件后面加了个参数,是因为.desktop文件调用可执行文件的时候会传一个%f参数给可执行文件,我们现在让它传给我们的脚本,再由我们的脚本调用

将调用wps、wpp、et的脚本都写好后,放到/opt/kingsoft/wps-office/office6/目录中,然后分别修改/usr/share/applications/目录中的wps-office-wps.desktop wps-office-wpp.desktop wps-office-et.desktop做如下修改(以wpp为例,其余类似):

#!/usr/bin/env xdg-open
[Desktop Entry]
Comment=Use Kingsoft Presentation to edit and play presentations.
Comment[zh_CN]=使用 WPS 演示编辑、播放演示文稿
#Exec=/usr/bin/wpp %f
Exec=/opt/kingsoft/wps-office/office6/wpp.sh %f ####将上一行代码注释掉,增加本行
GenericName=Kingsoft Presentation
GenericName[zh_CN]=WPS 演示
MimeType=application/wps-office.dps;application/wps-office.dpt;application/wps-office.ppt;application/wps-office.pot;application/vnd.ms-powerpoint;application/vnd.mspowerpoint;application/mspowerpoint;application/powerpoint;application/x-mspowerpoint;application/wps-office.pptx;application/wps-office.potx;
Name=Kingsoft Presentation
Name[zh_CN]=WPS 演示
StartupNotify=false
Terminal=false
Type=Application
Categories=Office;Presentation;Qt;
X-DBUS-ServiceName=
X-DBUS-StartupType=
X-KDE-SubstituteUID=false
X-KDE-Username=
Icon=wps-office-wppmain
InitialPreference=3
运行wps,成功

虽然问题是解决了,但现在还是有几个问题,求高手指点:

  1. 在.desktop脚本中 %f 参数是什么意思
  2. 为什么在相应文件中配置了环境变量,在终端之外却不好使?
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值