Creating a Russian Extended Keyboard Layout
By Anatoly Mironov
In my spare time I am currently working on a Chuvash-Tatar phrasebook. I have used the Chuvash and Tatar keyboard layout on Linux. They work fine, but switching between them takes time. So I decided to add Tatar letters (right Alt + combinations) to my Chuvash keyboard layout. While adding it I found a combined Russian-Ukranian United keyboard layout and I thought:
- What if I create a new keyboard layout for Russian that will have almost all additional Cyrillic letters? A Russian Extended keyboard layout could be based on the Russian keyboard layout and have other non-Russian letters.
This is what I have come up to so far. The definition can be found on my project at github: russian-extended-kbd. I will update it more and provide more info about how it is organized and how to install it. I’ll also try to implement it for Windows and maybe for Mac (I doubt it, everything is so locked-down there). This is just a proof-of-concept so far. It only works on Linux (with xkb). Nevertheless, some key characteristics of this layout:
- It has all the letters of Russian, Erzya, Moksha, Chuvash, Udmurt, Mari (Meadow and Hill Mari), Bashkir, Tatar and other languages of the Russian Federation and other countries.
- It provides powerful dead keys for (breve, diaeresis, double acute, macron) for composing multiple Cyrillic non-Russian letters
- It is not as quick as “native” keyboard layouts, but you can type text in many languages without switching the keyboard layout.
- It has many other characters that are not present in the Russian standard keyboard layout for editing in wiki, markdown and other formats: [ ] { } ~, mathematical symbols: ≈ ÷ ∞ ° ‰ ≤ < > ≥ × •
- It leaves the numbers. Compared too many other keyboard layouts (see below), this layout does not “steal” the number row. You still can type numbers as usual.
Dead keys
As I mentioned above, dead keys is a powerful feature for composing letters. It is harder to write, but the layout can cover many letters. These dead keys work
diaeresis
ӱ ӥ ӓ ӟ ӝ ӹ ӧ ӵ ӛ ё ї ӫ
double acute
ӳ
breve
ӑ ӗ ў й
macron
ӣ ӯ
These do not work for now (but maybe in future):
cedilla
ҫ ҙ
bar
ғ ұ
hook
ң ҳ қ
So many variants of similar letters
A big challenge in creating a Russian Extended keyboard layout is the fact that languages use different letters for the same sounds (meaning similar sounds).
- /œ/ is ө (Tatar, Bashkir, Sakha…), and ӧ in (Altay, Udmurt, Mari…)
- /y/ is ӳ (Chuvash), ӱ (Mari, Altay, Khakas), ү (Tatar, Bashkir, Sakha)
- /ŋ/ is ҥ (Altay, Sakha, Mari), and ң (Tatar, Bashkir, Khakas, Khanty)
- …
Well, the sounds are not the same, but they are similar. The Swedish Ä is not the same as the German Ä either. If we had a more united Cyrillic script, it would be easier to create a keyboard layout and to read and learn each others’ languages. The letters from different languages are compare in my Google document.
Some “Native” keyboard layouts of the minority languages of the Russian Federation
Other Cyrillic keyboard layouts (outside the Russian Federation)
- Bashkir
- Belarusian
- Chuvash
- Cyrillic
- Erzya
- Kalmyk
- Kazakh
- Kbd
- Keyboard
- Keyboard Layout
- Komi
- Linux
- Mari
- Moksha
- Mongol
- Sakha
- Tatar
- Ubuntu
- Udmurt
- Ukrainian
- Unicode
- Xkb
- Yakut