ubuntu17.10 以上设置fcitx的问题

系统字体配置、中文显示和输入法问题
zrqlx126
帖子: 368
注册时间: 2007-06-22 18:52

ubuntu17.10 以上设置fcitx的问题

#1

帖子 zrqlx126 » 2017-12-25 11:25

最近,有网友被ubuntu17.10中使用fcitx所困扰,首先推荐你看一下官方网站https://fcitx-im.org/wiki/Fcitx或者https://wiki.archlinux.org/index.php/Fc ... %E6%96%87)。下面谈谈我使用的方法:
1.首先安装fcitx输入法的一堆包

代码: 全选

sudo apt install fcitx-ui-qimpanel fcitx-table fcitx-pinyin fcitx-modules fcitx-module-kimpanel fcitx-libs fcitx-googlepinyin fcitx-bin fcitx-data fcitx fcitx-config-common fcitx-config-gtk fcitx-config-gtk2 fcitx-frontend-all fcitx-frontend-fbterm fcitx-frontend-gtk2 fcitx-frontend-gtk3 fcitx-frontend-qt4 fcitx-frontend-qt5 fcitx-module-cloudpinyin fcitx-module-dbus fcitx-module-lua fcitx-module-x11 fcitx-sunpinyin fcitx-table-wubi
2.取消ibus输入源,禁用绑定设定输入法

代码: 全选

gsettings set org.gnome.desktop.input-sources sources []
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
gsettings set org.gnome.desktop.interface gtk-im-module 'fcitx'
gsettings set org.gnome.settings-daemon.plugins.xsettings overrides {'Gtk/ShellShowsAppMenu': <1>, 'Gtk/IMModule': <'fcitx'>}
cat > /usr/share/glib-2.0/schemas/10_mysettings.gschema.override << "EOF"
[org.gnome.desktop.input-sources]
sources = @a(ss) []

[org.gnome.settings-daemon.plugins.keyboard]
active = false 

[org.gnome.desktop.interface]
gtk-im-module='fcitx'

[org.gnome.settings-daemon.plugins.xsettings]
overrides = @a{sv} {'Gtk/ShellShowsAppMenu': <1>, 'Gtk/IMModule': <'fcitx'>}

EOF
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
3.设置为默认输入法

代码: 全选

sudo sed -i 's/IM_CONFIG_DEFAULT_MODE=auto/IM_CONFIG_DEFAULT_MODE=fcitx/' /etc/default/im-config
4.设置自动启动

代码: 全选

sudo ln -sf /usr/share/fcitx/xdg/autostart/fcitx-autostart.desktop /etc/xdg/autostart/
重启ok。

目前出现的问题是fcitx偶尔会无法自动启动,重启gnome-shell后出现双输入法图标问题,暂时没有解决办法,有知道的告知一声。

更新一下:双图标的问题解决了,竟然是多安装了一个包fcitx-ui-classic,写的时候没有发现,事实上存在两个面板fcitx-ui-qimpanel和fcitx-ui-classic,删除软件包fcitx-ui-classic即可。
上次由 zrqlx126 在 2017-12-26 10:09,总共编辑 1 次。
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: ubuntu17.10 以上设置fcitx的问题

#2

帖子 funicorn » 2017-12-25 16:53

gnome-shell的dash搜索框里可用不?
zrqlx126
帖子: 368
注册时间: 2007-06-22 18:52

Re: ubuntu17.10 以上设置fcitx的问题

#3

帖子 zrqlx126 » 2017-12-26 10:08

funicorn 写了:gnome-shell的dash搜索框里可用不?
这个问题尚不清楚,可以尝试使用gnome-shell扩展https://extensions.gnome.org/extension/261/kimpanel/,同时删除fcitx-ui-qimpanel包和fcitx-ui-classic包,重启测试一下看看。事实上现在不必追求完美,fcitx5已经在路上,该版本是一个重大的升级版本,或许会更好。
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: ubuntu17.10 以上设置fcitx的问题

#4

帖子 funicorn » 2017-12-26 10:38

试了一下,删除fcitx-ui-qimpanel后会变成图中的样子。
2017-12-26 10-19-36 的屏幕截图.png
2017-12-26 10-22-45 的屏幕截图.png
我现在是对linux社区这种所谓的项目开发不抱任何信心了。一个最基础的底层输入法,发展了十几年,还是处于“基本可用”的状态,世界上没有比这效率更低的事业了。

不商业化的专业化就是狗屁。希望Linux学习谷歌,保留核心代码开源,早日将开发平台商业化。


zrqlx126 写了:
funicorn 写了:gnome-shell的dash搜索框里可用不?
这个问题尚不清楚,可以尝试使用gnome-shell扩展https://extensions.gnome.org/extension/261/kimpanel/,同时删除fcitx-ui-qimpanel包和fcitx-ui-classic包,重启测试一下看看。事实上现在不必追求完美,fcitx5已经在路上,该版本是一个重大的升级版本,或许会更好。
zrqlx126
帖子: 368
注册时间: 2007-06-22 18:52

Re: ubuntu17.10 以上设置fcitx的问题

#5

帖子 zrqlx126 » 2018-01-05 17:11

funicorn 写了:试了一下,删除fcitx-ui-qimpanel后会变成图中的样子。我现在是对linux社区这种所谓的项目开发不抱任何信心了。一个最基础的底层输入法,发展了十几年,还是处于“基本可用”的状态,世界上没有比这效率更低的事业了。不商业化的专业化就是狗屁。希望Linux学习谷歌,保留核心代码开源,早日将开发平台商业化。
看楼主的样子,可能仅仅删除了fcitx-ui-qimpanel和fcitx-ui-classic这些输入法面板,而没有安装Input Method Panel扩展插件。这仅仅是猜测,我不清楚是否楼主的系统环境存在问题,但是在我这里经过测试完全没有问题。本人使用的Ubuntu Bionic Beaver (daily-live),GNOME Shell 3.26.2,fcitx 4.2.9.4,Input Method Panel 3.22 38,截图如下:
2018-01-05 17-01-27屏幕截图.png
2018-01-05 17-01-53屏幕截图.png
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: ubuntu17.10 以上设置fcitx的问题

#6

帖子 funicorn » 2018-01-05 19:31

当然时装了,没看截图的输入法图标么?
头像
Ping-Wu
帖子: 1822
注册时间: 2012-11-14 9:34
系统: Debian 12

Re: ubuntu17.10 以上设置fcitx的问题

#7

帖子 Ping-Wu » 2018-01-06 13:20

funicorn 写了:我现在是对linux社区这种所谓的项目开发不抱任何信心了。一个最基础的底层输入法,发展了十几年,还是处于“基本可用”的状态,世界上没有比这效率更低的事业了。

不商业化的专业化就是狗屁。希望Linux学习谷歌,保留核心代码开源,早日将开发平台商业化。
前一阵子 Ubuntu 的预设输入系统从 IBus 改为 Fcitx,但因后者不支持 gcc,搞得天下大乱,于是 Ubuntu 17.10 又换回 Ibus 了。 LZ 建议把 ibus 删除掉换成 fcitx,并不见得问题就消失了。

不过 Ubuntu ibus 输入系统里最主要的中文输入引擎 ibus-libpinyin 因为好几年被(故意)荒废了,根本不能用*。

把整个 Linux 社区用一根竹杆打翻一条船实在有点不太公平。我在 Fedora 27 里试了一下(ibus-libpinyin),完全没有所碰到的问题,gnome-shell 的 dash 搜索框里可输入中文。

当然啦,Fedora 后面有红帽公司在撑腰(市值超过 200 亿美金)。Ubuntu 最早有马老大每年提供1千万美金支持,目前经过几次大裁员后,已大大不同了。Canonical 公司是积极的在把 Ubuntu 开发平台商业化,只是重点并不包括 Linux 桌面了。

如LZ所说的,Ubuntu 的使用者就等待着 Fcitx5 吧,希望会支持 gcc。

《edit》* Fedora 26/27 里最新版的 ibus-libpinyin 还蛮好用的,如下:
Screenshot from 2018-01-14 22-28-09.png
但必须“花功夫”训练。
上次由 Ping-Wu 在 2018-01-15 16:38,总共编辑 2 次。
csslayer
帖子: 575
注册时间: 2009-08-03 13:08

Re: ubuntu17.10 以上设置fcitx的问题

#8

帖子 csslayer » 2018-01-07 1:44

Ping-Wu 写了:
funicorn 写了:我现在是对linux社区这种所谓的项目开发不抱任何信心了。一个最基础的底层输入法,发展了十几年,还是处于“基本可用”的状态,世界上没有比这效率更低的事业了。

不商业化的专业化就是狗屁。希望Linux学习谷歌,保留核心代码开源,早日将开发平台商业化。
前一阵子 Ubuntu 的预设输入系统从 IBus 改为 Fcitx,但因后者不支持 gcc,搞得天下大乱,于是 Ubuntu 17.10 又换回 Ibus 了。 LZ 建议把 ibus 删除掉换成 fcitx,并不见得问题就消失了。

不过 Ubuntu ibus 输入系统里最主要的中文输入引擎 ibus-libpinyin 因为好几年被(故意)荒废了,根本不能用。

把整个 Linux 社区用一根竹杆打翻一条船实在有点不太公平。我在 Fedora 27 里试了一下(ibus-libpinyin),完全没有所碰到的问题,gnome-shell 的 dash 搜索框里可输入中文。

当然啦,Fedora 后面有红帽公司在撑腰(市值超过 200 亿美金)。Ubuntu 最早有马老大每年提供1千万美金支持,目前经过几次大裁员后,已大大不同了。Canonical 公司是积极的在把 Ubuntu 开发平台商业化,只是重点并不包括 Linux 桌面了。

如LZ所说的,Ubuntu 的使用者就等待着 Fcitx5 吧,希望会支持 gcc。
其余内容不论,我们单说第一句:「前一阵子 Ubuntu 的预设输入系统从 IBus 改为 Fcitx,但因后者不支持 gcc,搞得天下大乱,于是 Ubuntu 17.10 又换回 Ibus 了。 LZ 建议把 ibus 删除掉换成 fcitx,并不见得问题就消失了。」

不支持 gcc???黑人问号???

其一、世界上绝大多数发行版,包括 ubuntu 都是默认 gcc 编译器。debian 的迁移到 clang 的进程虽然一直有提但是绝对还没有完成,而且也只是测试是否「可以编译」,作为 debian 下游的 ubuntu 也显然还没有迁移到非 gcc 编译器。打包 fcitx 的人我都基本认识大半,从来没人和我说 fcitx 有什么不能在 gcc 上编译的问题。

突然来这么一发指责,你得给我拿出证据来。

其二、ubuntu 作为一个二进制发行版,原本就不需要用户从代码编译,你是从哪发现不支持 gcc 的?
头像
Ping-Wu
帖子: 1822
注册时间: 2012-11-14 9:34
系统: Debian 12

Re: ubuntu17.10 以上设置fcitx的问题

#9

帖子 Ping-Wu » 2018-01-07 3:40

csslayer 写了:
Ping-Wu 写了:
funicorn 写了:我现在是对linux社区这种所谓的项目开发不抱任何信心了。一个最基础的底层输入法,发展了十几年,还是处于“基本可用”的状态,世界上没有比这效率更低的事业了。

不商业化的专业化就是狗屁。希望Linux学习谷歌,保留核心代码开源,早日将开发平台商业化。
前一阵子 Ubuntu 的预设输入系统从 IBus 改为 Fcitx,但因后者不支持 gcc,搞得天下大乱,于是 Ubuntu 17.10 又换回 Ibus 了。 LZ 建议把 ibus 删除掉换成 fcitx,并不见得问题就消失了。

不过 Ubuntu ibus 输入系统里最主要的中文输入引擎 ibus-libpinyin 因为好几年被(故意)荒废了,根本不能用。

把整个 Linux 社区用一根竹杆打翻一条船实在有点不太公平。我在 Fedora 27 里试了一下(ibus-libpinyin),完全没有所碰到的问题,gnome-shell 的 dash 搜索框里可输入中文。

当然啦,Fedora 后面有红帽公司在撑腰(市值超过 200 亿美金)。Ubuntu 最早有马老大每年提供1千万美金支持,目前经过几次大裁员后,已大大不同了。Canonical 公司是积极的在把 Ubuntu 开发平台商业化,只是重点并不包括 Linux 桌面了。

如LZ所说的,Ubuntu 的使用者就等待着 Fcitx5 吧,希望会支持 gcc。
其余内容不论,我们单说第一句:「前一阵子 Ubuntu 的预设输入系统从 IBus 改为 Fcitx,但因后者不支持 gcc,搞得天下大乱,于是 Ubuntu 17.10 又换回 Ibus 了。 LZ 建议把 ibus 删除掉换成 fcitx,并不见得问题就消失了。」

不支持 gcc???黑人问号???

其一、世界上绝大多数发行版,包括 ubuntu 都是默认 gcc 编译器。debian 的迁移到 clang 的进程虽然一直有提但是绝对还没有完成,而且也只是测试是否「可以编译」,作为 debian 下游的 ubuntu 也显然还没有迁移到非 gcc 编译器。打包 fcitx 的人我都基本认识大半,从来没人和我说 fcitx 有什么不能在 gcc 上编译的问题。

突然来这么一发指责,你得给我拿出证据来。

其二、ubuntu 作为一个二进制发行版,原本就不需要用户从代码编译,你是从哪发现不支持 gcc 的?
非常正确!

不过此 gcc (Gnome Control Center) 非彼 gcc (GNU Compiler Collection),可能有点误解。

很高兴看到在这个论坛出现一些火花,太沉静了。 :em11

请参阅 Ubuntu Mailing List (“Mitsuya"):

https://lists.ubuntu.com/archives/ubunt ... .html#5127
头像
Ping-Wu
帖子: 1822
注册时间: 2012-11-14 9:34
系统: Debian 12

Re: ubuntu17.10 以上设置fcitx的问题

#10

帖子 Ping-Wu » 2018-01-07 4:48

Ping-Wu 写了:不过 Ubuntu ibus 输入系统里最主要的中文输入引擎 ibus-libpinyin 因为好几年被(故意)荒废了,根本不能用。
补充一下。最新版的 ibus-libpinyin (release 1.9) 及 libpinyin (release 2.1)已经(刚刚)在 Ubuntu 17.10/18.04 环境下编译(? "built")成功:

https://bugs.launchpad.net/ubuntu/+sour ... ug/1738582

如果 Fcitx5 跟 gcc/gsd 的相容度可以解决,我们就有两个主要中文输入架构 (framework)可以选择了。
csslayer
帖子: 575
注册时间: 2009-08-03 13:08

Re: ubuntu17.10 以上设置fcitx的问题

#11

帖子 csslayer » 2018-01-07 4:54

Ping-Wu 写了:
Ping-Wu 写了:不过 Ubuntu ibus 输入系统里最主要的中文输入引擎 ibus-libpinyin 因为好几年被(故意)荒废了,根本不能用。
补充一下。最新版的 ibus-libpinyin (release 1.9) 及 libpinyin (release 2.1)已经(刚刚)在 Ubuntu 17.10/18.04 环境下编译(? "built")成功:

https://bugs.launchpad.net/ubuntu/+sour ... ug/1738582

如果 Fcitx5 跟 gcc/gsd 的相容度可以解决,我们就有两个主要中文输入架构 (framework)可以选择了。
1、gnome control center 不开放 API,虽然有插件架构但是增加额外 plugin 只能 patch 实现,unity control center 是有 patch 的其实本来也是同一套代码
2、GNOME 本来就不想支持 fcitx,即使有上游也不会有兴趣合并。
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: ubuntu17.10 以上设置fcitx的问题

#12

帖子 funicorn » 2018-01-07 11:42

Gnome这么选择是可以理解的,毕竟ibus平台比fcitx平台要成熟。但是,对于发行版而言不见得要如此选择,因为发行版有责任更好地处理语言本地化的问题。

Gnome坚持ibus又如何,在发行版桌面里去掉桌面环境对ibus的依赖并不困难。

关键在于linux桌面的能力。Ubuntu做的就很差。我虽然删除了ibus,但是桌面环境仍然存在对ibus的依赖( gir1.2-ibus-1.0),最关键的是,这个依赖是Gnome制定的,而ubuntu的默认桌面并不是Gnome,而是ubuntu:Gnome,为什么没能去除掉?这都不能去除,xim环境变量留着有什么用?直接写死成ibus得了。这就是一种讽刺。

换句话说,ubuntu虽然定制了桌面,但都只是表面功夫。ubuntu-desktop并没有对gnome-shell进行实质的改动,这就是能力问题。
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: ubuntu17.10 以上设置fcitx的问题

#13

帖子 funicorn » 2018-01-07 11:53

什么是发行版必须要做好的事,是整合,把分散的开源项目更有机的整合起来。举个例子,archlinux提供了一个gdm-plymouth,干啥用的呢,因为plymouth和gdm常年尿不到一个壶里,plymouth的界面跟gdm的界面风格不一致,过渡不连续,难看的要命,根本不像一个现代的操作系统启动时该有的样子。gdm-plymouth让从闪屏界面和登录界面更无缝接轨,提供更连续的开机体验,这是只有发行版桌面才能做到的事,也是发行版桌面必须要做好的事。
头像
南浦月
帖子: 197
注册时间: 2011-07-24 23:34
系统: archlinux
联系:

Re: ubuntu17.10 以上设置fcitx的问题

#14

帖子 南浦月 » 2018-01-07 13:28

这gcc的新解也是显得我相当的孤陋寡闻了……
头像
Ping-Wu
帖子: 1822
注册时间: 2012-11-14 9:34
系统: Debian 12

Re: ubuntu17.10 以上设置fcitx的问题

#15

帖子 Ping-Wu » 2018-01-08 5:00

csslayer 写了:
Ping-Wu 写了:
Ping-Wu 写了:不过 Ubuntu ibus 输入系统里最主要的中文输入引擎 ibus-libpinyin 因为好几年被(故意)荒废了,根本不能用。
补充一下。最新版的 ibus-libpinyin (release 1.9) 及 libpinyin (release 2.1)已经(刚刚)在 Ubuntu 17.10/18.04 环境下编译(? "built")成功:

https://bugs.launchpad.net/ubuntu/+sour ... ug/1738582

如果 Fcitx5 跟 gcc/gsd 的相容度可以解决,我们就有两个主要中文输入架构 (framework)可以选择了。
1、gnome control center 不开放 API,虽然有插件架构但是增加额外 plugin 只能 patch 实现,unity control center 是有 patch 的其实本来也是同一套代码
2、GNOME 本来就不想支持 fcitx,即使有上游也不会有兴趣合并。
红帽公司是 GNOME 及 IBus 的创始会员之一,我们不可能期待 RedHat 或 Fedora 把预设输入架构从 IBus 转到 Fcitx。IBus 跟 Unity 不太相容 (Fcitx 则好多了),Ubuntu 放弃 Unity 后,现在开发人手又这么少,更是不可能走回头路从 IBus 转回 Fcitx*。

但是:Ubuntu 中文环境的主要工作人员(包括中文输入及中文字体) Gunnar Hjalmarsson,工作很认真,但不懂中文。RedHat/Fedora 的中文环境则是由吴鹏(Peng Wu,libpinyin 的创作者)负责。Fedora 的中文环境目前比Ubuntu好多了,不过可以改进的地方还是一箩筐(例如缺乏好用的中文输入字典,常常打一个字要翻好几页,以及没有云端及手写中文输入法等),一般非科技的大众不太能接受。

我个人则是很希望 Fcitx 团队能够把饼做大一点,不必把自己限制在只是这套输入架构的推广,而是把目光放在建立一个踏实的中文环境(包括改进 IBus)。

GNOME (à la Red Hat & Canonical) 不会支持 fcitx,他们又没有人力发展 ibus。如果 Fcitx 团队愿意“接管” ibus,我想一定有不少对 Linux 有热忱的朋友们会(出钱出力)帮忙的。最好是像 UbuntuMate 一样,成立一个基金会长期的支持。红帽,甲骨文,Canonical 对中国的市场都信誓旦旦的。如果 fcitx (人为的)阻力这么大的话,目前也许是切入 ibus 最有利的时候?

* Ubuntu 开发团队曾经考虑过,在中文环境里预设输入架构维持使用 fcitx,其他语言环境则定为 ibus。但这个建议马上被否决了。
回复