这文章年久失修,请到 为什么 Emacs 用户爱德沃夏克 查看最新版本。(讨论还是可以在这里。)
注:
第三个布局我已经重新改过,不影响这里的测试,实际上,变得更合理更强大了。Linux 上的安装指导: neo2015
(Qwerty 用户也可以体验第三 Level)
参考资料(建议先读这些)
- 什么是德沃夏克: 维基百科, 百度百科
- 说说qwerty、dvorak、colemak三种键盘布局
- Programmer Dvorak Keyboard Layout
- About Neo: Neo官方, Wikipedia: neo
- Steve Yegge:编程的肮脏小秘密 - 博客 - 伯乐在线
- 键盘史上的 12 个典范 - 开源中国社区
TOC
- Several Points from Refs
- 为什么程序员需要德沃夏克
- Extended Programmer Dvorak
- 评测 qwerty,dvp,dvpe
- How To Get It?
正文
Several Points from Refs
- 目前,世界上最快的英文打字速度是在 Dvorak 键盘上创造的。但 Dvorak 键盘没有流行起来,世界上最通用的键盘还是 QWERTY 键盘。
-
学术界对这个事件存在争论。有人认为,这表明市场存在缺陷,由于用户的惰性,无法推广更有效率的技术。但也有人不同意这种说法,认为 Dvorak 有更快的打字速度纯粹是一种神话,没有任何证据可以表明,Dvorak 键盘显著地快于 QWERTY 键盘。
-
估计某个程序员发现用 dvorak 布局很爽,就将之变得更加极限。于是出来这么一个 Programmer Dvorak Keyboard Layout, 它包括dvorak 键盘的所有缺点, 但优化了程序中常用符号如
$
;
(
)
{
}
[
]
=
等,用来 coding 巨爽 -
Neo 通过加入一个 Level 把
Enter
,Backspace
,方向键等加入到了手指下,再也不用右手小指去摸回车删除了。
再不用为 Emacs,Vim 蛋疼的方向快捷键忧愁了(方向快捷这个想法显然很好,但是两者实现都略蛋疼,用 neo 这种更底层的方式的优点是显而易见的)
为什么程序员需要德沃夏克
- 编程方便
- 手指不疼
-
纵小众,也是世界第二大键盘布局群体
Qwerty-Dvorak.PNG - 有时候我会很累地看人打字手指上下翻飞,他一定觉得自己很熟练。但好的键盘用起来像流水般自然,不需你那样累自己。而我跑机房或者别人电脑上,也没法盲打(如果电脑没网我不能下自己的键盘布局的话),像个白痴,对此我也不想解释太多。用 考拉小巫 的方式就是:你懂什么?!我用 Linux 和 Dvorak 还被 IE 用户评价为杀马特。。。擦,彪悍的人生不需要解释。
- 键盘是自己用的,换了布局你打出来的也不是火星文
- Neo, 不能更赞。
Extended Programmer Dvorak
根据 Dvorak 的几个缺点(相比 qwerty 几乎可以忽略),我定制了优化的 Programmer Dvorak, 美其名曰: Extended Programmer Dvorak
如图:(dvpe0.2,旧版本)
octave - dvp
octive - dvpe
Jane
Jane - qwertyJane - dvp
Jane - dvpe
Wood
Wood - qwertyWood - dvp
Wood - dvpe
C++
C++ - qwertyc++程序中有太多的符号,导致qwerty简直没法用
C++ - dvp
C++ - dvpe
Python
Python - qwertyPython - dvp
Python - dvpe
-
总结
- qwerty 不论在文学小说、科技类文章,c++、python 代码的输入上,和德沃夏克都不在一个层次;
- dvpe 效果比 dvp 稍好。
How To Get It?
-
For windows Users
- I made one by Windows Keyboard Layout Creator 1.4,
- Download my keyboard layout installer here:
dvpe0.3 for windows (installation guide inside), or Basic DVPE
附
-
一开始不适应是正常的,
请暂时忽略指法的不熟悉,
体会其 rhythm 好在哪儿
全文(old) jpg: 2.2M -
刚看 Sacha Chua 采访 Xah Lee,Sacha 说 :(NEO!!! Sacha 果然是我女神。
2014-05-07
)
"it's funny that how the keyboard influences how we work" , "dvorak" blah blah blah, "the third level of the neo layout, apparently is really good for programming. Eh, more layout, eh, and more code. Oh, back to Emacs"(20:10)。
hunt and peck
-
为了更好的输入中文,做了单字输入法:gat。暂时只能在 Emacs 里使用。
2014-04-27
-
dvpe0.3 发布 (a.k.a. neo-extended dvpe)。
2014-03-18
也支持 qwerty 和 programmer dvorak 布局 (Level 3 一致)
Neo-extended DVPE
Level 1
Level 2
Level 3
log: $1. 2014-03-04; $2. 2014-03-05, release; $3. 2014-04-14; $4. 2014-04-27, gat; $5. 2014-06-09; $6. 2014-06-10; $7. Sun Jul 20 22:02:33 2014; $6. Sunday, January 04 2015; $7. 2015年 01月 26日 星期一 00:52:46 CST;
网友评论
1,电脑重启后Extended Program Dvork布局消失,在输入法菜单里找不到,增加输入法项里也没有这一项了,只能重新安装才会出现。
2,我看win版的安装文件名前缀有“neo”字样,win版是否也支持neo,如何使用,我不知道怎么调用 level 3布局,而且 level 1、2布局也与你文章里给的不一样(是不是按住shift就是level2布局?)
3,能否做几张你的键盘布局的高清大图,我用来做桌面背景
因為linux的太難用 我換成programmer dvorak
但是開始功能表的搜尋卻還在dvpe
Indie Game 里 Braid 的作者站着用 Malt 打字,看上去就不错,手和脊椎的问题都解决了。
就因为这个问题,所以才有人体工学键盘,把中央抬起,然后尺骨桡骨自然分离这样的键盘。过一段时间,我打算买个试试看。
其实当初发明德沃夏克键盘的,还有个MALT键盘,你也可以搜索下。他的键盘布局比德沃夏克还合理。但已经不是普通的键盘构造方式了。而且中央凸起。
你可以看看这个blog的介绍:
http://blog.sina.com.cn/s/blog_50d6814901014nvl.html
我倒不认为,打字快难以接受打字慢,这个不是类似奢入俭这样的很严重的心态问题。主要还是一个需求变化。程序猿写代码毕竟不是打字员、记录员这样的工作,机械的去记录。像我,以前写代码也是全靠输入,我在学校的时候也测试过,在200到250个英文字符一分钟是轻松的事情。
工作久了发现,输入快了也不是好事,因为有时候会影响思路。就会造成,速写会有写了再删的问题。逐渐工具成熟、架构成熟,写高质量的代码越来越容易,高质量意味着简单有效。
后面逐渐,还是特别注意防止职业病方面了。不能再因为写代码弄的一身毛病了。有时候一点小细节也会弄的浑身不舒服。
因为按住键特别累,有段时间对死键(dead key,sticky shift 之类)很热衷,不过后来不用了。
我觉得打游戏和打字完全是两码事。
打字慢本来也没有什么太大的问题,打的快的比如 100 WPM,比打的慢的比如 20 WPM 其实也就差了 5 倍。但是一旦打快了,你就不能接受打字慢,就跟教老年人用电脑一样,你会觉得他们简直蜗牛,浪费生命。
https://github.com/alols/xcape
我不知道你现在的年龄。但我今年34了,十几年的编程生涯。我现在才感觉到,不是手腕以及手指难受。一看电视、电影上,那些噼里啪啦打字的所谓的“黑客”,我就感觉很恶心。其实程序猿打字很轻柔,是用最小的力度按下按键。手指的移动距离也是最小幅度的移动。
其实手指的损伤并不是最难受的。而是肩膀靠下的那块肌肉,也就是肱三头肌。我现在就是时不时的用手按一按肩膀,揉一揉下面的肌肉。连带着,肩膀后面的肌肉也是很不舒服。
德沃夏克布局真的解决了一部分指头活动的问题,但我用习惯了vim,很不容易改了。后来我想,还是多让手脱离下键盘比较好一点。
我的经历让我知道,其实打字速度并没有提高水平,我曾经的一个同事,都不会完全的盲打,而且他左手用三个指头打字,大拇指、食指、中指。有趣的是,他a和s都是拇指在按,右手四个指头,不用小指。尽管是这样,他dota也玩的很好,工作也没有任何问题,代码一样写。
我更看重的是,不要让我在以后的人生,我的胳膊出现问题。所以我买了很多保护措施。
如果你感觉功能键的使用频率过高,比如ctrl或者shift,我建议你买一个USB脚踩开关,真的非常好用。手脚并用,解放你的小拇指。
不知道你ctrl怎么用的,别人用指头,而我是用手掌按的。但shift还要委屈小指,有脚踩就舒服多了。
我练习吉他,平时都有作延展训练,无名指小指都特别灵活,而且弹吉他无名指、小指使用频率还蛮高。但弹吉他就感不到肩膀难受,因为弹吉他的时候,姿势是可以调控的。但我们使用键盘,是一个固定姿势。
你或许会问,弹钢琴这样的乐器是不是也会出现问题,我会告诉你不会,因为钢琴会让手臂左右移动,控制手腕的肌肉、肌腱会控制骨头自然活动,而不是处于一个打字那样的固定状态。
我在下面说得用手指捏手腕的那种测试方法,你可以试一下。试试看肌腱还有肌肉的紧张度。因为人在打字的时候,手臂放的位置,如果手腕放到桌面上,就会造成那块两个骨头交叉的肌肉一直处于悬空状态。如果有手臂托,会好一点,但是还是会有紧张状态。手掌下趴打字,则两块骨头交叉,肌肉和肌腱就会紧张。长时间这个状态,会有损伤。
所以,我先把鼠标换成了立式鼠标。发现,右手的手腕甚至胳膊、肩膀都舒服了。只让尺骨和桡骨交叉,就会让肌腱紧张。其实时间久了,你会发现,尺骨桡骨交叉,手腕并不特别难受。是肱三头肌那块,还有肩膀那块会越来越难受。只要少用无名指、小指,或者手腕变成一个放松状态。
cro,感觉还可以。而且原来 jkl 的位置,变成了按住空格再按他们,会成为 Return,Tab,Escape(respectively),这个超赞~
然后你再往下一些,捏住两个骨头交叉的部位然后再上下活动小拇指,是不是你的肌肉在一下下的鼓动?然后你再动食指,是不是这块肌肉一点都不动?
德沃夏克布局主要目的就是让你多用食指,在中央区域操作。少用小指和无名指。
这不是够用就好的问题,如果真的是大量使用键盘的,如果能忍一下,修正这个习惯,是对身体有益处的。
如果看手臂的手腕部分的解剖图。我们手臂是“趴在”键盘的,手腕的肌腱因为两个骨头交叉的处于紧绷状态的。而且肌腱主要部位就是在手臂外部,所以食指的移动是不会阻碍这块肌腱的紧张和松弛的,但小指和无名指就拉伸这块已经被弄的很紧张的肌腱。使用的时间久了,胳膊外部甚至肩膀都会难受。