// $XFree86: xc/programs/xkbcomp/symbols/lat,v 1.1 2004/06/19 13:53:47 pascal Exp $

partial default alphanumeric_keys 
xkb_symbols "basic" {

    // Describes the differences between a very simple en_US keyboard
    // and a keyboard for typing Classical Latin using macrons
    // as a notation of vowel length.
    // Modified from the "very simple Italian keyboard"
    // found in the standard XFree86 package (v4.3.0).

    name[Group1]= "Classical Latin";

    key <TLDE> {	[	backslash,	bar		],
			[	asciitilde			]	};
    key <AE02> {	[		2,	quotedbl	]	};
    key <AE03> {	[		3,	plus		]	};
    key <AE04> {	[	4,		dollar		],
			[	dead_breve,	U0306		]	};
		// U0306 is combining breve,
		// necessary for producing a y+breve and Y+breve combination,
		// missing from the present (v4.0) Unicode specification.
		// It's appearance is unfortunately largely font-
		// and application-dependent.
		// A, E, I, O, U all have separate code points
		// for their vowel+breve combinations, only Y is an exception.

    key <AE06> {	[		6,	ampersand	]	};
    key <AE07> {	[		7,	slash		],
			[	braceleft			]	};
    key <AE08> {	[		8,	parenleft	],
			[	bracketleft			]	};
    key <AE09> {	[		9,	parenright	],
			[	bracketright			]	};
    key <AE10> {	[		0,	equal		],
			[	braceright			]	};
    key <AE11> {	[	apostrophe,	question	],
			[	dead_acute,	questiondown	]	};
		// Acute is sometimes used to represent the "apex" of Roman
		// inscriptions in transliteration.

		// ymacron, Ymacron
    key <AE12> {	[	U0233,		U0232		],
			[	asciicircum,	dead_ogonek	]	};
    key <AD03> {	[		e,	E		],
			[	EuroSign,	cent		]	};
    key <AD11> {	[	emacron,	Emacron		],
			[	eacute,		dead_abovering	]	};
    key <AD12> {	[	imacron,	Imacron		],
			[	asterisk,	dead_macron	]	};
    key <BKSL> {	[	umacron,	Umacron		],
			[	section,	dead_grave	]	};
    key <AC09> {	[		l,	L		],
			[	sterling,	VoidSymbol	]	};
    key	<AC10> {	[	omacron,	Omacron		],
			[	at,	dead_doubleacute	]	};
    key <AC11> {	[	amacron,	Amacron		],
			[	degree,		numbersign	]	};
    key <LSGT> {	[	less,		greater		],
			[	bar,		brokenbar	]	};
    key <AB03> {	[		c,	C		],
			[	ccedilla,	copyright	]	};
    key <AB08> {	[	comma,		semicolon	]	};
    key <AB09> {	[	period,		colon		]	};
    key <AB10> {	[	minus,		underscore	]	};

    // 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 };
};

partial alphanumeric_keys
xkb_symbols "Sundeadkeys" {

    // For naming consistency

    include "ln(basic)"
};

partial alphanumeric_keys
xkb_symbols "sundeadkeys" {

    // For naming consistency

    include "ln(Sundeadkeys)"
};

partial alphanumeric_keys
xkb_symbols "nodeadkeys" {

    // Modifies the basic Classical Latin layout to eliminate all dead keys.

    include "ln(basic)"
    key <AE04> {	[	4,		dollar		],
			[	breve,		U0306		]	};
    key <AE11> {	[	apostrophe,	question	],
			[	acute,		questiondown	]	};
			// ymacron, Ymacron
    key <AE12> {	[	U0233,		U0232		],
			[	asciicircum,	ogonek		]	};
    key <AD11> {	[	emacron,	Emacron		],
			[	eacute,		degree		]	};
    key <AD12> {	[	imacron,	Imacron		],
			[	asterisk,	macron		]	};
    key <BKSL> {	[	umacron,	Umacron		],
			[	section,	grave		]	};
    key	<AC10> {	[	omacron,	Omacron		],
			[	at,		doubleacute	]	};
};
