最初,打字机的键盘是按照字母顺序排列的,但如果打字速度过快,某些键的组合很容易出现卡键问题,于是克里斯多福·萧尔斯发明了QWERTY键盘布局,他将最常用的几个字母安置在相反方向,“在不至卡住的前提下尽量提高打字速度”。授斯在1868年申请专利,1873年使用此布局的第一台商用打字机成功投放市场。这就是为什么有今天键盘的排列方式。
优化原则
文字输入习惯
目前文字输入习惯主要考虑中文输入、英文输入两种,毕竟各个语言有自己的常用语言符号,不可能全部统一。
其次中文输入只考虑拼音全拼输入,五笔和双拼输入这个人群相对少,以后再说。
键位布局会根据中文常用字、中文高频字的字母频次优先考虑。
英文则需要统计英文常用词、英文高频词。
符号方面主要是逗号、句号、冒号、叹号、问号、引号的分布。
快捷键输入
在考虑文字输入之后,还需要兼顾常用的快捷指令,比如:PS等软件快捷键,所以优化的时候不但需要考虑到打字速度,也要考虑到一些常用快捷操作。
比如各种组合键在快捷键里面出现的频次,根据频次决定放置位置,以及组合键与英文组合时候的跨度应该被双手覆盖,且根据使用频次,调整组合键与高频英文快捷键之间的距离。
当前快捷键英文字母布局,主要是参考系统默认快捷键、Excel、PPT、Word、设计类软件如PS与AI等、开发类软件如python等、浏览器等操作快捷键。
左右平衡
键盘优化后的布局,应该是双手打字量基本平衡的。所以需要合理地对于键盘字母进行排列。
声母高频词主要居左,韵母居右,因为全拼中文输入习惯是声母+韵母+标点符号,所以尽量将标点置于左侧声母区,这样就会形成左手输入声母,右手开始输入韵母,左手输入标点的模式,防止科蒂键盘这种输入完韵母之后继续在右侧输入标点,但是左手闲置的尴尬局面。
指位优化
常规情况下,四指力度与灵活性排列是食指、中指、无名指、小拇指。大拇指位置另算。
所以键位排列需要考虑到将统计出来的高频字母优先放置于食指与中指上面,左手食指中指负责声母的高频输入,右手的食指中指负责韵母高频输入。无名指与小拇指补低频词。
因小拇指力量最小,且灵活性最低,要尽量减少小拇指的工作量,而食指更为灵活,则需要控制更多的按键。所以ZH配列中指无名指各控制一列按键,小拇指控制使用频次最低的按键,食指则控制一列中频次、一列低频次的按键。
在常规配列中,大拇指主要控制空格键,但大拇指是力量最强,且有一定灵活度的手指,只控制一个键位实在是太浪费。
位移与滑键
滑键输入常见于手机输入法,但电脑输入法可以引入相关理念,将高频连接字母放置于相邻位置,上下左右斜。
比如:中文输入中ZH、CH、SH,ZCS需要与H组合,AEIOU则与N、NG组合,所以这种需要集中处理。
键位设计逻辑上,左右滑键要对应高频组合,其次是斜位组合,最后是上下组合。因为左右滑键双指可以“无间隔”输入,斜位比左右滑键略长,上下滑键仅用一指,便会略微降低效率,所以优先级最次。
键位位移距离的计算,需要以左右手以及移位距离到八指原位的距离为标准。
硬件布局
错位键盘很大的一个问题就是盲打定位不精准,而直列键盘手指上下移动就可以很精准的定位到要按的地方,并且很容易就能恢复到手指默认位置。
参考数据
汉字
拼音输入中,几个特殊的声母,H、Z、C、S。Z、C、S可以分别和H组成声母,所以这四个需要尽量放在一起。
韵母里面A、O、E、I、U,是最基本的单韵母,可以相互组成复韵母,比如:ai、ei、ui、ao、ou、iu、ie、ue、er。还有和N的组合,比如:an、en、in、un。N也需要在单韵母附近。加上G,就有ang、eng、ung、ong的复韵母。所以N、G需要和A、O、E、I、U,放在一起。
整体认读音节:zhi、chi、shi、ri、zi、ci、si、yi、wu、yu、ye、yue、yuan、yin、yun、ying。
同声母组合频次从高到低为:T、D、F、N、B、M、CH、Y、L、SH、P、Z、ZH、W、H、S、C、K、G。
同韵母组合频次从高到低为:uo、e、ong、uan、ao、an、u、ai、ui、uang、ou、en、eng、ei、ang、ua、uai、un、a。
频次取样,九秋采用的是汉字常用表统计,避免了取样样本内容影响,因行业、习惯等原因导致统计结果出现偏差。
汉语常用字数据研究:1000个常用汉字能覆盖92%的书面资料,2000个常用汉字可覆盖98%以上,3000个常用汉字则能达到99%的覆盖面。
2501个常用汉字的热力图如下:

根据热力点图,依次减掉频次最高的字母,可以发现,热力点击顺序为:N、I、A、U、G、H、O、E、Z、J、S、Y、C、L、X、D、B、T、Q、M、F、W、P、K、R、V。这个统计结果与其他地方的数据差距挺大,但是按照逻辑上来说,这个更加合理。
再统计500个常用汉字:

拼音输入中,几个特殊的声母,H、Z、C、S。Z、C、S可以分别和H组成声母,所以这四个需要尽量放在一起。但是根据二合连击效率中,上下连击会降低效率,所以ZH配列将ZSC放置于与H不同列,这样在进行连击的时候,能提升输入效率。
韵母里面A、O、E、I、U,是最基本的单韵母,可以相互组成复韵母,比如:ai、ei、ui、ao、ou、iu、ie、ue、er。还有和N的组合,比如:an、en、in、un。N也需要在单韵母附近。加上G,就有ang、eng、ung、ong的复韵母。所以N、G需要和A、O、E、I、U,放在一起。但是根据二合连击效率中,上下连击会降低效率,所以将NG进行错位布局,这样既能保证连击效果,又能避免单指连击降低效率。在汉字拼音中i和a是ji、yi、za、ha、zhi、cha等的单元音,同时还做介音和韵尾,n直接构成所有鼻音韵尾,所以i,a,n的出现的频次高。而v是专门拼写外来语、少数民族语言和方言的,这些词或音出现的次数较少故v的频次较少。
通过观察常用字母i、a、u、o的发音方式,如a,我们在发此音时,只需“嘴唇自然张大,舌放平,舌头自然放置,声带颤动”可以说只需要靠嘴唇声带结合发生,发音难度低,但例如一频率较低音节“z”,则需要“舌尖抵住上门齿背,阻碍气流,让较弱的气流冲开舌尖阻碍,从窄缝中挤出,摩擦成音。”,同时需要牙齿、舌头、最初、声带多处配合完成发音,发音难度相对难度有所提高,倒排结论的顺序,不难发现出现频率较低的字母,大多数发音都较为复杂,需要多个口部器官配合。还一部分原因是中国古代采用切音记录读音,这也就造成了现代字母输入中某些字音成为高频输入音。
同韵母组合频次从高到低为:uo、e、ong、uan、ao、an、u、ai、ui、uang、ou、en、eng、ei、ang、ua、uai、un、a。对比ZH配列图,同韵母的高频组合在ZH配列中基本处于左右连击状态。对于二合连击,其实有两种方式,一种是ZH配列的单手连击,另一种是双手左右连击,但是后者很明显的一个问题就是:双手对于力量的控制并非完全均等,采用左右手连击的话,出错率会急剧上升。
同声母组合频次从高到低为:T、D、F、N、B、M、CH、Y、L、SH、P、Z、ZH、W、H、S、C、K、G。此处仅供参考。
可以明确的是,形成这种词频的原因有这么几点:第一,进入现代社会,简体中文语境中新增了部分专用词汇,比如“电、气”等,导致这部分字母频次变高;第二,古汉语转白话文的过程中,出现了很多高频字,比如“的、和、他、我”等;第三,关于高频词统计样本,选择的样本不同,所得到的结果也会有所差别。
总体来说,ZH配列对于中文输入是有着非常好的体验的。
英文
英文字母单词中字母出现频次依次为:E、I、A、O、R、N、T、S、L、C、U、P、M、D、H、Y、G、B、F、V、K、W、Z、X、Q、J。对比ZH配列,可以明显看出对于高频字母位置一般是位于食指、中指、无名指位置的。而对于低频字母,基本也是位于小拇指位列或者食指拓展位列。
另最常见的字母对是TH、HE、AN、RE、ER、IN、ON、AT、ND、ST、ES、EN、OF、TE、ED、OR、TI、HI、AS、TO,最常见的连写字母对是LL、EE、SS、OO、TT、FF、RR、NN、PP、CC。对于英文高频连击字母,在ZH配列中,异字母连击均完美避开上下连击,同字母连击中,仅有TT连击位于小拇指位、RR位于食指拓展位。整体来说,对于英文连击字母的优化,ZH配列的表现也是极为优秀的。
另有一种统计频次:th、en、ng、he、ed、of、in、to、al、er、it、de、an、ou、se、re、ea、le、nd、hi、sa、at、is、si、on、or、ar、nt、ti、ve、ha、as、ra、es、te、ld、st、et、ur。ZH配列依旧有着不俗的表现。
符号
在考虑文字输入之后,还需要兼顾常用的快捷指令,比如:PS等软件快捷键,所以优化的时候不但需要考虑到打字速度,也要考虑到一些常用快捷操作。
比如各种组合键在快捷键里面出现的频次,根据频次决定放置位置,以及组合键与英文字母组合时候的跨度应该被双手覆盖,且根据使用频次,调整组合键与高频英文快捷键之间的距离。
当前快捷键英文字母布局,主要是参考系统默认快捷键、Excel、PPT、Word,设计类软件如PS与AI等,开发类软件如python、JAVA、PHP等,浏览器等操作快捷键。
在这方面,Dvorak配列就做的一般,虽说对于程序员群体更为友好,但是对非程序员就很别扭了。XCVSZ五键,在Dvorak配列中过于分散,而在ZH配列中XCVSZ五键,集中于左手后两行,便于与Ctrl键等组合使用。
顺便补一句:Dvorak配列于1932年完成,之前为适配程序员使用符号键,数字区被强制打乱,Dvorak配列虽然为程序员群体创造了便利,但这种便利确是以损害其他群体的便利为前提。在现如今键盘圈,Fn切层基本已经成为标配,打乱数字区,为便于输入符号已经没有任何意义了。
快捷键
除了一些基本输入之外,软件的快捷键也很影响操作,至于说修改程序的默认快捷键,这个也是不现实,所以需要将常用的快捷键置于更加方便的位置。
比如Ctrl键、Shift键、Alt键、space键、Tab键、Caps Lock键等。前三个在快捷键中经常出现,而后三个很少用于快捷键,特别是Caps Lock键,主要就是切换大小写,这个主要是因为英文需要首字母大写所以才出现的频次比较高,实际上这个键并不常用,但是还是占着一个比较好的位置,需要给调节到其他位置。
配列键位数
以人体平均数据以及常规键盘数据分析:成年男女的除拇指外的手指平均长度最佳舒适区仅能控制三行按键,在与大拇指并行操作中,不对手掌进行明显位移的情况下,控制的极限只有四行按键。而四指左右两侧拓展的极限距离为一列。大拇指半弧形控制区,内侧为收缩时与中指交接处,外拓极限到拇指最大化张开,为五个键位的控制区,微动调整可额外增加两个控制键。综上所述,分体直列键盘单手控制区域为:6×4+6=30,双手键盘为60键。而单体键盘或错列键盘因为较为不适的操作角度而导致控制按键的减少。
过多的键位需要手掌进行位移,过少的键位,对于手指的功能性略有浪费。
键盘对比
QWERTY,音译为柯蒂键盘,是各国使用的、基于拉丁字母的标准打字机和计算机键盘布局。“QWERTY”为该键盘布局字母区第一行的前六个字母。键的顺序由十九世纪美国发明家克里斯托弗·肖尔斯(Christopher Sholes)在1870年代初期设计。
传统的科蒂键盘本来的目的就是降低打字速度,这个就不分析了。
是1988年之后广泛在电脑和打字机上使用的键盘配置。它的名称来自键盘字母区第一行的首六个字母:Q、W、E、R、T和Z。
广泛用于使用拉丁字母的东欧、东南欧和中欧国家。没有太大对比意义。
AZERTY是一种源于法国的打字机和电脑键盘的键盘布局。“AZERTY”是该键盘布局字母区第一行的前六个字母。它是仿照英文电脑键盘键盘QWERTY布局。于1907年提出了“ZHJAYSCPG键盘”,但于1976年克劳德·马尔桑设计安排顺序成AZERTY。现主要用于法国和比利时,卢森堡和瑞士的法语居民使用QWERTZ键盘。而在加拿大魁北克省的法语居民大多已经习惯使用QWERTY键盘。
主要用于法语,没有太大对比意义。
优点:
以英语为切入点。
兼容用户人数更多的右撇子,右手输入强度提升,减少左手压力。
二合字母应当由不相邻的手指输入。
缺点:
对于中文并不是很友好。
并未兼容更多的二合字母。奥古斯特·德沃夏克之所以认为二合字母相邻影响打字速度是因为二合字母同一手二合字母上下位置会降低打字速度。但是双手对称位以及左右临位并不会影响打字速度。
较为无力的左手的无名指位和小拇指位负责AO以及符号,也是不合理的。
常用快捷键的“CXVZS”过于分散,不利于操作。
此键盘是1930年代期间设计,有点缺点很是正常。
碎碎念
QWER布局的键盘已经用了很多年,再去改变的时候,之前形成的肌肉记忆,会使输入即为难受,但可以保证的是,一旦形成新的习惯,对于输入效率来说会有一个质的飞跃。
欢迎针对本文提出修改建议,但是诸如已经习惯之前的键盘之类的话,休要提起。这跟数百年前那些喊着祖宗之法不可变的人有什么区别?
数据来源
按键点击
键盘热力点击图:英文版的,用于检测各个输入按键在各种键盘上的热力点击图。
在线字符频率统计:用于统计字符数,包括字母、数字、汉字、符号、词语等等。
快捷键
Common Shortcuts:软件快捷键大全。
Win系统快捷方式:Windows 的键盘快捷方式,Microsoft支持。
参考资料
- 字母频率·[维基百科]
- 计算机语言字符频率·[Xah键盘指南·2013年05月23日]