在 \(\texttt{Linux}\) 环境下,\(\texttt{Fcitx}\) 确实是最好用的开源输入法之一。然而 \(\texttt{Windows}\) 下的巨头输入法 —— 搜狗,对 \(\texttt{Linux}\) 的支持却并不算到位,迄今为止,大多数 \(\texttt{Linux}\) 的最新内核都无法使用搜狗,譬如 \(\texttt{Ubuntu 19.04}\) 。

所以,\(\texttt{Linux}\) 下原生的开源输入法,无疑是一切意外状况下最值得信赖的输入法。

不过,\(\texttt{Fcitx}\) 本身的拼音做得确实不好,如皮肤、词库等等,都远远不如搜狗输入法那么健全。

那么将搜狗的长处“拿来”,便是 \(\texttt{Linux}\) 用户自然而又令人愉悦的一个想法了。

搜狗词库使用

对于拼音用户而言,无论全双拼(音形除外),词库都是即为重要的。足够量的词库会极大降低你的选词时间!

Step1 下载搜狗词库

首先,第一件事情自然就是去到 搜狗输入法官网 下载你所需要的词库统一放到一个文件夹里去。

此时,文件夹的文件分布应该如下:

| filename.scel
| ...
| ...
| filename.scel

总之是一堆 scel 文件就是了。

Step2 scel -> org

如果你迫不及待地试图打开 scel 文件,你会发现根本读不了……

所以我们应当先将其转化为一个能正常阅读的格式 —— org

首先,我们需要安装必需的工具:

sudo apt install fcitx-tools #ubuntu
sudo pacman -S fcitx-tools #arch

随后在目录下 mkdir org ,将转化后的文件放进去。随后执行如下 bash 命令来一一转化。

for scel in *.scels # 迭代器
do
scel2org ${scel} -o org/${scel}.org # 执行命令
done

随后你的 org 目录下就全是转化后的词库文件了,打开后是可读的!

此时,目录分布如下:

| filename.scel
| ...
| ...
| filename.scel
\ org
| filename.scel.org
| ...
| ...
| filename.scel.org

Step3 org -> mb -> fcitx

接下来就是将 org 文件转化成 \(\texttt{Fcitx}\) 可用文件的时候了!

首先 mkdir dict && cd dict 用来装最后的文件。

随后,我们需要将 默认词库 也下载下来。

接下来,执行转化命令:

cat ../org/*.org > tot.org
cat pyPhrase.org >> tot.org # 将所有词库汇总
sort tot.org > ord.org # 排序
uniq ord.org > final.org # 去重

最后的 final.org 就是我们的一个词库汇总了。

然后我们需要下载一个 字库 来最终合并。

执行 createPYMB gbkpy.org final.org 进行最后的转换。

之后会多出 pyERRORpyPhrase.okpyphrase.mbpybase.mb 几个文件,前两个没什么用,直接删掉没问题,剩下的 mb 文件就是我们的 \(\texttt{Fcitx}\) 词库文件了。

执行 mv *.mb ~/.config/fcitx/pinyin ,随后重启 \(\texttt{Fcitx}\) 即可。

搜狗皮肤使用

颜值也是及其重要的东西~

Fcitx 的默认皮肤就不像个人。

而搜狗的皮肤平台就十分壮观了,若能将搜狗的皮肤拿来用,体验确实好很多。

放点图,如果不想自己转换,想直接用我的资源请发邮件 [email protected] ,没人要的话我就懒得放了。

\(\texttt{Paper}\)

Fcitx使用搜狗词库与皮肤-LMLPHP

\(\texttt{简白}\)

Fcitx使用搜狗词库与皮肤-LMLPHP

\(\texttt{柔兰}\)

Fcitx使用搜狗词库与皮肤-LMLPHP

\(\texttt{晴天方格}\)

Fcitx使用搜狗词库与皮肤-LMLPHP

\(\texttt{洛天依}\)

Fcitx使用搜狗词库与皮肤-LMLPHP

Step1 下载皮肤与工具

先去 官网 下载皮肤。

然后 git clone https://github.com/VOID001/ssf2fcitx.git ,下载我们的开源工具(作者nb)。

sudo apt install cmake
cd ssf2fcitx
cmake ./

过程可能会有关 pkg 报错,作为合格的Linux用户当然是自己解决啦,执行 sudo apt install pkg-config 即可。

然后 make ,可能报错 unitypes.h not found ,直接 vim ssfextract.cpp ,删掉第 9 行的库引用即可。

最后 sudo make install

Step2 转化

其实作者的 github 上就有说明……

ssf2fcitx -i filename.ssf -o dirname 即可,随后 mv dirname ~/.config/fcitx/skin ,重启 \(\texttt{Fcitx}\) ,大功告成!

05-11 20:18