Dvorak(德沃夏克)键盘中文初体验前文书中有人问到“不知道,输入中文和拼音,这个键布局还能那么方便了么?” 我们都知道中文拼音和英文单词是有很大不同的,但是呢,具体造成了哪些问题,是需要通过实践来研究的。毕竟德沃夏克博士毕生的研究心血不是一句行或不行就可以下结论的。 德沃夏克的设计思想,简单来说将最常用的字母放在最好用的位置,同时促进两手交替工作。实现的方式主要是通过精心设计的Home Row。据说德沃夏克键盘仅仅通过Home Row就可以输入300个单词,Qwerty 使用Home Row只能输入30个。同时他将最常用的元音放在Home Row的左手边,最常用的辅音放在Home Row的右手边,由于英文单词绝大多数同时包含有元音和辅音,这就促进了两手交替输入,而两手交替的速度远比单手快,而且也更加不易出错 (想想鼓手们的精彩动作吧)。 Dvorak 键盘概述Dvorak键盘是August Dvorak (1894 - 1975) 在二十世纪三十年代发明的一种异于QWERTY的键盘布局。下面是一个德沃夏克键盘布局示意图,深色按键表示德沃夏克键盘上与QWERTY不同的按键,浅色按键表示与QWERTY相同的按键。 我从2004年底开始从QWERTY转向德沃夏克键盘。在开始转变时,我把德沃夏克键盘的画在一张十六开纸上,贴在墙上,当想不起来按键位置的时候就看看这张纸。这张纸就贴在这张照片里我左手后边墙上,墙上的痕迹正是这张纸的遗骸。一个星期之后,我就基本转变过来了。我没有想到转变得会这么快。后来为完成一个作业,我写了一篇介绍和推广Dvorak键盘的文章,在这里可以下载: PDF LaTeX 那时候,我用电脑时间长了手腕会痛。使用Dvorak键盘后,尽管我用电脑时间没少,但手腕却再也没有痛过。 键位频率统计有统计证明用德沃夏克键盘输入英文远比QWERTY键盘科学和快捷[2]。下面我要证明对于输入汉字,这个结论依然成立。 拼音输入法是最常用的汉字输入法。统计文本有两篇,一篇是一篇网络上一个人写的拼音网络日记,另一篇是国标2312所有汉字。我统计了用全拼输入这两篇文本时每个字母在Dvorak键盘和QWERTY键盘上的分布频率。统计用Python脚本、老版本,简单的Bash脚本。 Dvorak键盘中间行累计频率最高,其次是上面行和下面行,而QWERTY键盘累计频率从高到低依次是上面、中间和下面行。这两篇拼音文字虽然内容完全不同,但是统计结果却很相像。Dvorak中间行占到了70%之多,而QWERTY的中间行只占到了35%。按起来最不舒服的下排,Dvorak只有12%,而QWERTY则占了22%。 这个计结果告诉我们,在Dvorak键盘上用拼音输入法输入汉字,要比QWERTY更快,更舒适。鉴于这样的结果,以及我使用德沃夏克键盘这么久没有问题,不想继续被QWERTY键盘折磨的人就不要犹豫转变了。 下面是对一篇拼音网络日记的统计结果。 表1:一篇拼音文章在Dvorak键盘上的分布
表2:一篇拼音文章在QWERTY键盘上的分布
下面是对GB2312中所有汉字拼音的统计结果。 表3:GB2312汉字拼音在Dvorak键盘上的分布
表4:GB2312汉字拼音在QWERTY键盘上的分布
Windows下使用德沃夏克键盘如果是英文输入,那么选择美国英语的Dvorak布局就可以了。 如果要用中文输入法,在开始菜单的运行里面输入regedit后回车,找到\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts,中文输入法一般在这个目录的最后几项,简体中文输入是E0XX0804等(中文美式键盘是00000804),繁体中文是E0XX0404等。把输入法的Layout File的值由kbdus.dll改成kbddv.dll。注销并登录后,中文输入法的键盘布局即成为了标准的德沃夏克布局。如果中文输入法没有bug,那么就可以正常地使用Dvorak布局了。某台计算机上,紫光拼音输入法V6和谷歌拼音输入法支持正常;搜狗拼音输入法改后是乱的布局;微软拼音2003、2007皆不支持。 由于不同中文输入法处理键盘布局的方式不同,不同的Windows程序对键盘布局的处理也不同,一劳永逸的办法是改键盘的ScanCode Map。在\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layout里面新建一个叫ScanCode Map的二进制项,并将内容设置为Dvorak相关的项。运行这个注册表编辑文件即可,运行这个文件恢复到QWERTY布局。运行完这两个脚本都要注销后重新登录才有效的。(感谢网友Jakukyo Friel) 改系统的ScanCode Map的话,原来输入法的键盘布局都不要改变,必须保留kbdus.dll,如果改成kbddv.dll再改Scancode Map就会乱了。 改系统注册表需要管理员权限,还需注销并重新登录才能生效。另一种方法是使用AutoHotkey,执行这个脚本后,即可切换为Dvorak键盘;退出AutoHotkey即可切换为QWERTY键盘。这样无需修改注册表即可方便地在Dvorak和QWERTY间切换。感谢网友Jakukyo Friel提供信息来源。 关于Dvorak键盘的不正确的想法
|
|