File ucw_suse.diff of Package xkeyboard-config

Index: xkeyboard-config-1.5/po/cs.po
===================================================================
--- xkeyboard-config-1.5.orig/po/cs.po
+++ xkeyboard-config-1.5/po/cs.po
@@ -2621,3 +2621,11 @@ msgstr "qwerty/číslice"
 #: ../rules/base.xml.in.h:655 ../rules/evdev.xml.in.h:655
 msgid "qwertz"
 msgstr "qwertz"
+
+#: ../rules/base.xml.in.h:647
+msgid "UCW layout (accented letters only)"
+msgstr "rozložení UCW (pouze akcentovaná písmena)"
+
+#: ../rules/base.xml.in.h:648
+msgid "CapsLock key switches layout while pressed, Alt+CapsLock does the original capslock action."
+msgstr "klávesa CapsLock přepne při stisknutí rozložení, Alt+CapsLock má původní význam capslock."
Index: xkeyboard-config-1.5/rules/base.xml.in
===================================================================
--- xkeyboard-config-1.5.orig/rules/base.xml.in
+++ xkeyboard-config-1.5/rules/base.xml.in
@@ -3475,6 +3475,12 @@
             <_description>qwerty, extended Backslash</_description>
           </configItem>
         </variant>
+	<variant>
+	  <configItem>
+	    <name>ucw</name>
+	    <_description>UCW layout (accented letters only)</_description>
+	 </configItem>
+	</variant>
       </variantList>
     </layout>
     <layout>
@@ -4166,6 +4172,12 @@
       </option>
       <option>
         <configItem>
+          <name>grp:caps_switch</name>
+          <description>CapsLock key switches layout while pressed, Alt+CapsLock does the original capslock action.</description>
+        </configItem>
+      </option>
+      <option>
+        <configItem>
           <name>grp:rctrl_switch</name>
           <_description>Right Ctrl (while pressed)</_description>
         </configItem>
@@ -4605,6 +4617,12 @@
         </configItem>
       </option>
       <option>
+        <configItem>
+          <name>caps:groupshift</name>
+          <description>CapsLock key switches layout while pressed, Alt+CapsLock does the original capslock action.</description>
+        </configItem>
+      </option>
+      <option>
         <configItem>
           <name>caps:shiftlock</name>
           <_description>CapsLock toggles Shift so all keys are affected</_description>
Index: xkeyboard-config-1.5/rules/compat/layoutRename.lst
===================================================================
--- xkeyboard-config-1.5.orig/rules/compat/layoutRename.lst
+++ xkeyboard-config-1.5/rules/compat/layoutRename.lst
@@ -3,6 +3,7 @@ ben	in(ben)
 bs	ba
 cs	rs
 cz_qwerty cz(qwerty)
+cz_ucw cz(ucw)
 dev	in(deva)
 dvorak	us(dvorak)
 dzdwi	bt
Index: xkeyboard-config-1.5/symbols/capslock
===================================================================
--- xkeyboard-config-1.5.orig/symbols/capslock
+++ xkeyboard-config-1.5/symbols/capslock
@@ -31,6 +31,15 @@ xkb_symbols "groupshift" {
     };
 };
 
+
+partial hidden modifier_keys
+xkb_symbols "groupshift" {
+    key <CAPS> {
+       type[Group1]="PC_ALT_LEVEL2",
+       [       Mode_switch,    Caps_Lock       ]
+    };
+};
+
 partial hidden modifier_keys
 xkb_symbols "escape" {
     key <CAPS> {        [       Escape  ]       };
Index: xkeyboard-config-1.5/symbols/cz
===================================================================
--- xkeyboard-config-1.5.orig/symbols/cz
+++ xkeyboard-config-1.5/symbols/cz
@@ -111,6 +111,45 @@ xkb_symbols "ucw" {
     // accented characters only, no 'latin' set.
     // 2008 by Milan Vancura <mvancura@suse.cz>
 
+    name[Group1]= "Czechia - ucw";
+
+    key <AD01> { [adiaeresis,  Adiaeresis  ] };
+    key <AD02> { [ecaron,      Ecaron      ] };
+    key <AD03> { [eacute,      Eacute      ] };
+    key <AD04> { [rcaron,      Rcaron      ] };
+    key <AD05> { [tcaron,      Tcaron      ] };
+    key <AD06> { [yacute,      Yacute      ] };
+    key <AD07> { [uring,       Uring       ] };
+    key <AD08> { [iacute,      Iacute      ] };
+    key <AD09> { [oacute,      Oacute      ] };
+    key <AD10> { [odiaeresis,  Odiaeresis  ] };
+
+    key <AC01> { [aacute,      Aacute      ] };
+    key <AC02> { [scaron,      Scaron      ] };
+    key <AC03> { [dcaron,      Dcaron      ] };
+    key <AC04> { [ediaeresis,  Ediaeresis  ] };
+    key <AC05> { [racute,      Racute      ] };
+    key <AC06> { [uacute,      Uacute      ] };
+    key <AC07> { [udiaeresis,  Udiaeresis  ] };
+    key <AC08> { [ocircumflex, Ocircumflex ] };
+    key <AC09> { [lcaron,      Lcaron      ] };
+
+    key <AB01> { [zcaron,      Zcaron      ] };
+    key <AB02> { [ssharp                   ] };
+    key <AB03> { [ccaron,      Ccaron      ] };
+    key <AB04> { [ccedilla,    Ccedilla    ] };
+    key <AB05> { [ntilde,      Ntilde      ] };
+    key <AB06> { [ncaron,      Ncaron      ] };
+    key <AB07> { [lacute,      Lacute      ] };
+};
+
+partial alphanumeric_keys alternate_group
+xkb_symbols "ucw" {
+
+    // This layout is usually used as the second group, it contains
+    // accented characters only, no 'latin' set.
+    // 2008 by Milan Vancura <mvancura@suse.cz>
+
     name[Group1]= "Czechia - UCW layout (accented letters only)";
 
     key <AB01> { [zcaron,      Zcaron      ] };
Index: xkeyboard-config-1.5/symbols/group
===================================================================
--- xkeyboard-config-1.5.orig/symbols/group
+++ xkeyboard-config-1.5/symbols/group
@@ -120,6 +120,16 @@ xkb_symbols "lctrl_lshift_toggle" {
     key <LCTL>	{	[	Control_L,	ISO_Next_Group ]	};
 };
 
+// using the group(caps_switch) map, pressing:
+//     Caps Lock  key temporarily chooses the second keyboard group
+//                (until it is released)
+//     Alt+Caps Lock toggles caps lock
+partial modifier_keys
+xkb_symbols "caps_switch" {
+    include "capslock(groupshift)"
+};
+
+
 // using the group(shift_caps_toggle) map, pressing:
 //     Shift+Caps Lock toggles group
 partial modifier_keys
Index: xkeyboard-config-1.5/rules/base.o_s.part
===================================================================
--- xkeyboard-config-1.5.orig/rules/base.o_s.part
+++ xkeyboard-config-1.5/rules/base.o_s.part
@@ -13,6 +13,7 @@
   grp:win_switch	=	+group(win_switch)
   grp:lwin_switch	=	+group(lwin_switch)
   grp:rwin_switch	=	+group(rwin_switch)
+  grp:caps_switch       =       +group(caps_switch)
   grp:toggle		=	+group(toggle)
   grp:shifts_toggle	=	+group(shifts_toggle)
   grp:ctrls_toggle	=	+group(ctrls_toggle)
@@ -52,6 +53,7 @@
   caps:swapescape	=	+capslock(swapescape)
   caps:escape		=	+capslock(escape)
   caps:backspace	=	+capslock(backspace)
+  caps:groupshift	=	+capslock(groupshift)
   ctrl:nocaps		=	+ctrl(nocaps)
   ctrl:swapcaps		=	+ctrl(swapcaps)
   ctrl:ctrl_ac		=	+ctrl(ctrl_ac)
openSUSE Build Service is sponsored by