
// based on
// Croatian keyboards
// by Vlatko Kosturjak (kost at linux.hr)
// Taken from Slovenian keyboards
// by Marko Samastur (markos@elite.org) and
// Primoz Peterlin (primoz.peterlin@biofiz.mf.uni-lj.si)
//
// Changelog
// =========
// 2003-04-03 Added <KPDL> (Delete/Separator)
// 2000-02-06 Initial version
//
// $XKeyboardConfig: xkbdesc/symbols/hr,v 1.8 2005/01/20 01:06:49 svu Exp $
// $XFree86: xc/programs/xkbcomp/symbols/hr,v 1.3 2003/04/13 18:22:21 dawes Exp $

default partial alphanumeric_keys
xkb_symbols "basic" {

    include "latin(type3)"

    name[Group1]="Croatia";

    key <AB10>  { [     minus,    underscore      ]       }; 

    key <AE01>	{ [         1,     exclam,   asciitilde,   dead_tilde ]	};
    key <AE02>	{ [         2,   quotedbl,   dead_caron,        caron ]	};
    key <AE03>	{ [         3, numbersign,  asciicircum, dead_circumflex ] };
    key <AE04>	{ [         4,     dollar,   dead_breve,        breve ]	};
    key <AE05>	{ [         5,    percent,       degree, dead_abovering ] };
    key <AE06>	{ [         6,  ampersand,  dead_ogonek,       ogonek ]	};
    key <AE07>	{ [         7,      slash,        grave,   dead_grave ]	};
    key <AE08>	{ [         8,  parenleft, dead_abovedot,    abovedot ]	};
    key <AE09>	{ [         9, parenright,   dead_acute,   apostrophe ]	};
    key <AE10>	{ [         0,      equal, dead_doubleacute, doubleacute ] };
    key <AE11>	{ [apostrophe,   question, dead_diaeresis,  diaeresis ]	};
    key <AE12>	{ [      plus,   asterisk, dead_cedilla,      cedilla ]	};

    key <AD03>	{ [         e,          E,     EuroSign,     EuroSign ]	};
    key <AD11>	{ [    scaron,     Scaron,     division, dead_abovering ] };
    key <AD12>	{ [   dstroke,    Dstroke,     multiply,  dead_macron ]	};

    key <AC10>	{ [    ccaron,     Ccaron,   dead_acute, dead_doubleacute ] };
    key <AC11>	{ [    cacute,     Cacute,       ssharp,   dead_caron ]	};
    key <TLDE>	{ [dead_cedilla, dead_diaeresis, notsign,     notsign ]	};

    key <BKSL>	{ [    zcaron,     Zcaron,     currency,   dead_breve ]	};

    include "keypad(comma)"

    include "level3(ralt_switch)"
};

partial alphanumeric_keys 
xkb_symbols "us" {

    // Describes the differences between US/ASCII
    // keyboard and a Croatian-US keyboard
    // by Vlatko Kosturjak (kost at linux.hr)

    // Alphanumeric section
    name[Group1]= "Croatia - US keyboard with Croatian letters";
    key <AD01> {	[	  q,	Q 		],
			[ backslash			]	};
    key <AD02> {	[	  w,	W 		],
			[ bar				]	};
    key <AD03> {	[	  e,	E		],
			[  EuroSign			]	};
    key <AD05> {	[	  t,	T		]	};
    key <AD06> {	[	  y,	Y		],
    			[	  z,    Z		]	};
    key <AD07> {	[	  u,	U		]	};
    key <AD08> {	[	  i,	I		]	};
    key <AD11> {	[ bracketleft, braceleft	],
    			[ scaron,	Scaron		] 	};
    key <AD12> {	[ bracketright, braceright	],
    			[      dstroke,	Dstroke		]	};
    key <AC04> {	[	  f,	F		],
			[ bracketleft			]	};
    key <AC05> {	[	  g,	G		],
			[ bracketright			]	};
    key <AC08> {	[	  k,	K		],
			[ lstroke			]	};
    key <AC09> {	[	  l,	L		],
			[ Lstroke			]	};
    key <AC10> {	[ semicolon, 	colon		],
    			[ ccaron,	Ccaron		]	};
    key <AC11> {	[ apostrophe,	quotedbl	],
    			[ cacute,	Cacute		]	};


    key <LSGT> {	[ less,		greater		],
			[	bar			]	};
    key <AB01> {	[	  z,	Z 		],
    			[	  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,	less		],
    			[ semicolon			]	};
    key <AB09> {	[    period,	greater		],
    			[ colon				]	};
    key <AB10> {	[ slash,	question	],
    			[     minus,	underscore	]	};
    key <BKSL> {	[ backslash,	bar		],
    			[ zcaron,	Zcaron		]	};
    key <KPDL> {	[ KP_Delete,	KP_Separator	]	};
    key <RALT> {	[ Mode_switch,	Multi_key	]	};

    // End alphanumeric section

    // begin modifier mappings
    modifier_map Shift  { Shift_L };
    modifier_map Lock   { Caps_Lock };
    modifier_map Control{ Control_L };
    modifier_map Mod3	{ Mode_switch };
};
