Xkb/symbols/cz robot

//partial alphanumeric_keys
partial
xkb_symbols "basic" {
     
     // This layout conforms to a new cz compromise standard designed 
     // to satisfy most unix, windows and mac users.
     // 2001 by Kamil Toman <ktoman@email.cz>
     // 2006 adapted by Petr Herman (Robot) alias Kychot
     // 2006 version 1.1

 //   include "pc/latin"

    name[Group1]= "Czech";
    //			NORMAL	SHIFT		CAPSLOCK	CAPSLOCK+SHIFT
    key <TLDE>	{ [     grave,   asciitilde,         degree,   dead_abovering ]	};
    key <AE01>	{ [      plus,       exclam,              1,       dead_tilde ]	};
    key <AE02>	{ [    ecaron,           at,              2,      dead_ogonek ]	};
    key <AE03>	{ [    scaron,   numbersign,              3,     dead_cedilla ] };
    key <AE04>	{ [    ccaron,       dollar,              4,    dead_abovedot ]	};
    key <AE05>	{ [    rcaron,      percent,              5,       dead_breve ] };
    key <AE06>	{ [    zcaron,  asciicircum,              6,  dead_circumflex ]	};
    key <AE07>	{ [    yacute,    ampersand,              7, dead_doubleacute ]	};
    key <AE08>	{ [    aacute,     asterisk,              8,         NoSymbol ]	};
    key <AE09>	{ [    iacute,    parenleft,              9,         NoSymbol ]	};
    key <AE10>	{ [    eacute,   parenright,              0,         NoSymbol ] };
    key <AE11>	{ [     minus,   underscore,	      endash,           U2212 ] };
    key <AE12>	{ [     equal,   dead_caron,      dead_acute,     dead_macron ] };
    key <BKSL>  { [ backslash,          bar,  dead_diaeresis,      dead_grave ] }; 

    key <AD01>	{ [         q,          Q,    backslash,     NoSymbol ]	};
    key <AD02>	{ [         w,          W,          bar,     Nosymbol ]	};
    key <AD03>	{ [         e,          E,     EuroSign,     NoSymbol ]	};
    key <AD04>	{ [         r,          R,     NoSymbol,     NoSymbol ]	};
    key <AD05>	{ [         t,          T,     NoSymbol,     NoSymbol ]	};
    key <AD06>	{ [         y,          Y,     NoSymbol,     NoSymbol ]	};
    key <AD07>	{ [         u,          U,            7,     NoSymbol ]	};
    key <AD08>	{ [         i,          I,            8,     NoSymbol ]	};
    key <AD09>	{ [         o,          O,            9,     NoSymbol ]	};
    key <AD10>	{ [         p,          P,     NoSymbol,     NoSymbol ]	};

    key <AD11>	{ [ bracketleft,   braceleft,    uacute,     division ]	};
    key <AD12>	{ [ bracketright, braceright,  NoSymbol,     multiply ]	};

    key <AC01>	{ [         a,          A,   asciitilde,     NoSymbol ]	};
    key <AC02>	{ [         s,          S,       ssharp,     NoSymbol ]	};
    key <AC03>	{ [         d,          D,      dstroke,     Dstroke ]	};
    key <AC04>	{ [         f,          F,  bracketleft,     NoSymbol ]	};
    key <AC05>	{ [         g,          G, bracketright,     NoSymbol ]	};
    key <AC06>	{ [         h,          H,        grave,     NoSymbol ]	};
    key <AC07>	{ [         j,          J,            4,     NoSymbol ]	};
    key <AC08>	{ [         k,          K,            5,     Lstroke  ]	};
    key <AC09>	{ [         l,          L,            6,     lstroke  ]	};
                  
    key <AC10>	{ [     uring,      colon,     NoSymbol,     NoSymbol ]	};
    key <AC11>	{ [ semicolon,   quotedbl,   apostrophe,      section ]	};
//  key <AC10>	{ [     uring,      colon,    semicolon,     NoSymbol ]	};
//  key <AC11>	{ [ apostrophe,  quotedbl,      section,    paragraph ]	};
//  key <AC12>	{ [  EuroSign, dead_diaeresis, NoSymbol,     NoSymbol ]	};  jako BKSL
//  key <LSGT>	{ [ backslash,        bar,        slash,     NoSymbol ]	};

    key <AB01>	{ [         z,          Z,     NoSymbol,     NoSymbol ]	};
    key <AB02>	{ [         x,          X,     NoSymbol,     Nosymbol ]	};
    key <AB03>	{ [         c,          C,     NoSymbol,     NoSymbol ]	};
    key <AB04>	{ [         v,          V,     NoSymbol,     NoSymbol ]	};
    key <AB05>	{ [         b,          B,     NoSymbol,     NoSymbol ]	};
    key <AB06>	{ [         n,          N,     NoSymbol,     NoSymbol ]	};
    key <AB07>	{ [         m,          M,            1,     NoSymbol ]	};
    key <AB08>	{ [     comma,       less,            2,     NoSymbol ]	};
    key <AB09>	{ [    period,    greater,            3,     NoSymbol ]	};
    key <AB10>	{ [     slash,   question,     NoSymbol,     NoSymbol ]	};

    key <SPCE>	{ [     space,      space,            0, nobreakspace ]	};

    key <KPDL>	{ type[Group1]="FOUR_LEVEL_KEYPAD",
                  [ KP_Delete,      period,    KP_Delete,   KP_Decimal ]	};

    //key <RALT> { type[Group1]="ONE_LEVEL", symbols[Group1] = [ ISO_Level3_Shift ]};
     key <CAPS> { type[Group1]="ONE_LEVEL", symbols[Group1] = [ ISO_Level3_Shift ]};                  
    // key <CAPS>  { type[Group1] = "ONE_LEVEL", [ ISO_Level3_Lock ] };
    //key <CAPS> {     [       Caps_Lock               ]       };
    //key <RALT> {     [       Caps_Lock               ]       };                                     
	  
//  include "level3(ralt_switch)"
//  include "cz_robot(ralt_switch)"

//    key <CAPS>  {  symbols[Group1]= [ Control_L ] };                                                 
//    key <LCTL>  {  symbols[Group1]= [ Caps_Lock ] };                                                 

//    key <RALT>  {  symbols[Group1]= [ Caps_Lock ] };                                                 

//    key <MENU> {        [ NoSymbol, NoSymbol ]       };
//    modifier_map Mod3   { <MENU> };

//      key <RWIN> {        [ NoSymbol, NoSymbol ]       };
//      modifier_map Mod3   { <RWIN> };
};


partial modifier_keys                                                                                
xkb_symbols "ralt_switch" {                                                                          
  key <RALT> {                                                                                       
    type[Group1]="ONE_LEVEL",                                                                        
    symbols[Group1] = [ ISO_Level3_Shift ]                                                           
    };                                                                                               
};                                                                                                   

// swap the caps lock key with the left control key                                                  
partial modifier_keys                                                                                
xkb_symbols "swapcaps" {                                                                             
    key <CAPS>  {  symbols[Group1]= [ Control_L ] };                                                 
    key <LCTL>  {  symbols[Group1]= [ Caps_Lock ] };                                                 
};                                                                                                   


// Use <BKSL> instead of <LSGT> (useful for keyboard without <LSGT> key)
// xkb_symbols "bksl" {
//    include "pc/cz(basic)"
//
//    key <BKSL>	{ [ backslash,        bar,        slash,     NoSymbol ]	};
//};