// Based on $TOG: ru /main/4 1997/06/10 06:56:17 kaleb $

//  (c) AEN <aen@logic.ru> , IPLabs Linux Team (http://www.iplabs.ru/Linux/) , 1999



partial alphanumeric_keys 
xkb_symbols "toggle" {
    include "kkb/uams(basic)"
    key	<CAPS> {	[  ISO_Next_Group,	 Caps_Lock	]	};
};
partial alphanumeric_keys 
xkb_symbols "shift_toggle" {
    include "kkb/uams(basic)"
    key <LFSH>	{	[	Shift_L,	ISO_Prev_Group ]	};
    key <RTSH>	{	[	Shift_R,	ISO_Next_Group ]	};
};
partial default alphanumeric_keys 
xkb_symbols "basic" {

    // Describes the differences between a very simple en_US
    // keyboard and a very simple Ukrainian keybaord

    name[Group1]= "US/ASCII";
    name[Group2]= "Ukrainian";

    key	<TLDE> {	[	    grave,	asciitilde	],
			[     hyphen,     onehalf	]	};
    key	<LSGT> {	[	     less,	   greater	],
			[	      bar,	 brokenbar	]	};
    key	<AD01> {	[		q,		 Q	],
			[ Ecircumflex, ecircumflex	]	};
    key	<AE01> {	[		1,	    exclam	],
			[		1,	    exclam 	]	};
    key	<AB01> {	[		z,	         Z	],
			[     Ntilde,     ntilde	]	};
    key	<AC02> {	[		s,		 S	],
			[   Eacute,   eacute	]	};
    key	<AC01> {	[		a,		 A	],
			[     AE,     ae           ]	};
    key	<AD02> {	[		w,		 W	],
			[    Atilde,    atilde	]	};
    key	<AE02> {	[		2,		at	],
			[		2,        quotedbl	]	};
    key	<AB03> {	[		c,		 C	],
			[     Oacute,     oacute	]	};
    key	<AB02> {	[		x,		 X	],
			[    THORN,    thorn	]	};
    key	<AC03> {	[		d,		 D	],
			[     multiply,     division	]	};
    key	<AD03> {	[		e,		 E	],
			[      Otilde,	otilde	]	};
    key	<AE04> {	[		4,	 dollar		],
			[		4,        semicolon	]	};
    key	<AE03> {	[		3,	numbersign	],
			[		3,      numbersign	]	};
    key	<AB04> {	[		v,		 V	],
			[     Iacute,     iacute	]	};
    key	<AC04> {	[		f,		 F	],
			[      Aacute,	aacute	]	};
    key	<AD05> {	[		t,		 T	],
			[     Aring,     aring	]	};
    key	<AD04> {	[		r,		 R	],
			[     Ediaeresis,     ediaeresis	]	};
    key	<AE05> {	[		5,	   percent	],
			[		5,	   percent	]	};
    key	<AB06> {	[		n,		 N	],
			[     Ocircumflex,     ocircumflex	]	};
    key	<AB05> {	[		b,		 B	],
			[      brokenbar,	 paragraph	]	};
    key	<AC06> {	[		h,		 H	],
			[     Ograve,     ograve	]	};
    key	<AC05> {	[		g,		 G	],
			[     ETH,     eth	]	};
    key	<AD06> {	[		y,		 Y	],
			[     Icircumflex,     icircumflex	]	};
    key	<AE06> {	[		6,     asciicircum	],
			[		6,	     colon	]	};
    key	<AB07> {	[		m,		 M	],
			[Ooblique, oslash	]	};
    key	<AC07> {	[		j,		 J	],
			[      Idiaeresis,	idiaeresis	]	};
    key	<AD07> {	[		u,		 U	],
			[    Ccedilla,    ccedilla	]	};
    key	<AE07> {	[		7,	 ampersand	],
			[		7,	  question	]	};
    key	<AE08> {	[		8,	  asterisk	],
			[		8,	  asterisk	]	};
    key	<AB08> {	[	    comma,	      less	],
			[     Acircumflex,     acircumflex	]	};
    key	<AC08> {	[		k,		 K	],
			[     Igrave,     igrave	]	};
    key	<AD08> {	[		i,		 I	],
			[    Ucircumflex,    ucircumflex	]	};
    key	<AD09> {	[		o,		 O	],
			[  Yacute,  yacute	]	};
    key	<AE10> {	[		0,	parenright	],
			[		0,	parenright	]	};
    key	<AE09> {	[		9,	 parenleft	],
			[		9,	 parenleft	]	};
    key	<AB09> {	[	   period,	   greater	],
			[     Agrave,     agrave	]	};
    key	<AB10> {	[	    slash,	  question   	],
			[	    period,	     comma	]	};
    key	<AC09> {	[		l,		 L	],
			[     Adiaeresis,     adiaeresis	]	};
    key	<AC10> {	[	semicolon,	     colon	],
			[    Odiaeresis,    odiaeresis	]	};
    key	<AD10> {	[		p,		 P	],
			[     Uacute,     uacute	]	};
    key	<AE11> {	[	    minus,	underscore	],
			[	    minus,	underscore	]	};
    key	<AC11> {	[      apostrophe,	  quotedbl	],
			[      currency,	acute	]	};
    key	<AD11> {	[     bracketleft,	 braceleft	],
			[     Egrave,     egrave	]	};
    key	<AE12> {	[	    equal,	      plus	],
			[	    equal,	      plus	]	};
    key	<AD12> {	[    bracketright,	braceright	],
			[ section, periodcentered	]	};
    key	<BKSL> {	[	backslash,	       bar	],
			[	backslash,             slash	]	};

    // End alphanumeric section
    
    // Begin modifier mappings 

    modifier_map Shift  { Shift_L };
    modifier_map Lock   { Caps_Lock, ISO_Lock };
    modifier_map Control{ Control_L };
    modifier_map Mod3   { Mode_switch };
};

