免費論壇 繁體 | 簡體
Sclub交友聊天~加入聊天室當版主
分享
返回列表 发帖

修剪码表

本帖最后由 hbghlyj 于 2021-5-18 16:27 编辑

我习惯打单字,最近做了一些优化:
首先,在二三重码的结尾加x和xx,因为常用字中的重码不到50个,容易记忆,这样就可以一字一码(有些字是按自己的习惯批量改的,去除了所有容错码),把候选框完全隐藏掉,注意力不会被分散,而且"数字键"被解放出来了,这就是说,打字的时候可以选数字,类似地,"翻页键","以词定字"这些键都没有了.
如果去掉末尾一码后,编码仍唯一,且无后续编码,我就直接去掉这一码:例如"fvok 数"可以减省为"fv",又如"fbln 削",前三码已经唯一地决定了这个字,且无后续编码,截断变为"fbl",再如"suok 改",前三码已经唯一地决定了这个字,且无后续编码,截断变为"suo",而"vbm 姐"可以减省为"vb",而"vpd 她"减省为"vp",这样就可以减少击键次数.
关键代码如下:
  1. bianma={a,aa,aaa,...,lln};
  2. hanzi={日,昌,晶,...,弗};
  3. T = ToString /@ bianma;
  4. Do[Do[ma = T[[n]];
  5. If[! StringMatchQ[ma, _],
  6.   dropped = StringJoin[Drop[Characters[ma], -1]];
  7.   If[! MemberQ[T, dropped] && !
  8.      MemberQ[StringMatchQ[Delete[T, n], dropped ~~ __], True],
  9.    T = ReplacePart[T, n -> dropped]]], {n, 1, Length[T]}],5];
  10. T = ToExpression /@ T;
复制代码
然后把小小输入法配置文件commit的第一个参数"全码不自动上屏"改为0.
在码表开头,可设置*键,就把所有编码设为了引导键:
pull=*
完工!

返回列表 回复 发帖