librime icon indicating copy to clipboard operation
librime copied to clipboard

rime-with-plugins-1.6.1-win32 下使用 charset_filter@utf8 大量字符被过滤掉

Open Ace-Who opened this issue 4 years ago • 5 comments

以下是随便截取的码表中的一段,这些字的 Unicode 码是几乎连续的,只有第一个字和最后一个字能打出,中间的字都打不出。

䶪
䶫
䶬
䶭
䶯
䶰
䶱
䶲
䶳
䶴
䶵

Ace-Who avatar Dec 13 '20 01:12 Ace-Who

不要用 charset_filter@utf8,這個濾鏡就是那麼垃圾

LEOYoon-Tsaw avatar Dec 13 '20 03:12 LEOYoon-Tsaw

为什么?以前的版本是正常的。不用这个怎么打出所有的字?或者说怎么实现在特定字集和全字集之间切换?gb2312、gbk、big5 这些可能也有问题。

Ace-Who avatar Dec 13 '20 04:12 Ace-Who

新现象:

  • 方案 A 使用词典 A,同一个编码 hvhv,正确的候选顺序——也是不使用任何 charset_filter@* 时的实际顺序——是「𦰙」(CJK 扩展 B)、「聊聊」、「難辭其咎」,在使用 charset_filter@utf8 时,候选的顺序却是「聊聊」「難辭其咎」「𦰙」。
  • 方案 B 使用词典 X,X 导入了词典 A、B、C 等等。B 中编码为 hvhv 的词条是全角空格「 」,输入 hvhv 时候选的正确顺序应该是「𦰙」「聊聊」「難辭其咎」「 」,这也是不使用任何 charset_filter@* 时的实际顺序,而使用 charset_filter@utf8 时的实际顺序为「聊聊」「難辭其咎」「 」,缺失了候选「𦰙」。

所有这些故障现象,在较旧的版本中都没有,方案配置在 Weasel 0.14.3 下使用超过一年,字符集过滤配置没有变化,功能实现正常,直到更换为 rime-with-plugins-1.6.1-win32 后,才出现以上现象。Weasel 至今没有发布新版,而 iOS irime 最近有更新,有方案使用者报告 iOS irime 的字符集过滤也有奇怪现象。

Ace-Who avatar Dec 19 '20 08:12 Ace-Who

这些被 charset_filter@utf8 过滤掉的字,在用拼音反查时,却都出现在候选中。

Ace-Who avatar Jan 10 '21 08:01 Ace-Who

为什么?以前的版本是正常的。不用这个怎么打出所有的字?或者说怎么实现在特定字集和全字集之间切换?gb2312、gbk、big5 这些可能也有问题。

如果我没理解错的话,charset_filter@utf8 在正常情况下,作用就是不起任何作用,所以在 filters 列表中完全可以去掉这个组件,这就解决了在全字集和其他字集间切换的问题。剩下的问题是不知道 gb2312 等几个字集过滤器有没有问题。

Ace-Who avatar Jan 10 '21 08:01 Ace-Who