Software developer blog

Universal custom keyboard layout

In a perfect world everyone would speak the same language. Wouldn't that just be wonderful? Everyone would understand everyone else, and there were no need for localization at all. But things are not so nice, and to make things worse people developed separate keyboard layouts for each language. Now that becomes a real problem when you are blind typing on more than one languages, which of course happens a lot, when your first language is not English, and happen to have a grand mother who speaks a third language. To make things even more challenging, typewriter designers had the strange habit of moving special characters around on the keyboard for each new language, making it a nightmare to write source code while switching back and forth between languages.

(By the way, can any one tell me a sane reason for some languages using the ASERTY standard, and others using the QWERTY standard as a basis? And to make clear: traditions and conventions are an insane reason.)

Anyway... Funnily enough the solution lies in creating yet another keyboard layout to increase the chaos. Windows XP SP2 saw the introduction of the UK-Extended Layout, which makes use of the AltGr button and dead keys to generate accented characters without altering anything else on the standard QWERTY keyboard. My problem with that layout was pretty much the same as with EMACS: pressing buttons sequentially is much more comfortable than pressing key combinations simultaneously. So a couple of weeks ago I came up with my own keyboard layout, and since it turned out to be very useful for me, it's time to share.


It's basically a standard US keyboard layout, but uses dead keys to generate the Hungarian and German accents. The special dead key combinations you need to remember:
= makes an acute accent as in á, é, ú, ó
` makes an umlaut as in ö, ü, ä
~ makes a double acute accent as in ű and ő

Took me about a day to get used to it, since it some what differs from the German IBM standard keyboard layout (which I used previously) when it comes to accents and dead key usage. By the end of the day however, it helped me become more productive, by avoiding typing errors arising from forgetting to switch back to another layout.

Most of you may need a completely different custom layout, but luckily enough it's a piece of cake to create one. Just download the Microsoft Keyboard Layout Creator software, and have fun designing your own layout 🙂

@ //