Open ccyybn opened 9 months ago
用 algebra 生成缩写形式即可
speller:
algebra:
- derive/([a-z])[a-z][a-z][a-z]/$1/
- derive/([a-z][a-z])[a-z][a-z]/$1/
- derive/([a-z][a-z][a-z])[a-z]/$1/
algebra:
- derive/([a-z])[a-z][a-z][a-z]/$1/
- derive/([a-z][a-z])[a-z][a-z]/$1/
- derive/([a-z][a-z][a-z])[a-z]/$1/
加上过后,似乎未完成的编码提示消失了,而且不知道为什么,输入 de 这个 "德昂" 会排在 “的”前面
沒有專門製作前綴匹配的索引, 所有前綴匹配的字詞, 可能會是巨量的, 因此爲了效率故, 沒有一下檢索出來, 也就無法排序.
沒有專門製作前綴匹配的索引, 所有前綴匹配的字詞, 可能會是巨量的, 因此爲了效率故, 沒有一下檢索出來, 也就無法排序.
目前我的替代方案是把字典文件中,每个词条,按照按键顺序,重复生成几遍,就能达到相同的预期效果,不过文件大小比原始版本大了很多倍
如果是前缀匹配,比如键入a,可能词条有上万条,但一般人并不会翻页到第1000页找词,所以实际可能只需要显示前几页,应该没有那么巨量数据需要索引
另外好像 auto_select auto_select_unique_candidate 对未键入完整的词条并不起作用,比如下面这个,一定要输入 k 才会自动选择,目前只能在生成字典文件(*.dict.yaml)时,判断候选个数为1,把 k 去掉,才能达到预期效果
这个做法跟 derive 其实是一样的,不需要手动操作。
但一般人并不会翻页到第1000页找词,所以实际可能只需要显示前几页,应该没有那么巨量数据需要索引
难点就是第一页也很难显示出来。这跟 rime 补全原理有关。给定一个编码前缀,rime 并不知道后续补全什么编码会得到权重最高的候选(甚至不知道有没有候选),只能从 a 到 z 一一尝试。这种方法下无法排除 dezzzzzz 编码候选权重比其他 de 开头编码的候选更高的可能性,要以100%精确度显示出第一页并非易事。
得專門加索引. 這項功能安排到 R2 裏開發.
Describe the bug 在方案中配置 enable_completion: true,码表均为4码固定长度(小鹤音形码),按权重排序,输入de,候选词列表没有按权重展示
To Reproduce 将我上传的方案部署后即可复现
Rime.zip
为方便观察问题,该码表精简为只有 de 开头的词条,高权重的在上面 该问题在 Weasel for Windows 和 Fctix5 for Android Rime 插件上均存在
Expected behavior 无论是否输入完整,都按权重排序,<未输入完整的>可以比 <输入完整> 的整体靠后,但是他们内部都按权重排序
Log
Screenshots
Flavor(please complete the following information): Select your flavor:
Package:
Additional context