// Keyboard layouts for Romania.
// The first two layouts conform to the Romanian standard SR 13392:2004,
// adopted in 2004 by ASRO, "Asociația de Standardizare din România".
//
// The default layout is the Programmers layout because keyboards that are
// engraved according to the primary layout from the standard are lacking.
// The "std" variant, further down, implements the primary layout.
//
// Diacritics with cedillas, as in ISO-8859-2, are no longer supported. This
// error has been corrected in ISO-889-16 through using commabelow accents.
// Pre-Vista MS-compatible layout ("winkeys" variant) generates commabelow
// accents too now.
//
// Created by Cristian Gafton, <gafton@redhat.com> (C) 2000
// Modified by Marius Andreiana, <mandreiana@yahoo.com> (C) 2001
// Completed by Dumitru Moldovan, <dumol@gnome.org> (C) 2001, 2004-2008, 2020
default partial alphanumeric_keys
xkb_symbols "basic" {
// This Programmers/RO_US layout has always been the "de facto" standard
// in the Linux/Unix world, and is therefore the default here, although
// it is the secondary layout in the Romanian standard. It is fully
// compatible with a US keyboard (ignoring the Euro on AltGr+5).
include "us"
name[Group1]="Romanian";
key <AE01> {[ 1, exclam, dead_tilde ]};
key <AE02> {[ 2, at, dead_caron ]};
key <AE03> {[ 3, numbersign, dead_circumflex ]};
key <AE04> {[ 4, dollar, dead_breve ]};
key <AE05> {[ 5, percent, dead_abovering ]};
key <AE06> {[ 6, asciicircum, dead_ogonek ]};
key <AE07> {[ 7, ampersand, dead_grave ]};
key <AE08> {[ 8, asterisk, dead_abovedot ]};
key <AE09> {[ 9, parenleft, dead_acute ]};
key <AE10> {[ 0, parenright, dead_doubleacute ]};
key <AE11> {[ minus, underscore, dead_diaeresis, endash ]};
key <AE12> {[ equal, plus, dead_cedilla, plusminus ]};
key <AD01> {[ q, Q, acircumflex, Acircumflex ]};
key <AD02> {[ w, W, ssharp, U1e9e ]};
key <AD03> {[ e, E, EuroSign ]};
key <AD05> {[ t, T, U021b, U021a ]}; // ț Ț
key <AD08> {[ i, I, icircumflex, Icircumflex ]};
key <AD10> {[ p, P, section ]};
key <AD11> {[ bracketleft, braceleft, doublelowquotemark ]};
key <AD12> {[ bracketright, braceright, rightdoublequotemark ]};
key <AC01> {[ a, A, abreve, Abreve ]};
key <AC02> {[ s, S, U0219, U0218 ]}; // ș Ș
key <AC03> {[ d, D, dstroke, Dstroke ]};
key <AC09> {[ l, L, lstroke, Lstroke ]};
key <LSGT> {[ backslash, bar ]};
key <AB03> {[ c, C, copyright ]};
key <AB08> {[ comma, less, guillemotleft ]};
key <AB09> {[ period, greater, guillemotright ]};
key <KPDL> {[ KP_Delete, KP_Decimal, KP_Separator, KP_Separator ]};
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "std" {
// Primary layout in the Romanian standard, implemented here as a variant
// because Romanian users prefer the secondary layout of the standard.
include "us"
name[Group1]="Romanian (standard)";
key <TLDE> {[doublelowquotemark,rightdoublequotemark, grave, asciitilde]};
key <AE01> {[ 1, exclam, dead_tilde ]};
key <AE02> {[ 2, at, dead_caron ]};
key <AE03> {[ 3, numbersign, dead_circumflex ]};
key <AE04> {[ 4, dollar, dead_breve ]};
key <AE05> {[ 5, percent, dead_abovering ]};
key <AE06> {[ 6, asciicircum, dead_ogonek ]};
key <AE07> {[ 7, ampersand, dead_grave ]};
key <AE08> {[ 8, asterisk, dead_abovedot ]};
key <AE09> {[ 9, parenleft, dead_acute ]};
key <AE10> {[ 0, parenright, dead_doubleacute ]};
key <AE11> {[ minus, underscore, dead_diaeresis, endash ]};
key <AE12> {[ equal, plus, dead_cedilla, plusminus ]};
key <AD03> {[ e, E, EuroSign ]};
key <AD10> {[ p, P, section ]};
key <AD11> {[ abreve, Abreve, bracketleft, braceleft ]};
key <AD12> {[ icircumflex, Icircumflex, bracketright, braceright ]};
key <BKSL> {[ acircumflex, Acircumflex, backslash, bar ]};
key <AC02> {[ s, S, ssharp, U1e9e ]};
key <AC03> {[ d, D, dstroke, Dstroke ]};
key <AC09> {[ l, L, lstroke, Lstroke ]};
key <AC10> {[ U0219, U0218, semicolon, colon ]}; // ș Ș
key <AC11> {[ U021b, U021a, apostrophe, quotedbl ]}; // ț Ț
key <LSGT> {[ backslash, bar ]};
key <AB03> {[ c, C, copyright ]};
key <AB08> {[ comma, semicolon, less, guillemotleft ]};
key <AB09> {[ period, colon, greater, guillemotright ]};
key <KPDL> {[ KP_Delete, KP_Separator, KP_Decimal, KP_Decimal ]};
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "winkeys" {
// Romanian (legacy) QWERTZ keyboard layout, as available on Windows 10,
// but with the correct commabelow accents and the Euro sign on AltGr+e.
// Some Romanian hardware keyboards are still built like this.
// Older Romanian hardware keyboards might be slightly different.
// Created by Manfred Pohler, <Manfred.Pohler@t-online.de> (C) 2003
// Updated by Dumitru Moldovan, <dumol@gnome.org> (C) 2020
include "us"
name[Group1]="Romanian (Windows)";
key <TLDE> {[ bracketright, bracketleft ]};
key <AE01> {[ 1, exclam, asciitilde ]};
key <AE02> {[ 2, quotedbl, dead_caron ]};
key <AE03> {[ 3, numbersign, dead_circumflex ]};
key <AE04> {[ 4, currency, dead_breve ]};
key <AE05> {[ 5, percent, dead_abovering ]};
key <AE06> {[ 6, ampersand, dead_ogonek ]};
key <AE07> {[ 7, slash, dead_grave ]};
key <AE08> {[ 8, parenleft, dead_abovedot ]};
key <AE09> {[ 9, parenright, dead_acute ]};
key <AE10> {[ 0, equal, dead_doubleacute ]};
key <AE11> {[ plus, question, dead_diaeresis ]};
key <AE12> {[ apostrophe, asterisk, dead_cedilla ]};
key <AD01> {[ q, Q, backslash ]};
key <AD02> {[ w, W, bar ]};
key <AD03> {[ e, E, EuroSign ]};
key <AD06> {[ z, Z ]};
key <AD11> {[ abreve, Abreve, division ]};
key <AD12> {[ icircumflex, Icircumflex, multiply ]};
key <AC02> {[ s, S, dstroke ]};
key <AC03> {[ d, D, Dstroke ]};
key <AC08> {[ k, K, lstroke ]};
key <AC09> {[ l, L, Lstroke ]};
key <AC10> {[ U0219, U0218, dollar ]}; // ș Ș
key <AC11> {[ U021b, U021a, ssharp ]}; // ț Ț
key <BKSL> {[ acircumflex, Acircumflex ]};
key <LSGT> {[ less, greater ]};
key <AB01> {[ y, Y ]};
key <AB04> {[ v, V, at ]};
key <AB05> {[ b, B, braceleft ]};
key <AB06> {[ n, N, braceright ]};
key <AB07> {[ m, M, section ]};
key <AB08> {[ comma, semicolon, less ]};
key <AB09> {[ period, colon, greater ]};
key <AB10> {[ minus, underscore ]};
key <KPDL> {[ KP_Delete, KP_Separator, KP_Decimal, KP_Decimal ]};
include "level3(ralt_switch)"
};
// EXTRAS:
partial
xkb_symbols "crh_dobruja" {
// Romania-specific Crimean Tatar (Crimean Turkish) Q layout, not yet standard.
// Reşat SABIQ <tilde.birlik @ gmail . com>, 2009, 2011
// Özgür Qarahan <qarahan @ gmail . com>, 2009
include "ua(crh)"
name[Group1]="Crimean Tatar (Dobruja Q)";
key <AD02> {[ w, W, abreve, Abreve ]};
key <AD05> {[ t, T, U021b, U021a ]}; // ț Ț
key <AD10> {[ p, P, section ]};
key <AC02> {[ s, S, U0219, U0218 ]}; // ș Ș
key <AC07> {[ ibreve, Ibreve, j, J ]};
key <AB07> {[ m, M, trademark, masculine ]};
};
partial alphanumeric_keys
xkb_symbols "ergonomic" {
// This layout is optimized for fast touch-typing in Romanian on a
// US keyboard, and works by swapping out symbols infrequently used
// in written Romanian (q, w, y, k) in favor of native ones, thus
// reducing the need to use modifier keys.
// Created by Gabriel Somlo, <somlo@cmu.edu> (C) 2011
include "ro(basic)"
name[Group1]="Romanian (ergonomic Touchtype)";
key <AD01> {[ abreve, Abreve, q, Q ]};
key <AD02> {[ U0219, U0218, w, W ]};
key <AD06> {[ U021b, U021a, y, Y ]};
key <AC01> {[ a, A, acircumflex, Acircumflex ]};
key <AC08> {[ icircumflex, Icircumflex, k, K ]};
};
partial alphanumeric_keys
xkb_symbols "sun_type6" {
include "sun_vndr/ro(sun_type6)"
};
|