2014-02-06

In this post I will talk about the Romanian virtual keyboard on smart phones. I will cover the default virtual keyboard provided by the manufacturers.

A virtual keyboard is basically an array of buttons which when pressed they generate a character. This sounds easy, right? Well, it's easy when you know which characters to generate. In practice it seems nobody knows very well which characters belong in the Romanian virtual keyboard.

What is so special about the Romanian virtual keyboard? In addition to the English characters the Romanian virtual keyboard should have:

How should we put all of these, or at least the five extra letters, into the keyboard? One way would be to put them like separated buttons, like the Nokia Symbian virtual keyboard:

To overcome this space problem an extra array of buttons pops up when
one long-presses the base character, for example long-press "s" and you will
get a menu containing "ș".

What do we do with this pop-up menu? Just leave it there? Or select by default
one of the characters and on release activate it?

I like the second part. I find it very practical to long-press "s" wait for the menu and then
release knowing that I will always get "ș".

You might have noticed that we have "ă" and "â", which both have "a" as the
base character. The solution would be to put "â" also on long-press "q". This
method is used by the "Romanian Programmers" layout, which is present on
Windows Vista and above. Note that "â" would still be part of the long-press menu for "a".

My ideal virtual Romanian keyboard would have on long-press a→ă, q→â, i→î, s→ș, t→ț. On long-press space, or other
key, it will generate Non Breaking Hyphen or just the common minus "-". The quotes and the EN Dash could be added to
a symbols menu. In landscape mode, because of the extra space, one could have buttons for the five extra letters.

I did a quick test for just the five characters on a few smart phones. All the links point to small video recordings on YouTube.

Apple iPhone 5 - has support for all five characters. On long-press no
selection of the diacritical mark is made. The same base character is copied
in the menu as default selected character, which makes the release of a long-press useless, one needs
to move the finger to select the character, which in practice is error prone.

Nokia Lumia 928 - Windows Phone 8 - all five characters can be inserted. There is no long-press character generation, just the pop-up menu, which
actually remains open when you release the long-press.

Blackberry Z10 - all five characters can be inserted. It supports long-press and release but it copies the base character and when you release you don't get the diacritical mark.

I've left Android at the end because every major OEM has its own virtual keyboard.

Google Nexus 7 - Android 4.4.2 comes with the stock Android keyboard,
which can generate all five diacritics. Unlike the others there is
support for long-press and release to generate the diacritical marks. But
not all of them work as expected: a→â, s→ș, t→5, i→8. In my opinion the diacritical mark should be selected on
long-press and not the number. If the user wants numbers (s)he can switch to numbers mode, or long-press the base letter.

Samsung Galaxy S4 - Android 4.3 - is the first Android virtual keyboad which
doesn't generate all five diacritics. S Comma Below is missing, instead
there is present the old S Cedilla. Interstingly "t" has on the long-press menu both T Comma Below and old T Cedilla.

Like the Android stock keyboard
there is support for long-press and release to generate the
diacritical marks and because it has an extra row for numbers it works better
than the stock Android keyboard.

Samsung Galaxy Note 3 - it resembles the Samsung Galaxy S4, but with one major difference - there is no long-press and release support. It behaves like Windows Phone 8, it just leaves the pop-up menu floating.

LG G2 - Android 4.2.2 - it doesn't generate all the five
diacritics - î is missing. It has support for long-press and release, but
instead of generating diacritics they generate symbols: a→@, s→* etc.

HTC One Max - Android 4.3 - it also doesn't generate all diacritics, instead of S and T Comma Below it generates S and T Cedilla. It has support for
long-press and release, but it generates symbols and not diacritics. The
diacritics on the long-press menu are not optimized for Romanian usage,
you have to hunt for them.

Sony Xperia Z1 Compact - Android 4.3. It does generate all diacritics, it
has long-press and release to generate the diacritic mark. Sony has the best support
for Romanian in a smartphone's virtual keyboard! Congratulations Sony!
Still no "â" on "q" though.

Below I've put a summary of all of the above:

At CES2014 I gave feedback to Sony, Samsung, and LG. I hope that they will improve
the Romanian virtual keyboard in their products.

As a final remark. I haven't mentioned anything about the dictionary which usually comes with a virtual keyboard. I haven't had time to test them. One needs to pay attention to S and T Comma Below, you should not have words containing old S and T Cedilla. Also dictionary needs to know about Romanian for example if I type "cutit" it should present me "cuțit".