manjaro linux搜狗输入法无法输入的解决方案文章

搜狗拼音支持liunx,在优麒麟上运行很好,但是搜狗和fcitx更新不是很及时,和fcitx有时不时有冲突,所以兼容性差些,导致时不时莫名其妙的出问题,让人生无可恋。其实sunpinyin google拼音效果也不错,折腾不起的可以使用,即使自带pinyin也可以一战,但是以搜狗100+M的体积,说它功能不好,我自己也说服不了自己。同时在windows中搜狗弹窗广告骚扰,还是有人用,而在linux确实安静守法,没弹窗,没广告。所以我自己也说服不了自己不折腾。

网上老的解决办法1:删除~/.sogouinput 和 ~/.config/ 里面的 sogou开头的 sogouPY sogouPY.user sogouqimpanel三个文件 重启系统。

说实在的 这个方法我在折腾Ubuntu1604时候似乎成功过,其他时候没管过用!

网上老的解决办法2:安装fcitx,fcitx-gtk2,fcitx-gtk3,fcitx-qt4,fcitx-qt5,fcitx-configtool后安装fcitx-sogoupinin

这个办法还是靠谱的基本上在Ubuntu18 19 arch manjaro上我都成功过,不过最近貌似不太灵光。总是莫名其妙的就出问题!

原因是fcitx 用fcitx-im包组 包含了fcitx,fcitx-gtk2,fcitx-gtk3,fcitx-qt5 注意没有 fcitx-qt4(被抛弃了因为主流都是qt5,但是搜狗还需要,绝大部分问题由此引发) fcitx-configtool(可选的图形配置工具,强烈建议安装)

最近又碰到一个bug2020-05-01 更新系统后发现搜狗输入法只能输入中文。输入英文的方案不翼而飞!在终端打不出英文和没有中文输入法一样悲催,反复查阅资料和折腾

终于找到原因。

1、搜狗输入法需要fcitx-qt4 ,而fcitx最新包已经变成包组 fcitx-im 它不支持qt4。所以搜狗安装后就无法正常工作,以前的方案 安装fcitx,fcitx-gtk2,fcitx-gtk3,fcitx-qt4,fcitx-qt5,fcitx-configtool的时候,当安装fcitx-qt4时,pacman会自动找出fcitx-lilydjwg-git包,此包支持qt4,同时与fcitx,fcitx-gtk2,fcitx-gtk3冲突所以会将这三个冲突包卸载掉。也就是安装fcitx,fcitx-gtk2,fcitx-gtk3,fcitx-qt4,fcitx-qt5,fcitx-configtool 变成安装 fcitx-lilydjwg-git fcitx-qt5(支持qt5程序),fcitx-configtool(图形界面设置fcitx,没有它你只能在字符界面设置,除非你以前是字符界面设置高手否则强烈建议安装,虽然不装搜狗仍然能用但是设置不方便之极) 三个包,所以新解决方案一出来了。

新解决方案一:

首先,如果以前安装了fcitx,全部删除:

sudo pacman -Rsn $(pacman -Qsq fcitx)

总之 把pacman -Qsq fcitx 查到的已安装的包全部删掉。重启系统,不重启似乎也行,不想出麻烦建议重启。此时fcitx输入彻底删除了,系统里只能用英文输入。

然后安装fcitx-lilydjwg-git fcitx-qt5  fcitx-configtool fcitx-sogoupinyin 这4个包。

sudo pacman -S fcitx-lilydjwg-git fcitx-sogoupinyin

到这里还没有fcitx-qt5  fcitx-configtool

GNOME(GTK)xfce等用户:

sudo pacman -S fcitx-configtool fcitx-qt5

KDE(QT)用户:

sudo pacman -S kcm-fcitx

kcm-fcitx这个包依赖于fcitx-qt5,所以后者就不用再次安装了。

至此,archlinux下的搜狗输入法就安装好了,不要忘了添加用户变量环境:

老办法:

~/.xprofile

export GTK_IM_MODULE=fcitx

export QT_IM_MODULE=fcitx

export XMODIFIERS="@im=fcitx"

新办法:

~/.pam_environment

GTK_IM_MODULE=fcitx

QT_IM_MODULE=fcitx

XMODIFIERS=@im=fcitx

pam-env 模块会在所有登录会话中读取此文件,包括 X11 会话和 Wayland 会话,用老办法wayland emacs 等可能无法使用fcitx,建议使用新办法,如果你是老机器,32位,那么老办法还是稳妥的。

此种办法有个问题:

archlinux源fcitx-lilydjwg-git更新至2:4.2.9.7.20190817-2版本前的几个版本去除了fcitx-qt4,导致搜狗不能用,到了这版添加回fcitx-qt4又正常了,2:4.2.9.7.20200501-2版出现没有英文输入法,虽然搜狗能用无法输入英文,除非打开软键盘,这个bug很烦人,只能

sudo panman -U 在镜像fwq或者自己下载老包找到老版本,来降级已达到临时使用目的外,还可以使用第二种可以解决。

新解决方案2:

按照传统方法安装搜狗输入法后,在AUR里安装fcitx-qt4

sudo pacman -S fcitx-im fcitx-configtool fcitx-sogoupinyin

##fcitx-im 已经形成包组,包含了fcitx,fcitx-gtk2,fcitx-gtk3 fcitx-qt5,所以在aur源里安装qt4即可。

sudo pacman -S yay

yay -S aur/fcitx-qt4

aur/fcitx-qt4 很重要,不带目录 yay会直接安装fcitx-lilydjwg-git,和pacman -S执行命令一样。(估计为了保持系统稳定yay优先不使用aur里的包)

#####重要 一定要重启系统,不要相信 killall fcitx 然后fcitx -r, 和注销在进入。

自此搜狗应该可以愉快使用了。

折腾很费神,但是通过24小时折腾了解安装sogoupinyin要点,同时加深了使用pacman 的知识。我去睡觉了累死了。

你可能感兴趣的:(manjaro linux搜狗输入法无法输入的解决方案文章)