About the Dvorak layout

The Dvorak keyboard layout is an improved alternative to the widely-used QWERTY layout. Compared to QWERTY, Dvorak has been designed to require less finger movement and contortion when typing. QWERTY was made to deliberately hinder typing: by moving frequently used letter combinations away from one another it helped prevent old mechanical typewriters from jamming in the hands of a fast typist. As such, QWERTY should be considered obsolete and broken when it comes to typing on a computer. I type on a computer keyboard every day, and so I want to do it on a sensible keyboard layout. This is why I decided to make the switch to the Dvorak keyboard layout in the late 1990’s. I think it was a good decision.

I was a very fast typist with QWERTY, which I had been using for some 15 years before switching, and still my average typing speed increased after switching to Dvorak while my top speed was mostly unchanged. However, it should be understood that comfort, not speed, is the main benefit of Dvorak for already fast typists. Faster typing may follow from the greatly reduced finger movement, but I think too many QWERTY advocates get stuck on the idea that speed is the measure of keyboard layout quality… Just because one can learn to contort one’s fingers in complex ways very fast does not mean that it’s a good practice.

The Dvorak layout has been designed to enhance typing in English, but it works well for other western languages. For example, all the vowels are on the left side of the Dvorak keyboard, which means that adjacent characters are often typed with alternating hands in most languages. In contrast, QWERTY has many examples of very long words and letter combinations that are typed with one hand only (e.g., “stewardresses”, “databases”, and “monopoly”).

Switching to Dvorak

A regular keyboard can be used for typing Dvorak; it is just a matter of switching the layout in software. Most operating systems ship with the Dvorak layout included and don’t require administrator privileges to switch layouts, so using Dvorak at work or school is not a problem.

If the keyboard layout is switched in software only, the symbols written on the keys do not match those produced by the keypresses, but this isn’t really an issue and may in fact help teach you not to look at the keyboard when typing. A printed-out picture of the Dvorak layout helps in the learning stage. On most keyboards it is also fairly simple to pop out the key caps and move them around to match the Dvorak layout1.

1 National keyboards may not have the exact right key caps to match the special character placement of Dvorak. If you are buying a new keyboard and want to match the Dvorak layout as closely as possible, get the keyboard in the International English layout.

In my experience it takes a couple of weeks of practice with Dvorak to reach a comfortable typing speed, and a few months to achieve high speed and re-learn keyboard shortcuts2 into muscle memory. I think this one-time learning period is a small price to pay compared to overall the amount of time spent using a computer keyboard. Personally I find I can also still type on QWERTY well enough to get by, but after using Dvorak it always feels uncomfortable (since QWERTY is uncomfortable; people just don’t know any better before they try a better layout).

2 Some people use Dvorak variants with QWERTY keyboard shortcuts (i.e., keys behave like their QWERTY equivalents when pressed together with Ctrl or Command). To me this sounds like a bad idea since then you have to context switch your mind to a different layout for new shortcuts.

Of course Dvorak is not the only alternative keyboard layout, for example, the Colemak layout has design goals similar to Dvorak but it tries to make switching easier by making less changes relative to QWERTY (e.g., the C and V keys remain in the same place for copy/paste). This may be an option to consider if the switch to Dvorak seems too daunting, but personally I don’t like the idea of QWERTY’s ghost haunting my keyboard.

I’ve even considered making a completely custom keyboard layout by doing software analysis of the text I type, i.e., the keyboard would be optimal for me personally. Yet, in the end I think that the advantages of other layouts over Dvorak would be fairly inconsequential compared to the advantages of pretty much any reasonable layout over QWERTY.

My ArkkuDvorak layout

Two common characters required to type Finnish, ‘ä’ and ‘ö’, are not present in the US/English Dvorak layout. Since there is no Finnish standard for Dvorak, I made my own with the idea that I wanted it to be fully backward-compatible with regular Dvorak. My ArkkuDvorak3 layout accomplishes this by exploiting the fact that Finnish (and other international) keyboards have one more key than US keyboards; this “extra” key becomes a combined ä/ö key.

3 I did not intend to name the layout after myself, but the original filename stuck after I shared the layout with others.

The way ArkkuDvorak works is that the extra key, located to the right of the right Shift key, produces ‘ä’ when pressed normally but ‘ö’ when pressed together with Shift. This sounds quite unorthodox at first, but it works very well in practice since the capital ‘Ä’ and especially ‘Ö’ are seldom needed. The uppercase letters are still available via Alt Gr-a and Alt Gr-o, along with many other special symbols and dead keys under other Alt Gr combinations.

The major advantage of this solution over more conservative approaches is that no keys are “consumed” by the additions. This keeps special characters readily available for programming and command-line use. One can also type—my additions excluded—on the regular US/English Dvorak layout included by default in operating systems.

The trade-off is that the layout remains better optimized for English than for Finnish, but for me that is a positive thing since I type more English, especially in the form of programming languages, than I do Finnish.

ArkkuDvorak with other languages

In addition to Finnish, my keyboard layout gives relatively easy access to all characters required for typing at least German, Italian, and Swedish. Spanish is pretty well covered, too, but the accents and ¿/¡ could be more accessible. I also find that French is alright for infrequent use, but the various accents, especially the circumflex, are quite incovenient to reach. The same probably applies to Dutch and Portuguese. Norwegian and Danish are possible in theory but some characters, like ‘œ’ and ‘ø’, require extensive acrobatics.

My recommendation for non-Finnish/Swedish users is that my layout be used as a starting point for building a new custom layout; after all, if you don’t need the ä/ö key frequently, why squander the single extra key on it.

Making changes to the layout is very easy with most operating systems. The X11 and Linux layouts in particular are just simple text files that can be edited with plain text editor. The Mac OS X layout is technically also plain text but its XML format has some hidden subtleties—never-the-less it’s easy to change individual symbols just by searching and replacing. The Windows layouts can be edited with Microsoft’s free Keyboard Layout Creator, and the classic Mac OS layouts with Apple’s free ResEdit.

Download ArkkuDvorak

Here you can download the keyboard layout for various operating systems and platforms. I happen to use a lot of different computers and systems, and so I’ve taken it upon myself to port the layout to most of them. It should be noted, however, that these layouts have been created and infrequently updated over more than a decade, and they are not all up to date with the latest operating system changes nor do they all share the exact same Alt Gr combinations.

4 These layouts are provided as is with absolutely no warranty or guarantee. =)

The only thing “guaranteed”4 to work in every version of the layout is the basic addition of ‘ä’ and ‘ö’. In practice there are many other additions hidden under Alt Gr and Shift + Alt Gr combinations but I keep changing my mind about what to put there. If you have your own ideas about that, please edit the layout to your liking!

Anyhow, find the version for your operating system below and read the installation instructions underneath. Let me know if you run into difficulties.

The most common versions


For Apple Mac OS X

Installation

5 Under recent OS X versions the Library directory may be hidden by default. To access it you can select Go to Folder from Finder’s Go menu and type in ~/Library for your personal library directory or /Library for the system-wide directory.

Download and extract the .zip file and drag the keyboard layout bundle into the directory5 Library/Keyboard Layouts in either your home directory or the system drive (to install for all users). You may need to create the Keyboard Layouts directory if it does not exist. Reboot or re-login to ensure the layout is detected by the system, and then go to System Preferences and you should be able to find the layout under Language & Text in the Input Sources tab. Tick the box next to the ArkkuDvorak layout. Also tick the box Show Input menu in menu bar at the bottom of the dialog. Your menu bar should now have an icon for switching keyboard layouts somewhere near the top right corner of the screen.

6 To view the contents of the bundle, hold down Ctrl and click on the bundle in Finder. Then select Show Package Contents.

Inside the bundle6 you can find an XML file at Resources/ArkkuDvorak.keylayout. This file can be edited with a text editor to change the layout. On older OS X versions you can also try installing this file by itself (without the bundle) if you have trouble getting the system to detect the layout.

If the computer is in shared use, you may wish to make sure you enable Show Input menu in login window under Login Options (found under System Preferences and Users & Groups on recent OS X versions). With this enabled any user can switch the layout in the login window—very helpful for entering passwords.


For Microsoft Windows

I recommend trying the the Windows 7 version first no matter what version of Windows you are using. If it doesn’t work, try one of the other versions. So far compatibility with Windows 8 is an unknown—I suspect the Windows 7 version might work since Microsoft has not updated the Keyboard Layout Creator.

Installation

Extract the .zip file and run the installer found within. Included in the most recent version you will also find the Keyboard Layout Creator document for editing the layout. If you have trouble installing the layout, I suggest you download the Keyboard Layout Creator and use it to rebuild the installer on your own system.


For X11 and Linux

X11 is the most common graphical windowing system used on *nix and UNIX systems such as Linux, Solaris, FreeBSD, OpenBSD, NetBSD, IRIX, etc. If you use Linux (e.g., Debian, Fedora, or Ubuntu) and don’t know which version to get, download the first one… It’s almost certainly correct.

If you only get a bunch of text in your browser when you click the link, save that text as a plain text file; the layout is just plain text.

Note that on Mac OS X there is no need to install an X11 layout even if you use X11 on it—install the OS X version and it will work.

Installation

Run xmodmap followed by the layout file name to load the layout on the fly in a running X11 session. I suggest typing setxkbmap fi into another terminal window in case the new layout doesn’t work; then you can switch back just by pressing Return in that terminal.

Once you have verified that the layout works correctly you will probably want to have it loaded automatically in the future. The specifics on how to do that depends on how your system is set up. On many systems renaming the file .Xmodmap (leading dot included) inside your home directory causes it to be loaded when your X11 session starts. You can also place the xmodmap command in your session startup scripts; refer to the system documentation (or help forum) on how to do this.

Troubleshooting

The X11 layout files are just simple text files that can be edited with any plain text editor. If you get errors due to invalid symbol names, simply delete the symbol names causing complaints from the file and re-try. Not all X11 implementations support nearly all of the symbols in those layouts; especially the SGI version needs to be stripped down quite a bit to work on IRIX. For the vast majority of PC Linux systems the first version should work as is, though.

Another common problem is that some of the keycode numbers have changed over time due to X11 changes. If a key stops working or produces an incorrect symbol, run the command xev in a terminal and press the problematic key. Look for keycode in the output and make note of the following number. Then edit the layout file and replace the number at the beginning of the line with the definition for the problematic key with the one you got from xev.

One key known to have changed its keycode over time is Alt Gr. I’ve included several possible definitions at the end of the PC version of the layout file, but they are all commented out (i.e., disabled) by default. If your Alt Gr doesn’t work, edit the file and see near the end for instructions (the lines beginning with ! are disabled; remove the exclamation mark to enable them).


For the Linux console

These versions of the ArkkuDvorak layout are intended only for the classic, text-only, Linux console. If your Linux has things like windows and graphics or such, you will almost certainly want the X11 version above instead of this!

Installation

Run loadkeys —unicode followed by the filename. If you have trouble, try dropping the —unicode argument and switching to the latin version of the layout. Once the layout works you can put this command into a login or system startup script.


For Classic Mac OS

The first version should work on all classic Mac OS versions from System 6 onward. The one specifically for Mac OS 9 should be used if you have trouble with recent systems; I have one PowerMac G4 system where the layout version for older Mac OS versions incorrectly places the ä/ö key below Esc. If that happens to you, try the “Mac OS 9” version instead (or edit the layout with ResEdit).

Installation

First extract the MacBin file (e.g., with StuffIt Expander). On System 7, or Mac OS 8 or 9, drag the extracted file onto your closed System Folder. You should then be able to select the ArkkuDvorak layout in the Keyboard control panel.

On truly classic Macintosh systems, i.e., System 6 or earlier, installing custom layouts is a bit complicated and you need to edit your System file with ResEdit. Download and extract the layout and follow these steps:

  1. Create a copy of your System file
  2. Extract the layout file and open it with ResEdit
  3. Double-click the KCHR resource type
  4. Copy the ArkkuDvorak resource within
    (i.e., select it and press Command-C)
  5. Open the copy you made of your System file
  6. Find the KCHR resource inside, double-click it
  7. Paste the layout by pressing Command-V
  8. Save the file and quit ResEdit
  9. Replace the original System file with the edited copy
  10. Restart the computer
  11. Open Control Panel from the Apple menu, select Keyboard
  12. Select ArkkuDvorak

Finnish Summary

ArkkuDvorak on suomalainen näppäinasettelu, joka säilyttää täyden yhteensopivuuden englanninkielisen Dvorak-asettelun kanssa lisäämällä suomen kirjoittamiseen tarvittavat ä- ja ö-kirjaimet yhden näppäimen taakse. Koska suomalaisissa näppäimistöissä sattuu olemaan yksi näppäin enemmän kuin amerikkalaisissa, tämä muutos ei vaikuta englanninkielisen Dvorakin näppäinasetteluun millään tavoin.

Yleisesti käytössä oleva QWERTY-näppäimistö on suunniteltu hidastamaan kirjoittamista jotta ikivanhat mekaaniset kirjoituskoneet eivät menisi solmuun liian nopean kirjoittajan käsissä. Sen sijaan Dvorak on suunniteltu vähentämään sormien vääntelyä ja niiden kulkemaa matkaa näppäimistöllä, mikä tekee siitä huomattavasti QWERTY:ä miellyttävämmän käyttää. Itse kirjoitan tietokoneen näppäimistöllä päivittäin mutta ikivanhalla mekaanisella kirjoituskoneella en koskaan – siksi vaihdoin Dvorakiin. Vaihtaisit sinäkin.