当前位置:首页 > 帮助

五笔输入法  帮助中心

冰凌输入法系统词库管理

系统词库是输入法软件的基本组件,也是输入法编码方案的具体实现。其优劣不仅影响着输入法软件的性能,也影响着用户的输入体验。

冰凌输入法系统词库以GB18030字符集为核心,支持词条词频、构词规则定义和双向检索。不仅适用于86版、98版等五笔字型编码方案,而且适用于所有码元为a-z、码长为4-12、词长为1-20的输入法编码方案。具有体积小、容量大、检索快、效率高等特点。

冰凌输入法系统词库不仅内置了五笔字型词库,还向用户开放了系统词库接口。用户通过导入导出、添加移除等管理功能,可自主打造个性化系统词库,也可转换挂接其他输入法词库。

词库定义

冰凌输入法系统词库是一个结构严谨、格式严格的Unicode文本文件,其由词库头和码表两部分组成。下图为词库格式示例,左边为冰凌输入法内置的极爽词库6.0的格式,右边为郑码词库的格式。

五笔输入

○ 词库头定义

词库头位于[CODETABLEHEADER]和[CODETABLE]之间,用于描述输入法编码方案及本词库的主要特征指标。一行为一项,等号左边为项名,等号右边为项值。

词库名称(Name)、词库版本号(Version)、词库作者(Author)定义词库的属性,项值为不超过20个汉字或字符的字符串,由词库作者命制。

输入法编码方案(CodeScheme)为输入法的名称,不超过20个汉字或字符,由本词库所采用的输入法编码方案决定。

输入法最大码长(CodeLength)为输入法编码的最大码元数,由本词库所采用的输入法编码方案决定。

输入法构词码长(BWCodeLength)为输入法组词编码的码元数,由本词库所采用的输入法编码方案决定。如果输入法编码方案没有单独的构词码,应设为0。

特殊符号前缀(SpecialPrefix)为词库中特殊符号编码的前缀引导,其必须为两个小写字母,如果词库中没有定义特殊符号,则为0,由词库作者在词库制作中定义。

输入法通配符(Wildcard)为小写字母,如果输入法没有通配符,则为0。

输入法构词规则(PhraseRule)为输入法组词的规则,其值为0,表明输入法没有构词规则,值为1,表明输入法釆用黙认的(五笔字型)构词规则。项值大于1,则代表输入法的构词规则条数。

当输入法构词规则项大于1时,还要在输入法构词规则项之后[CODETABLE]之前定义具体的构词规则。格式如上图右边的郑码词库所示,具体定义方法如下:

等号左边为词组标识,如pa2、pa3、pe4分别为二字词、三字词、四字以上的多字词。其中第二个字母为e时表示多字词,后面的数字表示词组的字数。

等号右边为取码方法,每一项为一码。其中w为正向,r为反向,中间的数字为字序,右边的数字为码序。如w11为词组的第一个字的第一码,w22为词组的第二个字的第二码,r11为词组的倒数第一个字的第一码。

构词规则必须按二字词、三字词……多字词的顺序定义,每条一行,字序和码序均使用小写十六进制数字。

○ 码表定义

码表位于词库头之后,即[CODETABLE]之后,由若干个词条组成,每行一个词条。词条由编码、字词、词频三部分组成,中间以一个TAB字符分隔。重码必须分词条定义,一个重码一个词条。所有词条必须以编码字母升序为主,词频降序为副进行排序。

编码应符合输入法编码方案的编码规则,长度不能超过CodeLength。如果该字有构词码,则将构词码放在编码之后,中间以/分隔。

字词可以是GB18030字符集的任何汉字或符号,也可以是所有可打印的英文字符,长度不能超过20个字符。

词频不是必须的,但如果不包含词频,会影响联想输入的候选顺序并使检索范围的设置无效。词频不是绝对词频,而是经过平滑处理的相对词频,且要保证所有通用规范字词的词频大于255,其他字词的词频小于255,以满足检索范围的要求。

○ 特殊符号词条定义

特殊符号词条包括特殊符号菜单词条和特殊符号词条两种,其格式与常规词条定义一致,只是有一些特殊要求。如果词库头中的SpecialPrefix值为0,则不能定义特殊符号词条。特殊符号词条定义后应放入码表,与常规词条一起排序。

特殊符号菜单词条的编码为词库头中的SpecialPrefix值,字词则为菜单项,词频则必须大于或等于255(如果常规词条不带词频,则不设词频)。其中菜单项中可包括该组特殊符号的编码、该组特殊符号的简称(必须放在中文圆括号中)及该组特殊符号示例。

特殊符号词条的编码前两位为词库头中的SpecialPrefix值,后面特殊符号的编码,字词部分则为所要定义的特殊符号,词频则必须大于或等于255。

对于多个特殊符号菜单项和编码相同的特殊符号,应按重码分条定义。下图为冰凌输入法内置的极爽词库6.0的特殊符号词条定义示例,前面为特殊符号菜单词条,后面为部分特殊符号词条。

五笔输入

○ 日期时间词条定义

日期时间词条其实是一种变量词条,格式与常规词条定义一致,只是字词部分为日期时间变量。日期时间词条定义后应放入码表,与常规词条一起排序。

日期时间词条的编码由词库作者定义,长度不能超过CodeLength。日期时间词条的词频也必须大于或等于255(如果常规词条不带词频,则不设词频)。

日期时间变量由$引导变量字符组成日期时间串,长度不得超过20个字符。其中变量字符包括n(当前年份小写)、y(当前月份小写)、r(当前日期小字)、s(当前时小写)、f(当前分小写)、m(当前秒小写)和N(当前年份大写)、Y(当前月份大写)、R(当前日期大字)、S(当前时大写)、F(当前分大写)、M(当前秒大写)、W(当前星期)。

下图为冰凌输入法内置极爽词库6.0中定义的部分日期时间词条。其中词条中的02,表示变量代表的数值为两位,不足两位前面补0。如果为02n,则代表两位年份。

词条中的年月日时分秒等单位符或分隔符可以依据需要设置,但在词条输出时不进行转换,原样输出。

五笔输入

○ 特别提示

冰凌输入法系统词库以Unicode编码为基础,所以要求系统词库文件必须为Unicode文本文件(UTF-16 LE编码,可以Windows记事本保存)。

冰凌输入法系统词库文件的内容是大小敏感的,编制过程中要注意字母的大小写,避免错误。

冰凌输入法系统词库文件的文字是紧凑的,编制过程中要避免行首行尾的空格和TAB字符。

词库管理

冰凌输入法提供了系统词库管理对话框,可通过“冰凌输入法 设置”对话框的“系统词库管理”项打开。管理功能包括导入、导岀、添加、移除、切换等,具体为:

导入:将前述定义的系统词库文件导入输入法系统并作为当前系统词库。

导岀:将当前系统词库从输入法系统中导岀并保存为与系统词库文件。

添加:将官方提供或用户备份的码表文件添加到输入法系统并作为当前系统词库。官方提供的码表文件添加后,输入法的功能菜单、属性设置对话框中的“主码”等字样会被具体的输入法名称所替代。

备份:将当前系统码表从输入法系统中导出并保存为码表文件,其中包括系统词条、拼音词条、用户词条及各类调频调序数据。

移除:将当前系统词库及其用户词条、调频调序数据等全部删除。删除后的词库不可恢复,因此必须谨慎操作。

置换:包括拼音词库置换和英文词库置换。用户可以自行定义拼音词库和英文词库,然后通过“置换拼音词库”或“置换英文词库”将系统的拼音词库或英文词库替换为自己的。其拼音词库和英文词库的格式及定义方法与前述的系统词库的格式及定义方法相同。需要注意的是词库头中的BWCodeLength、SpecialPrefix、Wildcard、PhraseRule项应设置为0。词条可不设词频,如果要设,拼音的词条词频均应设为253,英文的词条均应设为252。

切换:冰凌输入法可导入或添加多个系统词库,但当前系统词库只能是一个,用户可通过系统词库列表,选择和切换当前系统词库。