Fcitx使用搜狗詞庫與面板
在 \(\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
進行最後的轉換。
之後會多出 pyERROR
,pyPhrase.ok
,pyphrase.mb
,pybase.mb
幾個檔案,前兩個沒什麼用,直接刪掉沒問題,剩下的 mb
檔案就是我們的 \(\text{Fcitx}\) 詞庫檔案了。
執行 mv *.mb ~/.config/fcitx/pinyin
,隨後重啟 \(\text{Fcitx}\) 即可。
搜狗面板使用
顏值也是及其重要的東西~
Fcitx 的預設面板就不像個人。
而搜狗的面板平臺就十分壯觀了,若能將搜狗的面板拿來用,體驗確實好很多。
放點圖,如果不想自己轉換,想直接用我的資源請發郵件 [email protected]
,沒人要的話我就懶得放了。
\(\text{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}\) ,大功告成!