2024/03/29

fcitx官方文檔摘要:輸入法·碼表輸入法

第5章…輸入法·5.3·碼表輸入法

fcitx支持用戶自定義碼表輸入法。

系統的碼表放置在prefix/share/fcitx/data/table/*.conf, 用戶的碼表和配置放置在~/.config/fcitx/table/*.conf

該文件用「[CodeTable]」來區分不同的碼表。其它設置說明如下:

[CodeTable]
Name:
名稱,顯示在程序主窗口的輸入法名稱。
IconName
圖標名稱,皮膚中對應圖標文件名。
File
碼表文件,該碼表輸入法的碼表文件名,程序會先查找 ~/.config/fcitx/table,然後在安裝目錄中找。
AdjustOrder
調頻,與拼音中的相應設置意義一樣。
Priority
優先級,碼表輸入法的優先級排序。
UsePY
使用拼音,是否使用臨時拼音輸入。
PYKey
拼音鍵,如果「拼音」選項打開,則以該字母起頭的輸入按全拼處理。
AutoSend
自動上屏,當輸入達到最大碼表且只有一個候選詞時是否自動上屏。
NoneMatchAutoSend:
空碼自動上屏,空碼時出空碼前的內容。比如說abcd是空碼,而abc不是,那麼打abcd時,就將abc的內容自動上屏,d留在提示行中待處理。
UseMatchingKey
使用模糊鍵,是否使用模糊(通配符)輸入。
MatchingKey
模糊鍵,模糊鍵(通配符)。
AutoPhrase
自動詞組,是否使用自動組詞功能(後面有詳細說明)。
AutoPhraseLength
自動詞組長度。
AutoPhrasePhrase
詞組參與自動造詞,指定錄入的詞組是否參與自動組詞。
SaveAutoPhrase
保存自動詞組,設定自動生成的詞組被選擇多少次後才被保存。0表示不保存。
ExactMatch
精確匹配,是否只在候選字表中顯示精確匹配的結果。
PromptTableCode
提示編碼,是否提示錄入字/詞的編碼。
Symbol
符號,設置該選項則開啓特殊符號輸入功能。
SymbolFile
符號文件,特殊符號所在的文件。
Enabled
是否啓用該碼表。

碼表輸入法提供了兩種在線造詞方法(詞組最長為10個漢字):

  1. 在中文輸入方式下按CTRL 8,則利用將剛剛輸入的內容造詞,默認為最近輸入法兩個字,可以用左右方向鍵的增加或減少詞組中的字數。
  2. 自動組詞:將需要造的詞按單字連續輸入後,再按它的組詞規則連續輸入編碼,程序會提示用戶這個新詞。 如果此時按空格或它前面的序號則將這個新詞輸入到用戶程序中,您可以設置這個新詞是否進入詞庫。 如果不想錄入該詞,繼續進行下一次輸入即可(fcitx會記錄最近2048個輸入的漢字)。

如果想刪除詞庫中的詞,先讓該詞顯示中輸入條上,按CTRL 7,並按提示操作即可;或是當程序提示有該詞組時,按CTRL DEL刪除。

如果想調整詞庫中詞的順序,按CTRL 6,並按提示操作即可。(如果調頻設置為1或2,您可能看不到有什麼變化)。

5.3.1. 製作碼表

data目錄下包括製造碼表的工具:txt2mbmb2txt。 前者是將碼表源文件轉換為碼表輸入法所需的格式;後者是將碼表文件轉換為文本文件。碼表源文件格式如下:

;fcitx 版本 0x03 码表文件
键码=abcdefghijklmnopqrstuvwxy
码长=4
规避字符=;iuv
拼音=@
拼音长度=12
[组词规则]
e2=p11+p12+p21+p22
e3=p11+p21+p31+p32
a4=p11+p21+p31+n11
[数据]
a 工
a 戈
a 或
a 其
@a 阿
@a 啊
@a 呵
鍵碼
表示該碼表輸入法需要用的鍵;
碼長
指該碼表輸入法最長碼長;
規避字符
在象二筆這樣的碼表輸入法中,某些字符如果出現在編碼的第一個,表示特殊用途,雖然可以組成單字,但卻不參與組詞。如果有這樣的字符,可以列在這個地方,以免自動造詞出錯;
拼音
以此字母開頭的為拼音;
拼音長度
表示該碼表中拼音的最長長度;
[組詞規則]
表示自動組詞的規則,如果沒該標誌,則不能在線造詞;
組詞規則的數目應該比碼長小1。
等號左邊為詞組的漢字個數。其中e表示「等於」,a表示「大於等於」(只能有這兩個設置)。
等號右邊為規則,其中p指正序,n指逆序。如p11指第一個字的第一個編碼,n11則是指最後一個字的第一個編碼。
[數據]
該標誌以下為該碼表輸入法的數據,按「編碼<空格>對應的漢字」。這部分無需排序。

按上述格式製作好編碼後,利用txt2mb將其轉換為fcitx需要的格式:

./txt2mb {源文件} {目標文件}

然後將目標文件複製到~/.config/fcitx/table中, 並在~/.config/fcitx/table/中建立對應conf文件, 然後在中文輸入狀態下按CTRL 5重新讀入配置文件即可。

如果希望將已經製作好的碼表文件轉換為文本文件,可以:

./mb2txt {碼表文件} [ > 文本文件]

生成的文本文件將形如上述碼表源文件的格式。

在碼表輸入法模式下,只輸入單個「拼音鍵」指定的字符可以重復上次的錄入。

5.3.2. 反查拼音

如果不知道某個漢字的讀音,可以先用碼表輸入法錄入這個字,然後按反查拼音的熱鍵(默認為CTRL ALT E),就可以查到該字的讀音。


原文件:
https://fcitx.github.io/handbook/sect1-code-table.html