The Developer's Dvorak Keyboard Layout
OK, so you've discovered the Dvorak layout is great for writing text.
But what about computer code? Most symbols are in the same dumb QWERTY positions...
With DDvorak (Developer's Dvorak) you can touch-type computer code too!
No, I'm not trying to convert you to using my layout! I just hope
you will pick up some ideas to improve the layout that you're using. You can
test your new layout and DDvorak with this tool and see how it scores against
Qwerty and Dvorak. It's what I've used to design my layout.
I came up with this Dvorak-based layout after 3 years of gradual changes. It's
optimized for C# and C#-like languages.
The logic behind DDvorak
As with the standard Dvorak, these are the main points:
- Most frequently used keys are on the home keys or as close to the home keys as possible
- Stronger fingers are used more than weaker fingers
- Frequent combinations of letters are easy to type
- There should be as few pairs of letters that need to be typed with the same finger
as possible
And here's how the layout works:
- Pinky fingers operate only 4 character keys. They do enough work pressing SHIFT
(there are a lot more upper case letters in computer code than in normal text).
This is why some keys are no longer used for characters.
In addition, the 6 and 7 keys are hard to reach so they're not
used either.
- To make up for the above, some characters are accessed using , (comma). I came up with the idea of using
comma as a modifier (dead key) when I realized comma is always followed
by a space or a number. So comma + space can output just that, but comma
+ a letter can output, for example, a symbol. Microsot Keyboard Layout
Creator lets you do exactly that if you set comma (,) as a
dead key. In addition, the left ring finger operates the comma and it happens
to be the least used finger in Dvorak (so it can handle the extra work).
- You might also use . (period) as a dead key for the same reason, though this might not be a good idea if you type C# code.
- The character j can also be used as a dead key (q is another option, but q is not well positioned).
j is among the 3 least used letters, and it will never be followed by these letters:
bcdfghjklmnpqstvwxyz (at least not in any of Shakespeare's works), so j + any of these letters can
be safely set to output some other character. Because of the way dead keys work capital J won't be affected
so any abbreviations containing capital J will work as usual.
- I must admit I didn't have to use j as a dead key, there was already enough space on the keyboard.
So I must be taking some pleasure in making the layout as weird as possible.
Having said that, j would make a brilliant dead key if you're using QWERTY because it's on the home row.
- The numbers are accessed with ALT GR and arranged similarly to their position
on the numpad. I know the numpad arrangement is far from optimum, but let's not
get carried away here.
- Also with ALT GR key combinations you get some commonly used C# operators.
Additional remappings
- (purple outline) One definciency of standard Dvorak
is that it places u under the left index, instead of i, which
is far more common. DDvorak corrects this.
- (blue outline) There is a second ENTER key,
so it's easy to type the sequence ; ENTER
- (orange outline) ENTER is now on RIGHT
SHIFT (which I realized I wasn't using except to type A), so it's
closer to the arrow keys
- (orange outline) SHIFT + . is A,
so I can type all uppercase letters using only LEFT SHIFT
- (green outline) DDvorak also fixes the row shift issue
of convetional keyboards and puts backspace in a very convenient position, as explained
here.
- (red text) Some of the empty keys on the right have
been wired to the common shortcuts CUT, PASTE, COPY.
- (yellow
outline) And I tried to make good use of the other keys...
DDvorak image
Create your own
- For Windows Vista, XP, 2000, 2003, use the
Microsoft Keyboard Layout Creator to remap character keys.
- Use SharpKeys
to remap non-character keys (this
article explains how it works).
- You will need some sort of software to crate Macros to get the one key Cut Copy Paste shortcuts.
- As I've said, I'm not trying to convert you, so I don't provide an installer.
With the software listed above, you
can create and install your own layout in less than an hour.
- Check out Programmer Dvorak,
another layout designed for writing computer code (this is what inspired me to make
my own layout).