到底“双拼”是个啥?

本文首发于数码荔枝,原名 《到底「双拼」是个啥?听双拼输入法开发者给你说》


就在上个周末,我向一个新朋友推荐双拼输入法,他是那种对这方面从来没有关心过的人——就连“全拼”这个概念,也是在我向他介绍了双拼之后才知道的——“原来我一直以来用的叫做全拼(拼音)输入法”。

正是这件事情,促使我动手撰写这篇文章。作为一款双拼输入法的开发者,说实在的,当时我也很“捉鸡”,我们常说双拼效率高、双拼快、双拼有双辅,它比五笔简单,它还是拼音很容易上手……so what 🤷‍♂️对方可能根本不知道你在说什么。

我曾在《落格输入法从入门到精通》里写了这么一章 “什么是双拼”,不过寥寥数语,并没有很深入的介绍。

这一次,我就想试试看,用最简单易懂的方式,跟你说说到底“双拼”是个啥。

你正在使用的就叫“全拼输入法”

不论是“全拼”也好,“双拼”也罢(其实还有“三拼”你怕不怕?),这个“拼”,其实都是“拼音”的意思。所以不要害怕,你会拼音,那么这些就都不难。

什么是全拼呢?无非就是拼音需要打全嘛。

全拼的优势很多。比如全平台都有对应的输入法;比如几乎现代受过义务教育的人,都可以 0 学习成本上手,等等。

这里我想着重说全拼的“低效率”,它到底低在哪里?

1. 码很长

全拼是“变长”的。这里的“变长”是一个专业名词,意思是“有长有短”。比如“篆”,它的拼音是zhuan,5个字母;但“啊”,它的拼音就短到了a一个字母;更别说最长的,zhuang要6个字母才能代表一个字的发音!

2. 重码多

为什么人们说“五笔快”?就是因为它重码率低啊。拼音就不行,你输入一个shi jie,要的是“世界”,还是“师姐”?是“十届”,还是“视界”?同一个拼音组合下大量重复的同音词汇,给打字降低了效率。

3. 易混淆

全拼是「变长」的,又由于你在打字输入拼音时几乎不会手动输入分隔符号,那么结果就是输入法得靠语义自行分割你的拼音串,比如 xian是“仙”,还是“西安”?,ganga是“尴尬”,还是“刚阿”?由此就加重了更多重复候选的问题。

“西安”夹杂在各种“先”里

一个有意思的发现

实际上,你确实可以用全拼打字“很快”。

有一次我朋友在我旁边用电脑,他用全拼打字特别快,噼里啪啦,不光旁边人看着爽,他自己也真的感觉很爽,但挠了半天键盘,只打出了一行字。

这个情况很典型,以前我差不多也是如此,我们来分析一下为什么:

  • 首先,全拼拼音码长,决定了他要打一串拼音变成字,就要输入很多很多的英文字母;
  • 其次,对于拼音来说,要降低重码率,唯一的办法就是把拼音尽可能都打全;
  • 如果你输入的拼音不规范、甚至有错误,那么输入法就要帮你去“猜”,这就会进一步增加候选数量,从而降低效率。

什么,以词定字?抱歉,现代智能拼音输入法候选词是动态的,你老这样做,你的词库就炸了,最终的代价就是打字越多,候选越“傻”。

这里有读者可能会提出异议:我们全拼不用打全的,智能简拼了解一下。我反驳的观点是“全拼有简,双拼有辅”,你用简拼跟双拼比,那么双拼就用辅码跟全拼比,一样可以比过全拼。

试试双拼

那么,双拼是如何解决全拼的难题呢?

1. 固定码长

双拼的码长是固定的,用两个字母代表一个“发音”(拼音),这叫做映射。

你想想看,你按 1 个键,就代表了按下 3 个键,这样爽不爽?比如我们规定,你只要按了x,系统就给你替换成uang,那么我要打“光”,需要按什么键?——gx,你看,冗长的guang一下就变成了lj,你少按了 3 个按钮!

这就是双拼的根本。我们把那些长长短短的拼音,拆成“声母”和“韵母”本身(这里严格来讲,是拆成“声母”和“剩余的其他部分”),把“韵母”映射到固定一个字母上,这样,就可以用两个字母来表示任意拼音组合了!

那 zh ch sh 怎么办呢?——问的好,这三个特殊的声母也和韵母一样要进行映射的;另一个读者可能好奇的问题是,比如你angan映射在a上的话,你怎么区分谁是谁?我的答案很简单:不要这么做。😂 我们接下来就讨论这个问题。

2. 人为编撰

双拼和全拼另一个不同的地方就是,由于双拼是后天的按键映射,设计双拼的时候,自然可以跳开 qwerty 键位布局限制。

我们都知道,现在的键盘是为了英文输入而优化设计的,拼音虽然26个字母化了(别提还有那个奇葩的字母 ü我们一般用v代替),但用这样的键盘打字,终究对手是不好的。

双拼则可以像英文那样,针对常用的发音,来安排和设计更合理的布局排列,进而提升打字效率(手感)。

额外插一句,如果你实在不愿意接触双拼,但又想寻找提升全拼打字效率的方案,那可以了解一下 dvorak 键盘布局。

3. 拆分明确

由于双拼固定两个字母代表一个拼音,那么输入法不需要在内部对拼音字母串进行额外猜测和拆分,且可以看作输入的拼音,都是准确合法的完整拼音。由于没有了混淆,一定程度上降低了拼音的重码。

双拼的缺点也有,比如方案众多百花齐放(这也可以是优点),比如各平台支持度不同,再比如要一点点学习成本——普通人自学上手时间大概一天左右,大家可以参考自己的学习能力来估算,基本上最长不超过一周。

打几个字试试呗

总之,究竟双拼好不好?能给我们节省多少时间?还要靠实际说话。我们来看一个典型的「纯双拼」对「纯全拼」输入的对比:

全拼:

双拼(大牛双拼方案):

可以明显看出,双拼的典型缺点,就是视觉上一眼看不出作者在写什么,但双拼真的好整齐😱……

这里我们可以数一数,全拼一共用了两行共计 123 个字符,双拼则是两行 87 个字符(统计来自 BBEdit)。

双拼比全拼少敲击键盘 30% !这是在输入法完整命中的情况下,即你输入了字母串,一次按空格就出结果。如果是一个比较生僻的人名或者专业名词,同样的重码率,双拼依旧可以比全拼少打很多按键。

比如行文至此,全文 2281 个字,双拼只需要 4562 个字母击打(不算空格) ,全拼则需要粗略 7000 多字母(Google 翻译转拼音去掉空格,用 BBEdit 统计字符)。

当然,全拼不得不考虑到简拼的情况,双拼也可以有简拼命中,那么我们减去 1000 ,双拼依旧粗略优势 25%。

假设你平均每 0.5 秒按一下键盘按钮,那么行文至此,就需要 4562 x 0.5 = 2281 秒,aka 38 分钟。得了,其实我目前已经用了3小时。

全拼呢? (7000 – 1000) x 0.5 = 3000 秒,aka 50 分钟。显然这个时间实际上两者都还要翻个几倍,但比例可见一斑。

慢就是快,少就是多

信息爆炸的当下,你可以轻易获得任何知识,但能消化掉的,才是你自己的,千万不可以贪多。

双拼这事也一样,什么辅码、什么码表,刚上手时通通不要去理会,就用基础的双拼方案。等你熟悉了,再去了解进阶内容。

这一点,我太有资格来讲了,好多新用户会卡在这一步,很痛苦,怎么用都不舒服——最终的结果是不小心挂载了码表、开启了辅码……这些高级的东西是很厉害,但掌握它们需要一点点时间,尤其是对新上手双拼的你来说。

总之,选择一个双拼方案,立即开始打字吧!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

42 − 40 =