[PATCH xkb] new layout for Russian letters on Swiss(German) layout. Motivation behind to have layout combining swiss keyboard punctuation and russian phonetic layout Signed-off-by: Vitaly Maslevskiy <vm at qpointz.io>

Vitaly Maslevskiy vm at qpointz.io
Sun Jul 22 14:18:47 UTC 2018


From: vm <gk at qpointz.io>

---
 rules/base.extras.xml.in |  9 ++++++++
 symbols/ch               | 46 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 55 insertions(+)

diff --git a/rules/base.extras.xml.in b/rules/base.extras.xml.in
index fe2bd05..8a85ff6 100644
--- a/rules/base.extras.xml.in
+++ b/rules/base.extras.xml.in
@@ -1049,6 +1049,15 @@
             <_description>French (Switzerland, Sun Type 6/7)</_description>
           </configItem>
         </variant>
+        <variant>
+          <configItem>
+            <name>ru</name>                                    
+            <_description>Russian (Switzerland, phonetic)</_description>
+            <languageList>
+              <iso639Id>rus</iso639Id>
+            </languageList>
+          </configItem>
+        </variant>
       </variantList>
     </layout>
     <layout>
diff --git a/symbols/ch b/symbols/ch
index a87f93a..8920516 100644
--- a/symbols/ch
+++ b/symbols/ch
@@ -215,3 +215,49 @@ partial alphanumeric_keys
 	xkb_symbols "sun_type6_fr" {
 	include "sun_vndr/ch(sun_type6_fr)"
 };
+
+// layout for Russian letters on an german keyboard
+// based on US-RU layout by Ivan Popov <pin at konvalo.org> 2005-07-17
+// adopted for german layout by Alexey Fisher <bug-track at fisher-privat.net> 2010-08-19
+
+partial alphanumeric_keys
+xkb_symbols "ru" {
+
+    include "ch(basic)"
+
+    name[Group1]= "Russian (Switzerland, phonetic)";
+       
+    key <AE11> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN , apostrophe,   question ] };
+    key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN , dead_circumflex, dead_grave ] };
+    key <AC10> { [       Cyrillic_io,       Cyrillic_IO  ] };
+    key <AC11> { [       Cyrillic_yu,       Cyrillic_YU  ] };
+    key <LatX> { [       Cyrillic_ha,       Cyrillic_HA  ] };
+    key <LatH> { [      Cyrillic_che,      Cyrillic_CHE  ] };    
+    key <LatQ> { [       Cyrillic_ya,       Cyrillic_YA  ] };
+    key <LatY> { [       Cyrillic_ze,       Cyrillic_ZE  ] };
+    key <LatZ> { [     Cyrillic_yeru,     Cyrillic_YERU  ] };
+    key <LatS> { [       Cyrillic_es,       Cyrillic_ES  ] };
+    key <LatA> { [        Cyrillic_a,        Cyrillic_A  ] };
+    key <LatW> { [       Cyrillic_ve,       Cyrillic_VE  ] };
+    key <LatC> { [      Cyrillic_tse,      Cyrillic_TSE  ] };    
+    key <LatD> { [       Cyrillic_de,       Cyrillic_DE  ] };
+    key <LatE> { [       Cyrillic_ie,       Cyrillic_IE  ] };
+    key <LatV> { [      Cyrillic_zhe,      Cyrillic_ZHE  ] };
+    key <LatF> { [       Cyrillic_ef,       Cyrillic_EF  ] };
+    key <LatT> { [       Cyrillic_te,       Cyrillic_TE  ] };
+    key <LatR> { [       Cyrillic_er,       Cyrillic_ER  ] };
+    key <LatN> { [       Cyrillic_en,       Cyrillic_EN  ] };
+    key <LatB> { [       Cyrillic_be,       Cyrillic_BE  ] };    
+    key <LatG> { [      Cyrillic_ghe,      Cyrillic_GHE  ] };    
+    key <LatM> { [       Cyrillic_em,       Cyrillic_EM  ] };
+    key <LatJ> { [   Cyrillic_shorti,   Cyrillic_SHORTI  ] };
+    key <LatU> { [        Cyrillic_u,        Cyrillic_U  ] };
+    key <LatK> { [       Cyrillic_ka,       Cyrillic_KA  ] };
+    key <LatI> { [        Cyrillic_i,        Cyrillic_I  ] };
+    key <LatO> { [        Cyrillic_o,        Cyrillic_O  ] };
+    key <LatL> { [       Cyrillic_el,       Cyrillic_EL  ] };
+    key <LatP> { [       Cyrillic_pe,       Cyrillic_PE  ] };
+    key <AD11> { [      Cyrillic_sha,      Cyrillic_SHA  ] };    
+    key <AD12> { [    Cyrillic_shcha,    Cyrillic_SHCHA,    rightbracket, exclam  ] };
+    key <BKSL> { [        Cyrillic_e,        Cyrillic_E  ] };
+};
-- 
2.17.1




More information about the xorg-devel mailing list