Upload failed. Maybe wrong permissions?

User Tools

Site Tools

Keyboards as Vehicles of Thought

Keyboards, Keyboards

Having been involved in using computers for 36 years now – I formed an understanding of the keyboard as either one of the two main tools of communication between people and computers. The other one is the screen; but the screen is only a void, empty surface without contents, and the contents isn’t characteristic for the computer itself, but the application(s) currently running on it. However, the keyboard is (completely or partly) independent from the application, it depends on the computer (or typewriter, calculator, musical instrument or other device) itself.
  As for computer keyboards, I have a view: the more functions on the keyboard, the more things the user can do with the computers, in terms of keyboard input. However, many functions aren’t visible on the keyboard – we’re going to talk more about this later.
  calculator_fx_85es.jpgPocket calculators are known to wear all functions written on (above, below) the keys. This means that if you don’t see a given function on a calculator, this means it doesn’t know that function. This isn’t the case with computers which can reach functions differently – a PC can run Quick BASIC on DOS or Word for Windows, the abilities are completely different, but the keyboard is the same. However, a PC keyboard tells a lot about what can a PC do, in terms of keyboard input: there are dedicated keys for advanced keyboard operation: Home, End, Page Up, Page Down, several redefinable function keys and multimedia keys for advanced functions, so, a lot of things.
  palmtungsten.jpgCompare this to a keyboard with significantly less keys: a Palm Tungsten C, a palmtop from 2003 which featured 30 main keys and 9 additional keys and a four-edge-and-center navigator keys and a power button. That’s only 45 physical keys. Of course, as we can see later, a relatively low number of physical keys may reach a very high number of characters and functions, but not so comfortably as with more physical keys. But on a Tungsten, you’d get in trouble creating a keyboard layout for a language that uses several diacritics or a different script.
  Imagine a pianist who wants to play difficult musical pieces, but he’s got a piano with only one fourth of the keys needed, plus a Shift key and an Alt key. Well, in this situation, any key may serve for four functions, one alone, another with Shift, a third one with Alt and the fourth one with both. Theoretically, it’s perfect. But in practice, well, a bit complicated.

Part I. Life in Plastic, It’s Fantastic

An Extreme Real Life Situation

Year was 2011. The Historical-Etymological Dictionary of Hungarian Language laid in front of me, completely scanned, nearly 4000 pages of high complexity linguistic text, including a huge number of special characters. I made it OCRed and wanted to proofread it and make a version readable in text editors. A sample:
  Look at it. There are special characters | and ~ (and a lot more, this is only a quarter of a page). „Normal” diacritic letters that are present in living languages: ä, â, à (and a lot more). „Rare” diacritic letters employed for linguistic purposes only: ɯ, ɢ (and a lot more).
  There were functions defined on combinations like Ctrl+Caps Lock, seriously. I had had 28 diacritics combinations like Ctrl+S for the tilde diacritic, like ã ẽ ĩ õ ũ and a lot more; Ctrl+^ for the acute accent, like â ê î ô û etc., and using them in a sequence let me use characters with multiple diacritics, like .
  And I needed a lot of formatting functions and additional macros.
  I simply ran out of usable key combinations.

The Two Beauties

I realized it’s better to work on a keyboard which is beautiful. Thoughts are coming easier. And a keyboard can be beautiful two ways.
  Visual beauty. If a keyboard is visually appealing.
  Practical beauty. If characters and functions are arranged intuitively.
  Both are important, but differently. Visual beauty has no much use in a plastic keyboard for me, who isn’t looking at the keyboard when typing; but there are users who are, and of course, both of us prefer a better-looking object to have under our hands when possible. For example, a 19th century typewriter is no doubt more elegant than a plain, gray plastic PC keyboard. Doesn’t know so many functions, but is a lot more attractive.
  Practical beauty is the main virtue of a plastic keyboard for a person like me who doesn’t look at it. This comes in two factors. First, it has a certain number of plastic keys, arranged in a certain physical layout, and this is extremely important because we cannot change this. Second, the keys and key combinations have their functions arranged in a certain software layout, but this is a part we can change. For example, most users are working on a QWERTY, QWERTZ or AZERTY layout, depending on the country they’re living in. But here are many who prefer DVORAK or COLEMAK.
  To work effectively, you always need a keyboard that fits to your needs, your own preferences. And here, “you” is singular, it doesn’t mean your nation, your company or your family, it means personally YOU, yourself.
  For example, the Hungarian national standard keyboard is QWERTZ since the time of typewriters – but I’m using QWERTY because I learned to type on a Commodore 16 where there was no keyboard redefining and I didn’t feel the need for it. Fortunately, when I began to work as an 18 years old typesetter, the company was using XyWrite, a text editor where the keyboard layouts can be easily changed, and I managed to change it for myself the first day. The layout I’m using today differs from the official standard not only in the letters Z and Y but also in punctuation keys and a digit, since the official standard for computer keyboards in Hungary came out years later than I began working, so I had to create my own. Since that – why should I change? It suits my needs, and I enforce no one else to learn it.
  Below follows the Hungarian standard and my Hungarian layout.
  My personal standard also includes that I’m always buying keyboards where the Enter key is a “big ass” one, the backslash \ key is left from a normal-sized Backspace, and there is no additional key between the left Shift and the letter Z. This last point is very important because I’m hitting Shift at the right end of the left Shift key, so I’d get letters Í if used such a keyboard. (It’s a great mistake in the standard: it was designed that the letter Í is placed on this key, but Hungarian Windows users who happen to have the same physical keyboard as me cannot type a letter Í since there’s no key for it!)

On the following keyboard charts, black characters are factory placed, and red is what the keys yield. These charts were created with Keyboard Layout Editor by Ian Prest.

The standard Hungarian layout (105-key version):

My personal Hungarian layout:

My Latvian layout:

A Few Numbers

The main part of a PC keyboard has 26 letter keys, 10 digit keys and 11 keys for punctuation characters ( ` - = \ [ ] ; ' , . / ). This counts 47 character keys on the so-called typewriter part. Increasing this number by defining some other keys with letters is troublesome since they have functions you lose in this case (if the Backspace key types a letter, how do you correct typos?), and those like Insert or F1 are too far away for fast typing and using them for letters. And, actually, we do need punctuation keys for all languages. And numbers, too.
  Now, let’s look at the requirements of a few languages. Written in Latin script, so, in addition to the basic letters,
  – Hungarian needs 9 letters (áéíóúöüőű),
  – Latvian 11 (āčēģīķļņšūž),
  – Slovak 17 (áäčďéíĺľňóôŕšťúýž),
  – Vietnamese 67!
  Written in non-Latin scripts (so, the basic letters may be replaced):
  – Russian needs 33 letters,
  – Tamil 72 character elements,
  – Japanese two syllabaries with 71 characters in each, plus more than 2000 kanjis.
  And who said we must be confined to one language on our keyboard and not more? What about dictionary makers, for example? There are lots of situations when you need two languages at the same time, or even more, and switching layouts at every other word is a pain.

Stories from an Old Keyboardman

In a period, I was ordered to use WordPerfect 5.1. I hated it at first, but soon got accustomed to it and made good friends with it. Well, everything was redefinable!
  But it was lacking an important function: the autocaps, the ability to type capital letters when starting a sentence. I was using Word previously, and there was autocaps there, so I created my own: I built a keyboard layout where sentence-final punctuation marks set a variable, and letter keys checked it: if it was on, they typed an uppercase letter. And there were two additional aids: a small utility program that did the same as the StickyKeys function in Windows (you needn’t to press and hold Shift while pressing the letter, you can press and release it and the next letter will appear shifted; WordPerfect 5.1 wasn’t a Windows program at all), and a little macro on my Tab key that jumped back to the beginning of the current word and changed its first letter from uppercase to lowercase or back. These saved me from precisely timing the fraction of a second when to release Shift what was very important at that speed I was working with.
  I was typesetting a lot of works containing foreign languages, so I added a lot of additional language layouts to my keyboard package. There were 13, if I remember well. There was Hungarian, French, German, Czech, Slovak, Romanian, Portuguese, Esperanto, Polish, Greek and Russianized Bulgarian at least (this means it was mainly used for Bulgarian since I was required to do amounts of text in this language, so the letter ъ was brought to a central position, but it included letters ы, ё and э for Russian). There were so many layouts because for professional typesetting, I don’t believe in dead keys or other methods to reach letters that make essential parts of the language. I rather sacrifice even basic letters, like Q and W for Slovak and V for Polish.
  The mental switching between layouts was never a problem for me, I can adapt in no time that the letter which yielded Ő so far now gives Č or Ж. But if sometimes, very rarely, I need to type on a QWERTZ keyboard, I’m lost.
  Another keyboard layout I made for Wordperfect 5.1 was a Vietnamese one. It was about as large a file as the 13 languages one, because Vietnamese doesn’t only use many diacritical letters but makes use of some diacritics that weren’t even present in the WordPerfect character set. So I had to use tricks to represent them. It wasn’t nice, but acceptable. Both keyboards were lost ages before, but there was a sample I typed in Vietnamese and a printed copy of it survived somehow. I hope I can find it.
  A decade after quitting typesetting, in 2011, there was the work with the large etymological dictionary, or by its Hungarian abbreviation, TESZ. I created a dedicated layout for it, also named TESZ, and I’m still using it, now for ten years. Since that, it was extended several times. Originally, it had three tables: Hungarian, Cyrillic and Greek, and I can switch them with the keys PrtScr, Scroll Lock and Pause, barely used for any purpose nowadays. Later, a Latvian layout was added, PrtScr now switches between Hungarian and Latvian. On the Hungarian layout, there is a diacritics mode that can be switched on by pressing both Shifts – this gives me 28 diacritical keys as mentioned above, they can reach about 1700 characters, including many not even present in Unicode (but needed for TESZ), they’re available in my special HungLingTESZ font only, developed specifically for TESZ, by extending the HungLing font for Uralistics, created by Mártonfi Attila. On the Cyrillic table, the diacritics mode yields rare and non-Slavic letters. The Greek mode has no diacritics mode, but the punctuation keys provide dead keys for both Modern Greek and Ancient Greek.
  À propos dead keys. The original method for dead keys, invented for typewriters, worked the way that you pressed the dead key for the diacritic, this typed the diacritic without advancing the paper, and then you pressed the main letter, so, ¨ a → ä. Computers inherited this method. For some reason, I always felt it more logical to use it the opposite way: a ¨ → ä. With multidiacritic letters, my preference is to define both a ´ → á ^ → ấ and a ^ → â ´ → ấ. This way there’s no need to think what order to use, I’m simply typing them in the order more comfortable at the moment. Linguists are using letters equipped with three and four diacritics as well, so, enforcing their application in any specific order would only make it more complicated.
  My first computer was a Commodore 16 from 1987 for at least three years. I taught it languages as well, immediately when I learned how to change its character set. There may be some printouts from that period somewhere. Many users defined accented letters on Commodores and other home computers, but they taught them the letters of the language they spoke. In Hungary, there was a school computer project in the 1980s, to equip schools with computers and provide education in computing for kids. One of the requirements was that the computers must know all Hungarian letters, both lowercase and uppercase, for elementary schools. For middle schools (from 14 to 18 years of age), they allowed omitting uppercase Ú or Ű, possibly Í or Ő, too.
  There were similar efforts in other countries. Later, in the 1990s, I learned about code pages developed for PCs to support their national languages. The Kamenický encoding, created in Czechia, was very “international” since it supported both Czech and Slovak (however, it was originally created in 1985 when these languages were spoken in a single country). Polish code page Mazovia was even more international because it kept some of the original accented letters, so it was usable for French, German and Italian, even if not perfectly (some French letters were present in lowercase only).
  My aim was always different. I was never satisfied with a computer made able to display Hungarian characters (only – however, you can’t imagine how complicated it was to teach at least Hungarian to some of them), I wanted as many letters as possible. It was just a coincidence that my job required a lot of foreign characters, sometimes including very rare ones (like a book about Arabic historians that had names in a scientific transliteration, with letters like ḥ ḍ ṭ ṣ ẓ) – I was a language maniac always, still I am, I want computers to be able to type text in all the languages. Well, a simple pencil can do it, can’t it?
  This article weren’t be complete if I skip the most beautiful keyboard I ever saw: the Sinclair ZX Spectrum. A favorite of a generation, this little home computer from 1982 featured a keyboard beautiful by both visual appeal and practical usability. Its colourful and text-rich appearance, complete with the famous coloured stripes in the corner, gave it a visually interesting look. Each key had five or six functions, which were obtainable by a witty system of two Shift keys and five “letter cursors”, an original Sinclair invention, complicated at first sight but mastered by users in no time. This was the practical part: the system of Shifts and cursor modes kept your attention awake all the time when typing in Spectrum BASIC. Well, actually, I must confess I never even saw a real Spectrum – I was a Commodore guy. But I knew (and still know) its BASIC language, and its keyboard of course. I used it in emulators and I have a Recreated ZX Spectrum, which is actually a Bluetooth keyboard but exactly looks like a real Spectrum and works with emulators perfectly.


Beautiful and Practical

Keyboards as vehicles of thought, that was what we began with. Why do I tell you stories about my keyboard usage history? Because typesetting was only my job, but I have also a profession: I’m a novelist. And I’ve noticed that a beautiful and practical keyboard inspires thoughts; especially when it is practical and beautiful at the same time. But I’m not the guy who decorates his keyboard with stickers, colorful keycaps or LEDs. For me, this is uninteresting, mainly because I’m not looking at the keyboard. To have a keyboard which is also beautiful, I needed the time of touchscreen keyboards to arrive.

Part II. And There Was Light (on the Screen)

On the Palm of My Hand

Actually, I invented the touchscreen keyboard in the 1980s. Okay, some technical details were missing from the description. I imagined two screens, one standing – that’s the one you see the contents on – and one laying below your fingers. I didn’t realize how important it is to feel the keys under your fingers. On the flat surface of the screen, this is impossible. You’ll need completely new methods.
  It took a long while to try it in practice: in 2006 I bought a Palm TX. With its tiny touchscreen, it’s hard to imagine I wrote a lot of text, even books on it, but I did – just it took a while to reach to a solution. The built-in keyboard wasn’t of much use, it was intended for short notes (a few words, maybe) in English, and there was a selection of accented letters for Western European languages, that was all.
  The solution was myKBD by Alex Pruss, with its hexagonal keys. I had it since the fall of 2006. This means I’m working on the hexagonal keyboard for 15 years, and this the same period of time I spent with the Kinesa layout, designed by myself.

All three keyboard pages of the built-in Palm OS keyboard:

Kinesa layout on myKBD, Palm TX:

In addition to being practically unusable, the built-in layout was ugly. Kinesa was nice indeed, a colorful, neat little keyboard. I didn’t realize it the time, but looking back now I feel this was an important part in that I was able to write a lot with it. It was practical: it knew practically everything the Palm knew, I mean, it contained practically all the characters available (non-Hungarian diacritics came by pressing the letter and the Cycle key, the rounded arrow in the bottom left corner). And it was visually appealing.
  I was using the Palm platform for six years. On Christmas 2012, I got an Android tablet. Okay, but how to write on it?

Best of the Keyboards

For about two years, I had no really good keyboard for Android, but in 2014 my friend Thon brought the first version of Best’s Board into life, and while it’s still not finished yet, I’m using it since that, all the time. Now I’m always writing my books on Android, entirely. And it means amounts of text: Ninda is now nearly half a million words, or 3.7 million characters, completely written on Android.
  Best has two important features compared to other keyboard: the flexibility. Yes, this one is two. We were talking about two beauties, the visual appeal and the practicality. Flexibility means both. I can make my keyboard layouts as beautiful as I want. I prefer black keys with characters in colors that resemble old home computers. (It wasn’t always colored this way, but now this is my style.)
  The Short Swipe method, combined with Rim Travel and Space Travel, makes typing on the hexagonal grid an interesting thing, something similar to a game: how long a chain of letters can I form without raising the stylus? Because it’s both fun and makes writing quicker. The many layouts, the modifiers, sticky keys, memory keys, function keys you can create gives you power, control over what do you have and what can you do with it, and when typing on the keyboard your imagination can work.
  Because it is both beautiful and practical.


My Keyboard Idea

My idea for a perfect keyboard was always the personal needs. Personal – and temporary. For example, let’s look at my needs for the time being. I’m working on a novel, Ninda, with the specialty of both a lot of special diacritic letters and a lot of words with them. For example, some personal names: Ḩaỳŷt Kyrìs, Åmmaĩt ÎÌdaṙa, Dẁnśy Ẽṙlaḩŷ. These are easy to type (I have access to the diacritics), but hard to remember, and I don’t make an effort to learn them – I have a computer in my hands. So, when these names appear frequently in a portion of text, I place them in memory keys which type them when needed. I feel them so important I created a lot of them.
  This lets me use some of them for special punctuation for PHP programming like => and ++ which is faster than typing the characters one by one, placed on sticky keys. Sticky keys are a bit slower than normal keys, requiring more precision, but they consume very little screen real estate.
  I’m writing another novel, Kissy, which takes place in France, so I need French letters (àâçéèêëîïôœüùûÿ), but rarely – but there is a girl in the book named Françoise, so I need letter ç more frequently than the others.
  I’m learning Latvian, so I’m using Latvian letters (āčēģīķļņšūž) frequently, so I placed them on keys. But sometimes it happens that I’m writing an article about, say, Lithuanian things, and I need Lithuanian letters (ąčėęįšūųž). Three years ago I wrote a short novel that takes place on Iceland, so I put three Icelandic letters, æ, ð and þ, on my keyboard (the other ones are present in Hungarian, too, so they were accessible already). When the novel was finished, soon I removed the Icelandic letters since I don’t understand the language, normally I need these letters only occasionally (like in the previous sentence).
  These are all personal and momentary needs. If I happen to write tomorrow, say, an essay on the Vietnam War, I may need a lot of Vietnamese letters; of course, my both keyboards (the plastic one on Windows and the drawn one on Android) have them, but if I mention, say, Ðiện Biên Phủ frequently, I may find it useful to put its letters at better accessible places, or place the whole name on a memory key. And if it’s done, I may delete the complete assignment.


After a period of English-only computing, then the one of homebrew solutions, companies like Microsoft came out with “country = language” methods. If you live in a country, you are no doubt speaking the language of that country and nothing else. You don’t want to type any different character, not present in your country’s language. If you do, work for it. On a Hungarian keyboard, you don’t want to type Molière correctly because it’s from a different language. If you do, first you must install a French keyboard and switch to it. After typing Molière’s name, switch back to Hungarian to continue with your text. And if you are writing something that mentions letters from several different languages, you must install several keyboards and keep switching – like in the case of this little essay.
  This is dumb and backward. We live in a global, multinational, multilanguage world, and we need solutions that keep up with it.