Dvorak打字是否适合编程?

时间:2009-08-03 12:37:59

标签: typing dvorak

我一直在寻找提高工作效率的方法,而且我一直在阅读很多关于使用Dvorak键盘打字的内容。

看起来这对于撰写普通散文会更有成效,但编程呢?

我怀疑它会有效,因为在编程中使用分号,冒号,括号和&符号比在每天打字时更常见。

有没有人有这方面的经验?

12 个答案:

答案 0 :(得分:85)

几年前,当我开始感到手腕疼痛时,我决定学习如何输入Dvorak布局。 (旁注:我发现使用qwerty键盘学习布局非常简单,同时在屏幕底部查看Dvorak键盘的图像)

唯一的编程差异主要是方括号和花括号交换位置与它们上方的减号和加号按钮。根据您使用的语言以及使用这些密钥的程度,这可能很烦人;但话说回来,也许你的IDE会自动插入适当的那些。或者,您可以使用AutoHotkey之类的程序将另一个组合键映射到这些符号。

这是在Dvorak中输入的东西:(恕我直言)你需要去所有Dvorak或所有qwerty,,特别是如果你在所有计算会话中严重依赖键盘快捷键。

我的情况是我在工作和家里经常使用Vim。在我上一份工作中,计算机在多个 idiots 人之间共享,我无法合理地期望其他用户知道如何切换出Dvorak。我不得不“重新学习”Vim命令的肌肉记忆。

我很容易在qwerty和Dvorak之间来回切换简单的文字,但是(也许只是我)所有我熟悉的键盘快捷键都是肌肉记忆。因此,Vim on qwerty中的:w最终为S,,而评论某行的I#最终为C#,而只用一磅替换整行符号。你可以忘记hjkl在Vim中导航 - 而不是在主页上按键,现在你必须按下jcvp的等价物。哦,你想用一只手复制切割粘贴? xcv现在已转移到bi.,因此可以轻松到达整个键盘。 Firefox中的新标签?你刚刚输入Dvorak,所以你点击了ctrl-t,但键盘实际上处于qwerty模式,所以你只需要按ctrl-k跳转到网页搜索栏。

如果同事需要暂时使用你的电脑,Dvorak的另一个低点是尴尬的30-60秒解释。

所以我很伤心地说,经过约4年主要是在德沃夏克打字的,现在我必须输入QWERTY键盘,因为它根本就是不必要的困难模式之间来回切换,并保留我的键盘我的肌肉记忆快捷方式。

另一方面,there is some Vim work-around support for Dvorak,所以今天也许是我回到Dvorak旅行车上的好日子。我想如果有人感觉特别雄心勃勃,他可以设置一个AHK脚本将正常/移位键从qwerty重新映射到Dvorak,但只要在按住ctrl / alt时通过qwerty键。看起来这对于很少的回报来说会是很多工作。

回顾一下:

  • Dvorak非常适合RSI
  • 在qwerty和Dvorak之间切换很容易打字,键盘快捷键和其他肌肉记忆很糟糕
  • 根据您的工作环境,Dvorak 可能在工作中使用

我真诚地希望这能为你决定是否去德沃夏克提供更多指导。

答案 1 :(得分:65)

不管你信不信,与普通的英文文本相比,源代码中特殊字符(例如[],{}等)的数量可以忽略不计。

我写了一个小程序来计算我正在研究的一个相当大的项目(50k行)的源代码中每个字符的出现次数,这些是结果。语言是C ++。

    E = 104050
    T = 86887
    I = 62788
    A = 61746
    R = 60438
    S = 58897
    N = 56595
    O = 51640
    L = 45490
    C = 39251
    D = 33776
    U = 30971
    " = 27858
    M = 25925
    , = 25296
    P = 23742
    ( = 21407
    ) = 21391
    F = 21232
    G = 20860
    / = 19745
    H = 19717
    ; = 19226
    _ = 16207
    B = 13576
    = = 12427
    Y = 10498
    0 = 10125
    . = 9842
    K = 9241
    : = 8907
    W = 8509
    V = 7922
    { = 7648
    } = 7639
     = 6626
    % = 6507
    Q = 5896
    1 = 5752
    - = 5382
    X = 5261
    ' = 3877
    \ = 3421
    2 = 3395
    + = 3172
    & = 2702
    [ = 2597
    ] = 2586
    3 = 2174
    Z = 2141
    4 = 1657
    J = 1599
    ! = 1595
    5 = 1560
    # = 1501
    6 = 1367
    | = 1029
    8 = 967
    9 = 953
    7 = 939
    ? = 610
    ` = 367
    ~ = 59
    $ = 47
    @ = 7
    ^ = 6

答案 2 :(得分:47)

Dvorak布局专门用于编程:http://www.kaufmann.no/roland/dvorak/

答案 3 :(得分:21)

没有看到这提到,所以我想我会添加这个:我在QWERTY键盘上使用Dvorak布局,使用QWERTY命令键布局。意味着每次按下命令按钮(我在Mac上)时,都会应用QWERTY布局。所以我用Dvorak布局完全“蒙上眼睛”,但我没有必要重新学习键盘快捷键。到目前为止,在过去的4年里工作得很好,我不会改回QWERTY。

唯一的缺点是使用VIM时,但现在我主要使用vim仅用于简单的事情,例如通过SSH修改配置文件。

答案 4 :(得分:16)

您可能需要考虑colemak布局。来自faq

  

编程语言大量使用   标点符号。 Colemak保持着   几乎所有的标点键都在   他们的QWERTY职位缓解了   从QWERTY过渡。这取决于   你使用什么编程语言,   变量命名约定(CamelCase   与下划线)和你的编辑   使用。最后这是一个问题   个人喜好。你可能想要   将AltGr序列重新映射到   经常使用的标点符号。

答案 5 :(得分:8)

Dvorak键盘的目的是通过在主行上保留最多类型的字母来防止手上的压力,至少对于英语而言。我非常怀疑,由于编写代码的速度,这将有助于编程。我总是在思考写作时写的东西,变量名永远不会完全符合标准英语。事实上,如果源代码的典型文件中的字母频率与既定的英文字母频率有很大差异,我不会感到惊讶。

如果您患有像Carpal Tunnel这样的东西,Dvorak可能会帮助缓解这种情况。我不得不说Dvorak键盘可能比常规编写和打字更有帮助。

答案 6 :(得分:8)

QWERTY和Dvorak键盘布局设计用于输入文字而不是代码。

您可以尝试使用布局来输入类似这样的代码:Programmer Dvorak Keyboard Layout

答案 7 :(得分:6)

我一直在使用德沃夏克超过1。5年。使用Dvorak布局的原因不是速度,而是舒适本身。你想的不仅仅是键入代码。我主要使用emacs进行编码,但是,我没有使用默认的键绑定。由于emacs相对高度可定制,我使用Ergoemacs键绑定。这真的有助于我在emacs中编码,同时保留我的Dvorak舒适性而不会跳到这里和那里当我想做一个主要使用组合键完成的emacs操作。

答案 8 :(得分:1)

如果你在团队中工作或者在其他人的计算机上打字,那么习惯dvorak可能会有点问题。

答案 9 :(得分:0)

任何键盘都适合编程。如果你觉得打字很舒服就好了,因为它打破了用QWERTY打字的方式。

另一方面,对于像我这样的左撇子来说,这款键盘会很糟糕。

答案 10 :(得分:0)

与之前的答案类似 - 任何键盘布局都是合适的,如果这是您感觉舒适并且可以高效工作的话。如果你对它感兴趣,德沃夏可能永远是可能的 - 你为什么不尝试一下?我相信你可以找到一个旧键盘来切换几个键。

最糟糕的情况:你恢复到qwerty。 :)

Link

答案 11 :(得分:0)

我使用Dvorak-es布局 - 优化了西班牙语中字母的频率 - 用于编程和打字,而特殊键(){} []<> / *等是相同的这和Qwerty。

如果您正在切换到Dvorak,那么使用这些键的标准QWERTY位置设计您自己的“Programmer's Dvorak”布局可能会付出代价。至少在Windows上,您可以使用MS Keyboard Layout creator来执行此操作。