4

为了打字更爽,我学了一个追求极致性能的小众输入法

 11 months ago
source link: https://sspai.com/post/83376
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

为了打字更爽,我学了一个追求极致性能的小众输入法 - 少数派

1
为了打字更爽,我学了一个追求极致性能的小众输入法

Matrix 首页推荐 

Matrix 是少数派的写作社区,我们主张分享真实的产品体验,有实用价值的经验与思考。我们会不定期挑选 Matrix 最优质的文章,展示来自用户的最真实的体验和观点。

文章代表作者个人观点,少数派仅对标题和排版略作修改。


入门五笔 98 后,我花了几周的时间熟悉常用字的输入码,打字速度也水涨船高——虽然终究比不上那些输入大神,至少像此前的小鹤双拼一样,手又重新跟上了脑子。只要脑子里想的不是错字,文章基本就没有 typo,选字频率也低了很多。

但五笔并非没有问题。

一来,造字有其规律性,码表设置得规律好记,常用字中就必然出现重码。比较典型的例子是「去」「云」「支」,三个字的全码都是 FCU,如果不组词,就只能选字区分。虽然它们位置固定,可以用分号引号选字,可我就是不爽。

二来,使用时间上去之后,我的疲劳感逐渐明显。先是小指常常明显受不住,后来演变成对简码体系的抱怨:五笔的简码太有时代特点,一简字的位置有好几个是事实浪费的,真正的常用字反而要输全码;还有的则是为了用上简码位置,离开了它的首码所在地——我这种靠排码规律记位置而没背口诀的人甚至过了两个月才发现「不」「为」打 I、O 就行,傻傻 DHI、YEYI 了两个月。

在一个被大量的「云」字「支」字折磨的下午,我再也受不了了。一众方案里,我最终选择了一个小众形码输入法——虎码

虎码是什么?

虎码是一个由输入法爱好者开发出的乱序双编码形码输入法。

乱序,说的是虎码的字根分布没有规律,与之相对的就是五笔的分布,按笔画顺序整齐排好,多数字根不需单独记住位置。

双编码,说的是虎码的字根由两个字母组成,为「主码+小码」。主码即为上面的乱序,是字根所在的位置;小码取自字根的读音,称为音托。

VZ1LbGtNJoPPNaxabXScfLUbnSb

虎码的最长字码也限制在 4 码。当一个字由多个字根组成时,优先输主码,还有重码时补最后一个字根的小码。超过四个字根时,取一二三末码的主码,取码规则与五笔类似。

I50Ab3Ln4oqf7xxukhhcGIIGnKd

为什么是虎码?

之前我求的是入门快、上手快,那么,选择五笔方案中修正了笔顺硬伤,还增加了一些字根的五笔 98 就相当合适。现在我的主要需要已经变成了对输入法本身性能的挑战:首先是低重码,至少常用字不要有重码,不能再有去云支的问题;其次,左右手可以用得更均匀,最好能一直左右交替输入,各个手指也舒服些,小指少用,食指在的 FJ 多用。最后一项不一定要满足,但如果能覆盖异体字和繁体字,方便我查字典,那就更好了。

虎码就是这样一个重性能的输入法。

对我这种从五笔入门形码的人来说,虎码在实际使用上的多个方面都大不相同。

第一就是取码规则,五笔是笔顺取码,虎码则是用了字形取码。两个方案本身并无高下,按理说,字形才是更直观的方案,不用会写就可以把字拆好。

KYLUbx3EAoH4HQx133Iclj5knuc

但就像我上面说的,造字有规律,会写的多了,一看就能把笔顺想个大概。字形取码最大的好处可能是避免五笔 86 版的历史问题:因为定方案时还没有明确的笔顺规范,许多字的取码和笔顺规则对不上。五笔 98 就改了这个毛病,拆字也直观多了,和脑子里想象写字的过程对得上。

而同样是字形取码,我为什么没有选择用户更多的仓颉呢?这就要说到下一点。

第二,虎码的字根量比一般的形码多得多。五笔 98 的字根是三版主流五笔中最多的,据说有 305 个。虎码在官网上谦虚地说自己有 241 个主要字根,但这是把同源字根归并后的结果,归并前足足有 700 多个。这样一来,字根就不会像仓颉一样以小根为主;大字根多了,字码就可以留给更有效的部件,拆字更直观,基本做到每个常见结构都有对应的字根。同时,记忆成本也会一并飞升。从此,云是 By,支是 Ci,去是 Gk,三者分道扬镳。

AMrxb8t5uoRjVbxXh90cZfiKnjh

字根量的上涨让虎码输入偏难字也能得心应手,再加上开发者的积极适配与优化,目前虎码已经支持到了 CJK 扩展 I 区。什么概念呢?你因为默认字库不够大显示不出来的字,它还能打。这对我这么一个曾经手机打不出 ID 的人吸引力十足。

第三,按虎码的说法,它在开发的过程中用上了算法优化,在一堆可能的方案中选了结果最好的一个,在单字性能上做到了顶级。它的简码没有移位现象,不用单独背一份简码表。在算上分配好的简码和回头码去重方案后,前 4000 常用字只有一个重码,其中占日常输入 99.9% 的国标一级汉字没有重码

虽然字根分布是乱序,记熟要些工夫,但安排得当。一方面是因为小码采用音托,基本不用硬记,另一方面,它尽可能避开了同一手指上下隔排连续输入、单手连击等容易造成疲劳的设计。即使抛开官方给的测试结果,实际使用也能明显有左右开弓的感觉。

最后,单从工具上看,五笔 98 和虎码都不是常见的输入法,想使用都躲不过要折腾一下。好在虎码的爱好者已经有了一定的体量,各个平台都有可以用的输入法,用五笔助手也可以导入码表到微软五笔,也不存在我几年前因为系统内置方案而弃自然码换小鹤双拼的纠结。

虎码怎么学?

跟五笔相比,虎码这种彻头彻尾的爱好者项目在资源上有相当大的优势——作者本人和最初的一批深度用户相当了解自己手里的输入法,也很愿意输出。在虎码输入法的官网,就直接给出了推荐的学习方法和参考资料:

官网提供在线的字根练习、拆字练习和文章练习,还推荐使用木易跟打器进阶,在学习路线中给了推荐的练习时长。我的入门就是从这里开始的,但由于种种原因,结束了必拆字练习,就和五笔一样直接在日用中练习了。

乱序形码最大的难点就是字根记忆,而虎码的厉害之处就是压低记忆负担。

Xz5abWPv3oUsnyxloxoca7BVnbn

图源:虎码官方网站

虎码在字根的排布上花了不少心思。最明显的是对字形相近字根的归拢与合并,已巳己都在 V,毋母都在 K,糸幺乡都在 I,象兔龟鱼都在 W,丰耒未都在 A。至于不成字的字根,则尽可能和字形相近的字根合并,最明显的例子就是 Hb 八这个字根,合并了大量左右分开的部首,记住一个就记住了所有。

MZY0b6ml8oc161xwbN8cUgULn6c

除了字形相近,有的字根还以字义分布,例如牙齿都在 L、行走足都在 P。在记忆小码时,我自己习惯依靠音托,可以顺便认识一些不认识的部首字,有种小时候翻字典的乐趣。剩余主码的记忆则靠组词造句,比如「奶黄」所以「黄」是 Nh、娱乐公司 YG 很多瓜所以「瓜」是 Yg、「人皮」所以「皮」是 Rp、「猛犬」所以「犬」是 Mq。

剩下的就是反复的练习——这也是乱序输入法最恼人的地方。没了靠布局规律猜位置的余地,虎码的前期靠的就是背,直到对一些常见字词产生了肌肉记忆,虎码官方提供的字根练习程序帮了很大的忙,过三遍基本对所有常用字根就有了底。

学五笔时,我可以简单上手之后就尝试日用上手;学虎码时,我因为练习量不足,被迫要时不时回到小鹤双拼,才能完成正常速度的交流,大约用了十天才到达日常基本不用查字的程度。

好在官方提供的 Rime 输入法挂载码表中,集成了「`」键反查虎码的功能,包括基于 Rime 的 Android 版小企鹅输入法也支持反查;桌面版还提供候选项显示字根提示等。这些外部功能给早期日用提供了不少帮助。

OqNibBWjXobA8vx4JCNcp0vxnLc

在我自己的理解中,输出本身是件私人的事。好的输入法只要能让输出变得更顺畅那么一点点,就没有辜负我为它花费的时间。

虎码自然不至于赢得这么勉强。我仅仅作为一个入门者,已经能明显感到乱序码给形码输入带来的变化了。用虎码时,打字的节奏明显更流畅。可能是因为简码表为常用字留足了位置,大部分时间,我的输入码都相当短,空格没停过,一简字也是时时刻刻都在用。双手的运动幅度也更小了,小指工作量大大缩减,有力的拇指和食指也忙起来了,手部整体轻松不少。

选字的情况比起五笔有明显减少,常用字真的岔开了编码,只有在我输入生僻字查字典时,分号引号这些选字键才活动起来。算是一项项扣上了我最开始提出的需求,因此我对虎码的整体表现相当满意。

有优势,劣势也自然有。一是容易与本身就会的形码混淆。这主要还是因为不够熟练,现在我还会时常敲到五笔的码元位置上去,但因为虎码用得上了手,五笔反而忘得更多。二是每个字根的手位设置虽然都很合理,但因为输字时只用主码,放进完整的字还是会出现全用左手或是全用右手的情况,不过不用再像五笔敲四个 Q 打一个「金」字,进步也是十分明显,我可以接受。

而我遇到最大的问题,就是忘字根。700 多个字根自然不用全记,但有些低频字根,用得少了就会忘记它「也是个字根」。比如广 Xg 和鹿 Xl 都是字根,而我只有在翻「广匕匕」找不到鹿字时,才会在拼音反查的提示里想起这件事;经历过同种遭遇的,还有册 Ic、曲 Yq、麻 Zm、鼠 Ps、鬲 Ng。

另外,虎码是一个专注单字性能的输入法,在输入词组时就会有点力不从心,经常像下图这样搞出一些充满哲学意味的笑话。所以官方还直接建议新手就可着单字干,练熟了再突破词组。

Rg0ebX4fDo1WqDxCWmqccGZanZc可能,还是不可能,这是一个问题。 

学到现在,我的虎码历程才将将过了一个月,速度还没能达到之前使用五笔的最快速度,但已经可以正常交流、工作。我也还要时不时打开虎码的官方网站,给自己的字根记忆做做检查。学会虎码带给我的「成就感」其实不如五笔那么明显。从双拼到五笔是从 0 到 1 的变化,而当我去考虑方案之间的优劣,比较得失,就只是从一能进步到一点几的差别。一套新方案可能会让我平常用着更顺手,但这种变化很难比得上初入形码世界的乐趣。

这也是有人建议想入门形码的人直接学五笔 86 即可的原因。即使你会了一个很高级的输入法,换一台电脑、换一个环境,免不了就是一顿重新设置。即使五笔 98 和新世纪明确地修正了不少错误,只要你用的不是 Apple 设备,默认五笔就只有 86 一个选项。

但以后,每当我打出不用选字的去、云、支,用一级简码打出都、就、也、到时,我都会为自己会一款比五笔更现代、更好用的形码而开心。

关联阅读

> 下载 少数派 2.0 客户端、关注 少数派公众号,解锁全新阅读体验 📰

> 实用、好用的 正版软件,少数派为你呈现 🚀


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK