Fcitx使用搜狗詞庫與皮膚

  • 2019 年 10 月 14 日
  • 筆記

(text{Linux}) 環境下,(text{Fcitx}) 確實是最好用的開源輸入法之一。然而 (text{Windows}) 下的巨頭輸入法 —— 搜狗,對 (text{Linux}) 的支援卻並不算到位,迄今為止,大多數 (text{Linux}) 的最新內核都無法使用搜狗,譬如 (text{Ubuntu 19.04})

所以,(text{Linux}) 下原生的開源輸入法,無疑是一切意外狀況下最值得信賴的輸入法。

不過,(text{Fcitx}) 本身的拼音做得確實不好,如皮膚、詞庫等等,都遠遠不如搜狗輸入法那麼健全。

那麼將搜狗的長處「拿來」,便是 (text{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 文件轉化成 (text{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 文件就是我們的 (text{Fcitx}) 詞庫文件了。

執行 mv *.mb ~/.config/fcitx/pinyin ,隨後重啟 (text{Fcitx}) 即可。

搜狗皮膚使用

顏值也是及其重要的東西~

Fcitx 的默認皮膚就不像個人。

而搜狗的皮膚平台就十分壯觀了,若能將搜狗的皮膚拿來用,體驗確實好很多。

放點圖,如果不想自己轉換,想直接用我的資源請發郵件 [email protected] ,沒人要的話我就懶得放了。

(text{Paper})

Paper

(text{簡白})

簡白

(text{柔蘭})

柔蘭

(text{晴天方格})

晴天方格

(text{洛天依})

洛天依

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 ,重啟 (text{Fcitx}) ,大功告成!