机械键盘不会让你打字快多少。最多快几个WPM,很可能一点都不快。它能让长时间打字更舒服,让每次按键的反馈更清楚,这可能有助于准确率,但速度来自你的手和你的练习,而不是轴体。
每个键盘论坛上都有人问这个问题,大致是这样:“我用笔记本打字65 WPM。如果买一把线性轴的机械键盘,能快多少?”我们宁可回答“几乎不会”,也不想向你推销这篇文章讨论的东西。
更详细的回答要有意思得多。键盘改变的是打字的手感、你能舒服地打多久,以及房间里的声音。按我们的测量方式,机械键盘打字速度大体不在会改变的东西之列。
轴体到底做了什么
机械轴有一个在轴壳里向下移动的轴心、一根把它推回来的弹簧,以及一个在行程某一点闭合的触点。厂商会公布描述这套运动的参数。
触发键程(Cherry称之为预行程)是按键在被识别之前移动的距离。Cherry的MX2A红轴在总行程4.0 mm中的2.0 mm处触发。它的Speed银轴在总行程3.4 mm中的1.2 mm处触发。剪刀脚,也就是大多数笔记本电脑用的那种,总行程通常在1.0到2.5 mm之间,一些笔记本用过的蝶式结构则不到1 mm。
触发压力是按到触发点需要用多大的力。上面两款Cherry轴都需要45 cN,约合46克力。更轻和更重的弹簧都很常见。
手感取决于压力曲线的形状。线性轴的曲线平滑,在触发点没有任何变化。段落轴在触发前有一个段落感,所以手指能感觉到按键在哪里被识别。有声段落轴(俗称青轴)另加了一个机构,在同一点发出清脆的“咔哒”声。
分类就这么多。其余的都是调校:弹簧重量、轴心材料、润滑,以及上面键帽的高度和造型。
为什么触发键程对速度几乎没有影响
打字80 WPM的人每分钟按键约400次,每150毫秒一次。Dhakal等人2018年分析了168,960名志愿者的1.36亿次按键,测得两次按键之间的平均间隔约为239毫秒。假设一个更浅的轴每次按键能省0.8 mm行程,大约就是上面两款Cherry轴的差距,再假设手指以每秒100 mm的适中速度走过这段行程。那就是每次按键省8毫秒,相对于150到239毫秒。百分之三到五,而且前提是每次按键都省满这么多。实际上省不满,因为快手不会等一个键弹回来再开始按下一个。
这项研究的计时数据从另一面说明了这一点。区分快手和慢手的是滚键(rollover):在松开上一个键之前就按下下一个键。所有志愿者的平均滚键比例为25%,大多数快手有40%到70%的按键是滚键。发生滚键时,两次按键平均重叠30毫秒。这是打字者双手的特性,也取决于键盘能否识别重叠的按键,而与按键行程长短无关。
所以,唯一一个看得出能影响速度的硬件特性,就是下面这个。
滚键、全键无冲(NKRO)和鬼键
键盘必须在上一个键还按着的时候识别下一个键。几乎所有键盘在两个键时都能做到。有些便宜的薄膜键盘和笔记本采用的按键矩阵,可能会误读某些三键组合:漏掉一个键,或者在没按的地方冒出一个幻影按键,这叫“鬼键”(ghosting)。机械键盘一般宣传支持全键无冲(N-key rollover,NKRO),也就是每个键都独立检测,或者至少支持标准USB启动协议的六键同时按下,对打字来说绰绰有余。
对打字的人来说,实际的检验方法是:快速连打常见字母组合(“th”“er”“in”)时,会不会漏字母。如果会,这就是换键盘的一个真正理由:被漏掉的按键,等于一个你没犯却未被更正的错误。
滚键对我们还有另一层意义。我们的反作弊检查会看计时特征,其中包括你的滚键比例,而打字快的真人几乎总会有按键重叠。你键盘的滚键能力,在某种小小的程度上,就是你是真人的证据。详情见我们如何检测作弊。
打字用线性轴、段落轴还是有声段落轴
就我们读到的资料,以及我们当中几个经常换键盘的人的逐键统计来看,差别体现在错误率和舒适度上,而不是速度。
段落轴往往能减少“触底”,因为段落感告诉手指按键已经触发,你就可以抬起了。长时间打字下来,这意味着每次按键用力更小、更不容易累。有些人觉得段落感会打断节奏;我们没有见过任何对照数据表明哪一组更快。
线性轴手感顺滑,在把打字当运动的人当中,有“快”的名声。如果这名声属实,那很可能是选择效应:竞技打字者喜欢没有任何阻断的按压,而他们用哪种轴都会很快。
有声段落轴给出的“已触发”信号清晰无误。对学习打字来说,尤其是离基准行较远的数字和符号,这个信号很有用,这也是我们唯一会建议初学者选有声轴的情况。在共享办公室里,我们会劝你别用,原因与打字无关。
据我们的经验,真正会改变错误率的是键帽高度和造型,以及键距。从笔记本换到一把行程约为两倍、键帽带弧度的机械键盘,手指的落点会变一两周。成绩页面上最常按错的键的热图,会在你手指够得到的边缘那些键上亮起来。过一阵就会稳定下来。这也是为什么我们建议在考试打字测试前两周不要换键盘。
声音,以及我们为什么用合成音效
键盘的声音对人的影响比人们愿意承认的大,我们的音效包就是围绕这一点做的。
浏览器里的任何打字音效都必须解决延迟问题。比按键晚几十毫秒才响的声音比没有声音还糟,因为你的耳朵会听到一个手指并没有打出的节奏。算起来毫不留情:以80 WPM计,两次按键相隔150毫秒,所以一声晚了40毫秒的“咔哒”,已经走到了离下一次按键超过四分之一的位置。有些延迟来自页面,我们能解决;有些来自无线耳机,它们自带延迟,任何网站都消除不了。如果用无线耳机时觉得按键声慢半拍,试试笔记本自带的扬声器。
我们的十二个音效包(soft click、thock、tactile、linear、clicky、typewriter、pop、beep、pentatonic、piano、bubbles和marimba)是用Web Audio API在浏览器里实时生成的,而不是播放录音。没有需要下载或解码的音频文件,所以页面加载后的第一次按键就有声音,第一千次也一样,延迟相同。声音在keydown时触发,而不是在随后的input事件时,因为keydown是浏览器最早得知有键被按下的时刻。10月份有反馈说音效包太小声,我们重新调整了增益。现在默认音量对应的主增益至少为0.45,每个音效包最响的声部在限幅器之前峰值达到0.6或以上,单元测试会检查音量曲线和每个音效包的峰值,确保它们不会跑偏。
“thock”和“clicky”这两个音效包,模仿的是人们谈论轴体时所描述的声音:前者是低沉、闷住的敲击声,后者是带高频成分的更清脆的咔哒声。它们只是近似。合成的咔哒声永远不会像黄铜定位板上润过的线性轴。这些音效包是给笔记本用户,以及想要反馈又不想买硬件的人准备的。
错误音效是单独的,学习阶段我们建议开着:一个闷闷的低音,加上一下短促的噪声敲击,刻意做得很钝,这样连续出错时也不会变成警报声。
真正能改变打字速度的是什么
我们会这样排序。
- 练你薄弱的字母组合。在2018年的数据中,打字者在左右手交替的字母对之间切换的快慢,与速度的相关系数为r = -0.72。任何键盘都改变不了这一点,练习计划可以。
- 准确率。净WPM只计算完全正确的单词,每次更正都要花一次退格和一次停顿。具体算法见准确率那篇文章。
- 指法。在40 WPM时管用、却把你卡在60的手指分工,比任何硬件限制都常见。在逐键统计里,它表现为某一个键的间隔比相邻的键长得多。
- 滚键。如果你的键盘在快速连打时漏键,就换掉它。否则就没问题。
- 键盘的其他一切:轴体类型、触发键程、键帽材质、外壳。影响舒适度、手感和声音,不影响速度。
所以我们会告诉那位用笔记本打65 WPM的人:想买键盘就买,但要指望数字上涨,靠的是你在上面练了什么。
打字用什么轴最好?
第一把机械键盘,可以选一把87键(无数字区)或75%配列的键盘,配一款口碑好的段落轴或线性轴,弹簧轻到中等,厂商要公布触发参数并支持全键无冲。如果可以,买之前先试轴。“我喜欢段落轴”和“我讨厌段落轴”之间,只差在试轴器上按一分钟,没有人能替你预测。如果你写代码,可以考虑分体键盘或带符号层的紧凑键盘;那更多是布局上的收益,而不是轴体上的,我们的程序员的盲打讲了这一点。
如果你一分钱都不想花,就在本站打开“tactile”音效包,打开错误音效,然后做一次打字测试。键盘能给你的,大部分就是这种反馈;而你现有的键盘几乎肯定已经支持滚键。快速打一串“the the the”检查一下。
常见问题
机械键盘能提高打字准确率吗?
能,稍微提高一点,主要是靠更清楚的反馈和长时间打字时更少的疲劳。手指适应新的行程和键帽形状期间,预计会有一两周错误增多。
触发点越浅就越快吗?
最多每次按键快几毫秒,而按键之间的平均间隔约为239毫秒。滚键技巧重要得多。