首页 > 代码库 > 2年后,还是放弃了programmer dvorak
2年后,还是放弃了programmer dvorak
写下此文纪念我长达两年的dvorak(以及programmer dvorak,下面都统称dvorak)的使用历程,也给想转换到dvorak的童鞋一些参考经验。
具体的开始时间记不清了,应该是大二的某个时候。那时正是喜欢折腾的时候,折腾过一众linux发行版,ubuntu,xubuntu,fedora,opensuse,还有傻傻装个puppy,做启动U盘到图书馆用那硬盘只有16G的瘦客户机,体验着残缺不全的系统,还不能上网,当时还觉的特自豪。
就是那时听说了dvorak, 这感觉就像高二的时候初识fedora的感觉,觉得这世界除了XP之外,怎么会有另一个系统;这世界除了qwerty之外,怎么会有另一种键盘布局。然后就疯狂的学习,使用,抠键盘。那时候没有想过装B什么的,但每当别人想用我电脑然后不会用时,心里会有种喜滋滋的感觉。看,你们还在用着落后的qwerty,每天得浪费多少时间,手指得多累啊。
后来又听说了programmer dvorak,然后又在这条路上前进了一步。这时,已经不能抠键盘了,就去X宝淘键盘贴纸,把符号和数字小心翼翼的剪开,然后贴上去。原来的双拼不能用了(候选词要用数字键选,而programmer dvorak默认上屏的是符号),又搜到rime,这个输入法真的很强大,但我只用它做了一件事,敲{的时候上屏第5个候选词,敲}上屏第3个,其余类推。这时候,虽然觉得麻烦,还是觉得,这些基础的东西会陪伴一生,值得折腾。
这期间,体会了dvorak的优点,输入英文的时候真的很顺手,因为dvorak本来就是为英文输入优化的。在敲代码的时候感受很深,最简单的int,都在中排,手指都几乎不用移动。而qwerty下你试试就知道多难敲了。我做过java关键字的在两种布局下的输入难易对比。占了大半都是dvorak敲得顺,然后也有些even(两者差不多),而只有3个是qwerty下敲得更顺的:finally, for, if。这很大原因是因为dvorak下f被放在了反人类的y(qwerty下)位置。
qwerty | even | dvorak |
abstract | ||
boolean | ||
break | ||
byte | ||
case | ||
catch | ||
char | ||
class | ||
const | ||
continue | ||
default | ||
do | ||
double | ||
else | ||
enum | ||
extends | ||
final | ||
finally | ||
float | ||
for | ||
if | ||
implements | ||
import | ||
instanceof | ||
int | ||
interface | ||
long | ||
native | ||
new | ||
package | ||
private | ||
protected | ||
public | ||
return | ||
short | ||
static | ||
super | ||
switch | ||
synchronized | ||
this | ||
throw | ||
transient | ||
try | ||
void | ||
volatile | ||
while | ||
不得不说,这很好,因为敲代码占了我使用电脑的一大半时间。但是,除此之外,就真的没什么优点了。相反,遇到了重重阻力,列举如下。
- 适应,习惯英文输入的过程其实没有那么痛苦,因为敲代码时真的会顺手。大概两个星期就适应了。中文的输入倒是更麻烦,搜索过后,知道没有为dvorak优化的中文输入法。于是,我就继续使用原来的双拼,开始是使用qwerty的双拼,但是中文使用qwerty,英文使用dvorak太难适应,所以改成了全局使用dvorak,又是重新适应一翻。真佩服我当时是怎么在dvorak上适应一个为qwerty设计的输入法,所以也造成了很多佶屈聱牙的敲法。比如,‘在’,需要右手小拇指先敲1栏再敲3栏。‘们’,同样也是右手食指先敲1栏再敲3栏。候选词左右换页倒是方便,使用,(逗号)和。(句号)。很方便,值得一题。
- 中国银行网银不好用,网银的安全机制强制使用qwerty布局,适应了一阵。
- 和童鞋和老师不好交流,windows下无解。windows必须替换kbdus.dll,只有这样,中文的双拼才会用dvorak布局。arch下修改/usr/share/ibus/component/rime.xml里面的<layout>us</layout>,us改成dvp。记得ibus->preferences->advanced下,不要勾选Use system keyboard layout。这样rime就使用dvp了, 然后添加其他需要的键盘布局,如qwerty。mac下不存在这个问题,因为会自动记忆上次的英文布局,从dvorak切换到双拼,那么双拼默认使用的就是dvorak布局。所以,如果你真的想用dvorak,买个mac吧,这是最省心的做法。但事实是,正是mac成为压死骆驼的最后一根稻草,让我回到qwerty的世界,后面会说到。
- 快捷键,快捷键有两种,一种是从意义出发的,比如:CTRL + C,c是copy的意思。另一种是从键位考虑,如CTRL + Z和CTRL + V,纯粹是为了和C,X,放在一起,方便左手的单手操作。如果是前一种快捷键,就没有任何问题。但偏偏几乎所有软件都会同时使用两种快捷键,如vim. 退出时的q可以认为是quit,但wq,即是write, quit,又是因为两种挨在一起。最蛋疼的是光标移动,本来是用h, j, k, l用着很顺手。dvorak下,就变成左手控制左右,右手控制上下,根本不顺手。可能有人奇怪会问,你怎么不自定义快捷键?我使用dvorak本来是为了省时间,不是为了浪费时间。就单一个vim,那么多快捷键,怎么定义得过来。况且,很多软件根本就不能自定义快捷键!
- 使用别人电脑,包括远程桌面。这没办法,只能用两个食指戳了。或者临时切换到dvorak,记得当时上机考C++(用实验室的电脑),就是临时换成dvorak,幸好当时不是使用programmer dvorak,不然更麻烦,主流的os都没有,只能自己安装。
这么多困难,现在我在qwerty下敲着这篇文章,回头看看,第3,4,5的任何一点都足以阻止我继续使用。但是,当时就真的坚持了下来。可以说,当时是有点傻,有点理想主义情节。现在想想,感慨之余,真有点佩服过去的自己。
那么,为什么现在换回qwerty。这理由有点机缘巧合,也有点可笑。因为要开发ios, 需要使用mac. 本来是打算买个mac mini的,因为自己有显示器和键盘。偏偏看中的2014款中配没有货,索性买了macbook pro 13寸中配。那么问题来了,拿到机子的时候真的觉得太漂亮了,贴上贴纸就没有好看的背光键盘。纠结在三,还是贴上了,果然档次降了不止一档。再纠结再三,决定全部(3部笔记本,一个外接键盘)换回qwerty。
事实是,macbook真的只是压死骆驼的最后一根稻草,是长期以来,对抗这个qwerty的世界,搞得身心俱疲。长期的,各种的不好用,积累下来,才在这最后一刻反叛。
它限制了我的探索,有很多好用的软件因为快捷键的原因都放弃了。它和linux不同,linux只是在桌面这一块不是主流,其他的计算领域早被linux占领,而且使用它开发的确会更方便一点(集成的包管理器和原生的命令行)。也不会因为我用linux,你用windows导致无法交流。况且,在程序员圈子里,linux还算比较常见的。
最后总结了4点建议,现在在犹豫是否使用dvorak的童鞋不妨一看:
- dvorak输入英文真的很好用,但无奈,这是一个qwerty的世界,除了这一点,就没有其他好处了。特别是在中文双拼上,它比qwerty更难用。据说全拼会比qwerty快点,没试过。
- 如果要用,请止步dvorak。programmer dvorak敲代码的确很爽,但日常的使用各种不便,我想,没人会只用电脑敲代码吧,日常生活,聊天娱乐也占了很大一部分。最重要的是,所有主流的os都没有programmer dvorak,当你有些很急的任务要用别的机子时,会急死你。
- 如果要用,有条件的尽量用mac,省事不用折腾。当然,如果是macbook,就只有盲打了,贴上贴纸就享受不到漂亮的背光键盘了。
- 键盘布局是很基础的东西,基础平台的改变会有巨大的历史阻力,我们做不到,事实是现在没有人,哪个公司能改变。正如inte的x86, 业界不止一次说x86已死,它死不了,就连intel当年强推安腾架构也失败了。如果不管其他人,就自己改变就好,需要面对整个扭曲的世界,崎岖前行,苦苦对抗,以至于你都没时间关注更上层的创新。花时间在这个上面倒不如花些时候关注更上层的东西,比如语言,算法这些。并不会因为你敲的快,写出的app就漂亮。
2年后,还是放弃了programmer dvorak