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个汉字):
在中文输入方式下按CTRL_8,则利用将刚刚输入的内容造词,默认为最近输入法两个字,可以用左右方向键的增加或减少词组中的字数。
自动组词:将需要造的词按单字连续输入后,再按它的组词规则连续输入编码,程序会提示用户这个新词。 如果此时按空格或它前面的序号则将这个新词输入到用户程序中,您可以设置这个新词是否进入词库。 如果不想录入该词,继续进行下一次输入即可(fcitx会记录最近2048个输入的汉字)。
如果想删除词库中的词,先让该词显示中输入条上,按CTRL_7,并按提示操作即可;或是当程序提示有该词组时,按CTRL_DEL删除。
如果想调整词库中词的顺序,按CTRL_6,并按提示操作即可。(如果调频设置为1或2,您可能看不到有什么变化)。
data目录下包括制造码表的工具:txt2mb和mb2txt。 前者是将码表源文件转换为码表输入法所需的格式;后者是将码表文件转换为文本文件。码表源文件格式如下:
;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
{码表文件} [ > 文本文件]
生成的文本文件将形如上述码表源文件的格式。
在码表输入法模式下,只输入单个“拼音键”指定的字符可以重复上次的录入。