开发者

Preferred keyboard layout for programming [closed]

Closed. This question is opinion-based. It is not currently accepting answers.

Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.

Closed 6 years ago.

Improve this question

I started out with programming about two months ago I think now, and I'm fooling around in either C# or Clojure (I have serious decision-problems). Anyways; I'm from Norway, and we use a different kind of keyboard layout than the English-speaking countries. I don't know how for example Germany or Frances' keyboard-layouts are compared to ours, but it really is a pain to code in (Norwegian QWERTY-layout for those interested).

Anyways; reaching for the (), [] and {} really makes my fingers hurt because I have to stretch my fingers really. Also, although this is minor it still makes me quirk, the <> is also painful to reach for.

So, I was wondering if anyone have any tips on the layout to use? Is reaching for (), [] and {} much better on the English QWERTY-layout or is it nearly the same? And lastly; is DVORAK actually a good layout for p开发者_如何学Gorogramming?

Thanks in advance :)


C-like programming languages show their US-American heritage proudly by using symbols that are awkward to reach on most other keyboard layouts. I've resorted to US International which allows me to type {}[]\ without breaking my fingers but at the same time still being able to type characters like ä, ö, ü and ß which I don't want to give up in my native tongue (some others using a US layout do and I feel physical pain every time spelling is sacrificed for convenience on their part).

Dvorak at least looks good enough for that. However, the costs for changing the layout there are likely much higher than to another QWERT[YZ] layout.


Disclosure: I am biased. :-)

Incidentally, I'm from Norway too! US Qwerty is better for programming than Norwegian Qwerty. Still, it strains the right pinky and has bad hand and finger alternation.

Fifteen years ago I said to myself: There has to be a better way to place the symbols that are used for programming on the keyboard than this. And thus I created the Programmer Dvorak layout, which is specifically designed to make it easier to type the parenthetical symbols commonly used in programmming languages such as Clojure and C#.

As a base for the alphabetical keys I chose the (classic) Dvorak layout, which I consider the best, scientifically documented layout for English. Even when programming, most of what you type is prose (keywords, function names, comments, documentation).

For me, I consider it a great success: I have no longer any finger muscle fatigue, and I type as quickly if not faster than before.

But, a keyboard having a fixed number of positions, there are some tradeoffs to be made: If one key is given a new place, then the one that previously occupied that location must also be moved. The trick is in making the advantages gained greater than the disadvantages.

The main one I did was to demote the number keys to shift status, and the nordic characters to composed ones. If you predominantly write your mother tongue, then this may not suit you.

If you want to teach yourself Dvorak, then be prepared for a transition period of three to six months of really slow typing. I did it when writing my thesis.


There's also the option of adapting the layout to your needs with Microsoft's Keyboard Layout Creator. A slight problem with that of course is that it won't make the captions on the physical keys move. For that you'll need the outrageously expensive Optimus Maximus keyboard. ;)


I was going to recommend DVORAK, Programmer DVORAK, or even Norwegian DVORAK layout, but it seems reaching for those braces and other symbols will still be less than ideal.

Sondrizzle, isn't the problem due to the fact that you have to twist your right hand for the AltGr? If so, have you sought out a keyboard with two AltGr keys, one on the left and one on the right? How about mapping your caps-lock key to AltGr? That feels like it may be your best immediate solution.


I have, throughout time, learned both US and my native language (Serbian) layouts and use them alternately. I mapped CapsLock as a key to change the layout, and OS remembers which one is active in which application, so I don't have to switch them all the time: in Firefox it is Serbian most of the time, while in Terminal, NetBeans etc. it is US all the time. No custom-made layouts, no awkward key combinations to pull off characters not in the basic layout.

I never considered learning Dvorak for coding - I tend to use succint programming languages instead. ;)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜