码表辅码配置格式

Last updated 6 months ago

辅码码表

对于大部分双拼用户来说,可能对落格输入法的功能需求就止步于此了,不过,使用辅码才是双拼的优势。它是一份纯文本的“txt”文档,有着简单的格式要求,所有符合格式的码表文档都可以被落格输入法读取并导入为辅码码表。

你可以在“AssistCodes”目录里看到并管理所有的辅码码表文件。

具体的辅码码表格式大概是这样的:

阿 e
阿 ek
厑 i
厑 ib
厑 ii
锕 j
錒 j
锕 ja
錒 ja
啊 k
吖 k
呵 k
嗄 k
啊 ka
呵 kk

它最大的特点是“字”永远都只有一个字(不然还怎么去词组里筛选?),而“码”字段则最长是两个字母,这是因为落格输入法最大支持双辅直接辅码。

总之,要注意字和码之间用tab)分隔,注意不要有空格。

如果你直接复制示例中的码表,那么可能并不会得到正确的结果,因为在网页表达过程中,总是习惯性的把 tab 这个符号替换为空格。

主码表

主码表的文档格式与辅码码表的格式基本相同,但条目要多很多——这也是为什么主码表导入一般会明显比较慢。主码表相当于一份自定义的词库,它可以由你自己来规定哪几个字母对应哪个中文,比如导入一份五笔输入法的码表、导入一份郑码输入法的码表,这都是可以的。

值得一提的是,如果你使用了一份高质量的码表,那么也许可以考虑开启“四码上屏”功能,它允许你在输入四个字母后无重码自动上屏!

你可以在根目录里看到并管理所有的主码表文件。 注意:你应当明白,主码表和辅码码表格式一致固然方便,但很容易错误导入,比较容易的区分办法是导入速度,主码表的导入速度很慢(因为体积较大)。 另外,如果你把主码表和辅码码表搞混了(互换导入),那输入法可能也能正常运行,但辅码会辅不出大部分的词汇,而单字也会有大量重码出现。

为落格输入法制作一份码表文件

要制作一份落格输入法能用的码表文件十分容易,就是普普通通的“txt”文本! 当然,应当遵循一点小规则以便落格输入法处理系统能够识别。(如果你曾为落格输入法制作过“自定义码表”的导入码表,那么你可以放心——格式要求是完全相同的。)

  • 编码:UTF-8 UTF-16 GB2312 GBK GB18030 均可;

  • 文本格式:一行一条记录;

  • 记录格式:字前码后,用 tab 分隔。

举个例子,这是自然码码表的一部分:

按 a
阿 aa
锕 aaj
吖 aak
唔 agk
昂 ah
爱 ai
癌 aib
蔼 aic
隘 aie
捱 aif

需要注意的地方:

  • 字和码之间的分隔不是空格而是 tab;

  • 不要有空行;

  • 码的部分不要有26个字母外的任何内容。

码表整理完毕之后记得用批量替换模式去掉所有的空格!

如果要再补充一句的话,其实字的部分中是可以有空格和其他任意字符的,比如。 ojh这一条导入码表之后就是输入ojh候选里就会出现句号了。

但根据经验来讲,大部分情况下的空格都是错误添加的,请慎重使用。

精确控制码表的排序

如你所见,其实落格输入法会根据“从上到下”的物理顺序来读取码表,一旦遇到重码,则在“上方”的码会在首选,“下方”的则是第二个候选——更多则以此类推。不过,这个特性在开启“编码反查”功能后可能就无效了,落格输入法仅能保证首选仍然是正确的,而其他模糊查询的结果则变成了乱序。 要改变这一问题,则可以使用和“自定义编码”一样的排序权重,还是上边的码表,如果我想给它做更精确的排序,要怎么办呢?

按 a 1
阿 aa 55
锕 aaj 1000
吖 aak 20
唔 agk 200
昂 ah 2
爱 ai 1
癌 aib 10
蔼 aic 10
隘 aie 10
捱 aif 20

很简单,只要在“字前码后”添加另外一个字段“权重”即可,一般来说,这个权重不应该是小数或者负数,应该是一个自然数,这个自然数代表了你候选的排位,0表示第一个(如果你的码表没有排序信息,那么就是从默认的1000000开始递增),这样,你可以手动地为每一个重码词条进行精确的排序了。

值得注意的是,分隔依旧使用的是tab,落格输入法支持两字段的旧格式码表,也支持三个字段的新格式码表,你也可以新旧混用没毛病。不过,请注意第三个字段不要写入其他奇怪的字符,否则可能会出现一些不可预料的问题。