My Dvorak keyboard layout

(fi) Suomenkielinen versio sivun lopussa!

Contents

About the Dvorak layout

I use the Dvorak keyboard layout for all my typing needs. Unlike the silly QWERTY-layout used by most of the world, it has been designed to minimize finger movement. Meanwhile, the Qwerty-layout was deliberately made to hinder typing, by moving frequently used (English) letter combinations away from one another in order to prevent very old mechanical typewriters from jamming in the hands of a fast typist. I therefore consider the Qwerty-layout fundamentally broken (and intentionally, at that!), and find it difficult to understand why most people choose to suffer it from day to day. Many probably do so out of habit, but perhaps unawareness of alternatives is also a major cause.

Some make claims about the relative top typing speeds of the Dvorak and Qwerty layouts. In my personal experience of some 15 years of nothing but Qwerty (with which I was an extremely fast typist, according to many tests and a school typing record), and now nearly a decade with Dvorak, my average typing speed has increased after gaining familiarity with Dvorak, while my absolute top speed (e.g. in tests) is pretty much unchanged. However, the major benefit is that using Dvorak is way more comfortable than Qwerty, leading to much less waving around of the hands, twisting and straining the fingers and the wrists, etc. I also consider it ideologically “correct”, although obviously there are alternative ways to design better keyboards and layouts (all of which are infinitely preferable to Qwerty).

While the Dvorak layout has been designed with the English language in mind, it also works very well for most other western languages. For example, all the vowels (a, o, e, u, i, y) are on the left side of the keyboard, which means that adjacent characters are often typed with alternating hands. Meanwhile, the Qwerty layout has many examples of very long words and letter combinations that are typed with one hand only (“stewardresses”, “databases” and “monopoly” spring to mind as some of the more laughable examples).

[Picture of the Dvorak keyboard]

In my experience it takes a couple of weeks of practice to obtain comfortable speed and familiarity when switching to the Dvorak layout, and a few months more to achieve high speed and get the new keyboard shortcuts (like Ctrl-C) into “muscle memory”. One should note that this period is merely a one-time nuisance and, in my opinion, infinitely preferable to suffering Qwerty forever (or getting carpal tunnel syndrome).

A regular keyboard can be used for typing Dvorak; it is just a matter of selecting the layout in software. I do recommend printing out a picture of the key locations for reference, though. Alternatively, one can move the keycaps around on many keyboards, as I have done with the one pictured here, or use stickers/tape to temporarily mark the new key positions. While switching to Dvorak it is also high time to learn to type without looking at the keys. All modern operating systems allow users to switch keyboard layouts on the fly without administrator privileges, so using Dvorak at work or school is not a problem.

One recent proposal for a Qwerty-alternative is the Colemak layout. It has design goals similar to Dvorak, but with the feature (or flaw) that less changes relative to Qwerty are required (e.g. common shortcuts like Ctrl-C remain in the same place). This may also be a good option to consider, but personally I view the one-time difficulty of learning a new layout secondary to the long-term benefit, and therefore have chosen Dvorak instead of stopping “half way there”.

English-language users may be surprised to learn that their operating system almost certainly has the Dvorak layout already installed; at least Mac OS X, popular Linux and BSD distributions, as well as Microsoft Windows ship with it. Finnish and other “international” users are lacking a national Dvorak-layout, however. My answer to that problem (with regard to Finns, and possibly some others as well) is what the rest of this page is all about. This solution may also serve as a basis for other languages requiring only slight additions to the Latin alphabet (see below).

My Finnish Dvorak layout

Two common characters required to type Finnish (‘ä’ and ‘ö’) are not present in the US Dvorak layout. Since there is no Finnish standard for Dvorak, I decided to make my own. My proposal is a fully backward-compatible version of the Dvorak layout. The basic design goal was to preserve the original Dvorak layout completely, since I may need to type in places where I can switch to a preinstalled US Dvorak layout but can not install my own layout.

Fortunately, the Finnish/Swedish keyboard (the physical device) has one key more than the US keyboard (for which the Dvorak layout is specified) does. The extra key is located conveniently next to the vowels, below ‘a’ and right of the left Shift-key. In my layout I assigned it to produce ‘ä’ normally, but pressing it together with Shift results in ‘ö’ rather than the capital ‘Ä’. This sounds very unorthodox at first, but it works remarkably well since the capital letters are actually quite seldom used. Of course, the capital letters (and many other useful letters and symbols) are available as well; they're just an Alt Gr away (e.g. under Alt Gr-a and Alt Gr-o).

The major advantage of this solution is that the Finnish additions do not “consume” any of the other keys. This means that all the symbols frequently used in programming and on the command line remain accessible without complex Alt Gr -acrobatics, which, for me, is a major benefit compared to the more conservative approaches others have taken. Of course, the downside is that the layout remains better for English than Finnish, but most of the letters would need to be repositioned to change this (and then it would be worse for English).

My layout with other languages

In addition to Finnish, my ArkkuDvorak 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 inverted punctuation marks could be more accessible. I also find that French is alright for infrequent use, but for frequent use the various accents, especially the circumflex, are under key combinations too complex. The same probably applies to Dutch and Portuguese. Norwegian and Danish are possible in theory but some characters, like œ and ø, require very complex key combinations.

It is my understanding that most “international” keyboards have the same physical construction as that used in Finland and Sweden. Therefore my layout should be usable with the regular hardware used for typing the languages listed above (and others) in Qwerty. My recommendation, however, is that my layout be used only as a starting point for creating a new layout for use with the desired languages. This is a relatively simple process, as OS X and X11 layouts are just editable text files and the Windows layout includes data files for the layout editor. I'd be very interested in hearing from anyone who does this.

Downloadable layouts

All modern operating systems ship with the US Dvorak layout included. While it can be used in exactly the same way as my layout for typing plain English, my “international” additions require a custom layout file to be installed prior to use.

I have made downloadable versions of my layout available for various platforms below. If your platform is not listed, or the layout doesn't work for you, I'd like to know, since I'm rather enthusiastic about helping others make the switch.

If you wish to view the key assignments without installing a layout, note that at least the X11, Mac OS X and Linux console layouts below are essentially text files you can view (and edit!).

For: Mac OS X (10.6 and later)
Installation: Double-click the .zip file to extract “ArkkuDvorak.bundle”. Put the bundle in “/Library/Keyboard Layouts” on your system drive (often “Macintosh HD”). This installs it for all users (but they can still choose not to use it). Alternatively put it in the corresponding directory under your own home directory. Reboot the system to ensure the layout is found. Open “System Preferences” (in the Apple menu, top left corner), then select “Language & Text” and click “Input Sources”. The list of available layouts should have “ArkkuDvorak” in it. Tick the box next to it. Also tick the box for “Show Input menu in menu bar” at the bottom of the dialog. Your menu bar should now have an icon somewhere near the top right corner where you can click and switch to the “ArkkuDvorak” layout.
For: Mac OS X (10.2 through 10.5)
Installation: Put the file in “/Library/Keyboard Layouts” on your system drive (often “Macintosh HD”). This installs it for all users (but they can still choose not to use it). Alternatively, you can install it just for yourself by putting it in “Library/Keyboard Layouts” inside your own home directory (you may need to create the directory). Reboot the system (or log out and back in) to ensure the system finds the layout.
To activate the layout after installation, go to the “System Preferences” (in the apple menu, top left corner), then select “International” and “Input Menu” from there. Find “ArkkuDvorak” in the list of keyboard layouts and check the box next to it. Also check the box “Show input menu in menu bar”. Now you should have an icon in your menu bar (around the top right corner) where you can click and select the keyboard layout (you can switch it on the fly).
For a multi-user system where you've installed the layout for all users, you may also wish to have the layout menu in the login screen. To enable this, go to “System Preferences” and select “Accounts”, then click “Login Options” and check the option “Show Input menu in login window”. Now users can switch layouts in the login screen.
For: Microsoft Windows 7 (probably Vista, XP, and 2000 as well)
Installation: Open the .zip. Run setup.exe inside. The installer was created with Microsoft Keyboard Layout Creator.
For: Windows XP and 2000
Installation: One of the files in this archive should be an installer (possibly with the extension .msi). Note that this is an old version of the layout, please try the more recent “Windows 7” version first and only use this if that doesn't work.
For: X11 Windowing System (Linux, BSDs, Solaris, IRIX, etc)
X11 on x86 (PCs, plus possibly other systems with Linux)
X11 on Apple PPC (PowerPC Macs)
X11 on Sun SPARC (Sun workstations, e.g. SparcStation, Ultra)
X11 on SGI (Silicon Graphics workstations, e.g. Indy, O2)
Note: X11 is the most common graphical environment (with windows and icons and things like that) used on *nix systems, which include Linux, FreeBSD, OpenBSD, NetBSD, Solaris, IRIX, etc. As a notable exception, Mac OS X does not require this X11 layout, even when running X11 apps under Aqua.
Installation: Load with the command “xmodmap” followed by the file name. Once you've verified that this works as planned, place the command somewhere where its run automatically when X11 starts (e.g. your “.Xclients” file, your session preferences, or such). On many systems renaming the file to “.Xmodmap” and placing it in your home directory will cause it to be loaded at the start of an X session.
If loading this map fails because of unrecognized symbol names, simply look those symbols up in the xmodmap file (it's just text) and delete them (or replace with something else). Not all X11 implementations support nearly all of the symbol names used in this layout. Especially the SGI version needs to be stripped down a lot on IRIX.
For: The Linux Console (also see X11 above)
Linux, PC keycodes, Unicode (All PCs and most other modern systems)
Linux, PC keycodes, Latin (As above, but doesn't require Unicode)
Linux, Sun keycodes, Unicode (Sun workstations, kernel 2.4.x or earlier)
Linux, Sun keycodes, Latin (As above, but doesn't require Unicode)
Note: Starting with 2.6.x kernels, non-PC keycodes are apparently translated to PC keycodes. So, try the PC layout even on non-PC hardware.
Note: For the typical graphical environment in Linux distributions, you most likely need the X11 keymap (above), instead of this.
I suggest you get both the Unicode and Latin versions; if Unicode doesn't work for you, try Latin instead.
Installation: For the Unicode version you need kbd 1.06 or later, with which you can load it using the command “loadkeys --unicode” followed by the filename. The Latin version can be loaded with either kbd or console-tools, command “loadkeys”.
Note that you almost certainly have some version of loadkeys installed, but features differ between versions. If you get errors, try installing the alternate version (e.g. in Debian and Ubuntu there are two alternative packages, kbd and console-tools). Or, if loadkeys complains about unrecognized symbols, you could just try deleting those from the layout file (extract it with “gunzip” first, then edit). Personally I don't usually bother setting this up in the console anymore, I just use the US Dvorak layout there and my layout only in X11.
For: Classic Mac OS (System 7, 8 and 9)
For classic Macintosh operating systems, from System 7 onwards, you can try this layout. It is not a Unicode layout and therefore doesn't support characters not found in the MacRoman character set, but all the “basic” functionality is there. Original Apple character assignments are retained for most Option- and Shift-Option-combinations when the “usual” ArkkuDvorak assignment is unavailable.
Installation: Extract the MacBin file (e.g. with StuffIt Expander). While running the system in which you wish to install this (i.e. not when running OS X or such on the same computer), drag the resulting file on your closed System Folder (i.e. on the System Folder icon). Use the Keyboard control panel to select the ArkkuDvorak layout. Please tell me if this works, it is mostly untested at this point.
For: Classic Mac OS System 6
For truly classic Macintosh system software version 6 (e.g. as run in Mini vMac), you need ResEdit to install keyboard layouts. You can find it on the net (the latest version is 2.1.3). The installation procedure, while not very difficult, involves editing system files and therefore should only be done in the presence of backups and certainly at your own risk only.
Installation: Download and extract the Classic Mac OS version above. In your “System Folder” duplicate the file “System”. Launch ResEdit and open the file “ArkkuDvorak” you got from the archive you downloaded. Doubleclick the “KCHR” resource and copy the “ArkkuDvorak” resource within (press Command-C). Now open the copy you made of the “System” file (not the original!). Find the “KCHR” resource inside and doubleclick to open it. Now paste the copied layout there (Command-V). Save the file and quit ResEdit. Go to your “System Folder” and rename the old “System” file to something else. Rename the copy to “System” (i.e. replace the original with the modified copy). Restart the computer. Open “Control Panel” from the apple menu, select “Keyboard” and you should see “ArkkuDvorak” among the choices. Select it.
For: vkeybd (Virtual MIDI Keyboard)
The Virtual MIDI Keyboard is a little program that simulates a MIDI keyboard (like, a musical keyboard). When I last used it, it only supported Qwerty, so I made this Dvorak configuration just for the heck of it.
Installation: Copy this file into your home directory as “.vkeybdrc”. It should then be automatically loaded by vkeybd on startup.
Windows 98, 95, ME, NT4
First, try the above layout for Windows XP/2K, I don't know what versions it supports (it was created with Microsoft's own tool). If it doesn't work, try searching for a layout editor on the Internet and make the layout yourself. I may have some old versions of this layout made for Windows 9x/ME and NT4 somewhere, but I honestly think it's better that you make your own following the newer key assignments.

Dvorak-näppäimistöasettelu

Käytän Dvorak-näppäimistöasettelua yleisen QWERTY-asettelun sijaan. Dvorak-asettelu on äärimmäisen suositeltava perinpohjin rikkinäiseen Qwertyyn verrattuna, sillä se on on suunniteltu minimoimaan sormien kulkema matka näppäimistöllä. Sen sijaan Qwerty-asettelussa on pyritty siirtämään yleisiä englannin kielen kirjainpareja mahdollisimman kauas toisistaan, jotta mekaanisten kirjoituskoneiden vasarat eivät olisi jumittuneet. Qwerty-asettelu on siis tarkoituksellisesti huono nykykäyttäjän näkökulmasta! Minusta on käsittämätöntä, kuinka ihmiset suostuvat käyttämään sitä pelkän tottumuksen (tai kenties vaihtoehtojen vähäisen tunnettuuden) vuoksi päivittäin. Vaihto parempaan asetteluun on suhteellisen lyhytaikainen vaiva, minkä jälkeen siitä on pysyvää konkreettista hyötyä vähentyneen sormien rasituksen sekä mittavan ideologisen tyytyväisyyden muodossa.

Eräät tahot esittävät väitteitä Dvorakin ja Qwertyn suhteellisista kirjoitusnopeuksista, useimmiten mainiten Dvorakin nopeuttavan kirjoitusta tai vaihtoehtoisesti perustellen Qwertyn käyttöä väittämällä asettelun vaihtamisen hidastavan nopeaa kirjoittajaa. Tietenkin vuosien tottumuksen jälkeen uuteen näppäimistöasetteluun vaihtaminen hidastaa kirjoittamista väliaikaisesti, mutta pitkällä aikavälillä näin ei omien kokemuksieni mukaan suinkaan ole—päinvastoin. Itse vaihdoin Dvorak-asetteluun yli 15 vuoden Qwerty-kokemuksen jälkeen ja olin vaihtaessani useiden testien (sekä koulun kirjoitusnopeusennätyksen) mukaan erittäinkin nopea Qwerty-kirjoittaja. Kokemukseni mukaan nopean kirjoittajan huippunopeus siirtymäkauden jälkeen on molemmilla näppäimistöasetteluilla jokseenkin samaa luokkaa. Koen kuitenkin Dvorak-asettelun moninkertaisesti miellyttävämmäksi ja sormia vähemmän rasittavaksi vaihtoehdoksi. Olen myös huomannut keskimääräisen kirjoitusnopeuden kasvaneen (tai siis, nopeuden silloin kun ei yritä kirjoittaa mitenkään erityisen nopeasti).

Mainittava on, että sekä Qwerty- että Dvorak-asettelujen piirteet pohjautuvat englanninkielisen tekstin kirjoittamiseen. Kokeellisesti, sekä teoreettisen analyysin pohjalta (esim. laskemalla sormien kulkemaa matka tietylle tekstille), voidaan kuitenkin osoittaa, että Qwertyn rikkinäisyys ja Dvorakin edut koskevat merkittävässä määrin myös useimpia muita kieliä (mm. suomea). Esimerkiksi Dvorakissa kaikki vokaalit ovat näppäimistön vasemmalla puolella, mikä lisää käsien yhteistyötä kirjoitettaessa lähes mitä tahansa kieltä, jossa vokaalit ja konsonantit vuorottelevat säännöllisesti. Tämän seurauksena pelkästään yhdellä kädellä Dvorak-asettelussa kirjoitettavat sanat/kirjainyhdistelmät ovat lyhyitä ja harvinaisia, kun taas Qwertyllä löytyy hyvinkin pitkiä "yhden käden sanoja" (huvittavina esim. "monopoli" tai engl. "databases").

Monille saattaa tulla yllätyksenä, että lähes kaikissa nykyaikaisissa käyttöjärjestelmissä, sekä Windowsissa, on valmiiksi asennettuna (englanninkielinen) Dvorak-asettelu, jonka voi ottaa käyttöön asetuksia vaihtamalla. Virallista suomalaista Dvorak-asettelua ei kuitenkaan ole olemassa. Seuraavaksi esittelen oman ratkaisuni tähän ongelmaan.

Suomen kieli ja Dvorak

Olen kehittänyt Dvorak-näppäimistöasettelusta suomalaiseen käyttöön sopivan, mutta taaksepäin täysin yhteensopivan, version. Tässä asettelussa kaikki "jenkkidvorakin" näppäimet ovat samoilla paikoilla kuin ennenkin (useimmista muista suomidvorak-projekteista poiketen). Tärkeimmät "ääkköset" on sijoitettu suomalaisesta näppäimistöstä löytyvän "ylimääräisen" näppäimen alle. Tuo yksi näppäin, joka sijaitsee heti vasemman Shift-näppäimen oikealla puolella, tuottaa siis asettelussani normaalisti "ä", mutta Shiftin kera merkin "ö" ja Alt Gr:n kera merkin "å". Pieniä kirjaimia huomattavasti harvemmin tarvittavat isot skandinaaviset kirjaimet, sekä lukuisia muita kansainvälisiä tai yleishyödyllisiä merkkejä, saa Alt Gr:n kanssa muista näppäimistä (esim. "a" ja "o"). Vuosien kokemuksen perusteella tämä ratkaisu toimii erinomaisesti ja mahdollistaa kaikista nykyaikaisista käyttöjärjestelmistä löytyvän US Dvorak -asettelun käyttämisen ilman uudelleenopettelua.

Dvorak-asettelua voi käyttää aivan tavallisella näppäimistöllä (tarkoittaen fyysistä laitetta), sillä näppäinasettelun voi vaihtaa ohjelmallisesti käyttöjärjestelmän/-liittymän asetuksista. Tällöin näppäimissä lukeva teksti on väärä, mutta tämänkin ongelman voi halutessaan ratkaista (väliaikaisilla) tarroilla, teipillä, tai ihan vain siirtämällä näppäinhattuja paikasta toiseen (onnistuu useissa näppäimistöissä, mutta ei kaikissa). Ihan hyväksi havaittu apukeino on myös Dvorak-näppäinkartan tulostaminen "lunttilapuksi" näppäimistön viereen. Dvorakin opettelun yhteydessä on joka tapauksessa hyvä opetella myös kirjoittamaan "sokkona". Vaikeimmin opittavissa ovat erikoismerkkien paikat, jotka eivät ole samat kuin suomalaisessa Qwerty-asettelussa… mutta hyvä niin, erityisesti ohjelmoijille.

Kokemukseni mukaan Dvorakiin vaihtaminen kestää parisen viikkoa, mikä riittää kohtalaisen nopeuden ja tuntuman saavuttamiseen. Huippunopeuden saavuttaminen ja uusien näppäinyhdistelmien saaminen "lihasmuistiin" kestänee muutaman kuukauden. Kannattaa kuitenkin muistaa, että tämä vaiva täytyy nähdä vain kerran, mikä on minusta paljon pienempi paha kuin rikkinäisen Qwerty-asettelun käyttäminen päivittäin (tai jännetuppitulehdus).

Eräs Dvorakille ehdotettu vaihtoehto on Colemak-asettelu, joka on suunniteltu korjaamaan Qwerty-asettelun virheitä mahdollisimman vähäisin muutoksin. Sekin on varmasti paljon Qwertyä parempi vaihtoehto, mutta henkilökohtaisesti pidän alussa vaadittavan opettelun määrää toissijaisena tekijänä, enkä siten näe syytä tukea "puolitiehen" jäävää ratkaisua. Colemak-asettelun suurin etu Qwertyyn tottuneelle on yleisten pikanäppäinyhdistelmien (esim. Ctrl-C) pysyminen paikoillaan.

Toki Dvorakin kaltaisia periaatteita noudattaen voitaisiin myös laatia kokonaan oma suomalainen, tai jopa henkilökohtainen, näppäinasettelu. Jotkut ovat näin tehneetkin, mutta itse koen englannin (ja ohjelmointikielten) kirjoituksen tärkeämmäksi kuin "optimaalisen" suomi-tuen, varsinkin kun suomi-yhteensopivuus on silti riittävän hyvä. Dvorakin käyttöönoton helppous vieraillakin koneilla on myös merkittävä käytännön etu (vaikkakaan ei mikään peruste Dvorakin itsensä hyvyydelle).

Yllä, englanninkielisessä Downloadable layouts -osiossa, on tarjolla kehittämäni suomenkielisen nk. "ArkkuDvorak"-asettelun asennukseen vaadittavat tiedostot lukuisille käyttöjärjestelmille ja -alustoille. Kaikki nykyaikaiset käyttöjärjestelmät sallivat näppäinasettelun vaihtamisen ilman ylläpitäjän oikeuksia, joten eri asettelun käyttäminen koulussa tai töissä ei ole varsinainen ongelma. Joissain tapauksissa ylläpitäjän oikeudet saatetaan vaatia suomalaisen Dvorak-asettelun asentamiseen, mutta kokemukseni mukaan tämäkin on melko harvinaista (ja näissäkin tapauksissa voi turvautua yhteensopivaan US Dvorak -asetteluun).