// $Xorg: iso9995-3,v 1.3 2000/08/17 19:54:43 cpqbld Exp $
partial alphanumeric_keys alternate_group 
xkb_symbols "basic101" {
    // Part 3 of ISO9995 specifies a common alternate character set
    // This file adds that common set to any keyboard for which a 
    // second group is not defined.  It does *not* specify any of
    // 9995's special modifiers (ISO lock, group locks, etc).
    // If you want a fully compliant ISO keyboard, add "iso9995-full"
    // instead
    name[Group2]= "ISO9995-3";
    key <TLDE> {	[], [		notsign			]	};
    key <AE01> {	[], [ onesuperior,  	exclamdown 	]	};
    key <AE02> {	[], [ twosuperior,  	oneeighth	]	};
    key <AE03> {	[], [ threesuperior,	sterling	]	};
    key <AE04> {	[], [ onequarter,    	dollar		]	};
    key <AE05> {	[], [ onehalf,		threeeighths	]	};
    key <AE06> {	[], [ threequarters,	fiveeighths	]	};
    key <AE07> {	[], [ braceleft,	seveneighths	]	};
    key <AE08> {	[], [ bracketleft,	trademark	]	};
    key <AE09> {	[], [ bracketright,	plusminus	]	};
    key <AE10> {	[], [ braceright,	degree		]	};
    key <AE11> {	[], [ backslash,	questiondown	]	};
    key <AE12> {	[], [ dead_cedilla,	dead_ogonek	]	};

    key <AD01> {	[], [ at,		Greek_OMEGA	]	};
    key <AD02> {	[], [ lstroke,		Lstroke		]	};
//  key <AD03> {	[], [ oe,		OE		]	};
    key <AD04> {	[], [ paragraph,	registered	]	};
    key <AD05> {	[], [ tslash,		Tslash		]	};
    key <AD06> {	[], [ leftarrow,	yen		]	};
    key <AD07> {	[], [ downarrow,	uparrow		]	};
    key <AD08> {	[], [ rightarrow,	idotless	]	};
    key <AD09> {	[], [ oslash,		Ooblique	]	};
    key <AD10> {	[], [ thorn,		Thorn		]	};
    key <AD11> {	[], [ dead_diaeresis,	dead_abovering	]	};
    key <AD12> {	[], [ dead_tilde,	dead_macron	]	};

    key <AC01> {	[], [ ae,		AE 		]	};
    key <AC02> {	[], [ ssharp,		section		]	};
    key <AC03> {	[], [ eth,		Eth		]	};
    key <AC04> {	[], [ dstroke,		ordfeminine	]	};
    key <AC05> {	[], [ eng,		ENG		]	};
    key <AC06> {	[], [ hstroke,		Hstroke		]	};
//  key <AC07> {	[], [ ij,		IJ		]	};
    key <AC08> {	[], [ kra,		ampersand	]	};
    key <AC09> {	[], [ lstroke,		Lstroke		]	};
    key <AC10> {	[], [ dead_acute,	dead_doubleacute]	};
    key <AC11> {	[], [ dead_circumflex,	dead_caron	]	};
    key <BKSL> {	[], [ dead_grave,	dead_breve	]	};

    key <AB01> {	[], [ guillemotleft,	less 		]	};
    key <AB02> {	[], [ guillemotright,	greater		]	};
    key <AB03> {	[], [ cent,		copyright	]	};
    key <AB04> {	[], [ leftdoublequotemark, quoteleft	]	};
    key <AB05> {	[], [ rightdoublequotemark, quoteright	]	};
//  key <AB06> {	[], [ apostrophe_small_n, musicalnote	]	};
    key <AB07> {	[], [ mu,		masculine	]	};
    key <AB08> {	[], [ horizconnector,	multiply	]	};
    key <AB09> {	[], [ periodcentered,	division	]	};
    key <AB10> {	[], [ dead_belowdot,	dead_abovedot	]	};
};

partial default alphanumeric_keys alternate_group 
xkb_symbols "basic" {
    include "iso9995-3(basic101)"
    key <LSGT> {	[], [ bar,		brokenbar	]	};
};

hidden partial alphanumeric_keys alternate_group 
xkb_symbols "nodeadkeys_common" {

    // Modifies the basic iso9995-3 layout to eliminate all dead keys

    key <AE12> {	[], [ cedilla,	ogonek	]		};

    key <AD11> {	[], [ diaeresis,	degree	]	};
    key <AD12> {	[], [ asciitilde,	macron	]	};
    key <AC11> {	[], [ asciicircum,	caron	]	};
    key <BKSL> {	[], [ grave,		breve	]	};
//  key <AB10> {	[], [ belowdot,		abovedot]	};
    override key <AB10> {[], [ dead_belowdot,	abovedot	]	};
};

partial alphanumeric_keys alternate_group
xkb_symbols "nodeadkeys101" {
    include "iso9995-3(basic101)"
    include "iso9995-3(nodeadkeys_common)"
};

partial alphanumeric_keys alternate_group
xkb_symbols "nodeadkeys" {
    include "iso9995-3(basic)"
    include "iso9995-3(nodeadkeys_common)"
};

hidden partial alphanumeric_keys modifier_keys alternate_group 
xkb_symbols "full_common" {
    // Defines the special modifier keys specified by 9995 part 3
    // Includes the iso9995-3 to get the common alternate set

    SetMods.latchToLock=True;
    SetMods.clearLocks=True;

    override key <CAPS> {	[	ISO_Lock		]	};
    override key <LFSH> {
	type="PC_BREAK",
	[ 	 Shift_L,			ISO_Prev_Group	],
	[ SetMods(modifiers=Shift),	LockGroup(group= -1)	]
    };
    override key <RTSH> {
	type="PC_BREAK",
	[ 	Shift_R,			ISO_Next_Group ],
	[ SetMods(modifiers=Shift),	LockGroup(group= +1)	]
    };

    override key <LCTL> {
	[ 	 Control_L,			ISO_Prev_Group	],
	[ SetMods(modifiers=Shift),	LockGroup(group= -1)	]
    };
    override key <RCTL> {	
	[ 	 Control_R,			ISO_Next_Group	],
	[ SetMods(modifiers=Shift),	LockGroup(group= +1)	]
    };
    override key <RALT> {
	[ 	 Mode_switch, Multi_key		]
    };
};
partial alphanumeric_keys modifier_keys alternate_group 
xkb_symbols "full" {
    include "iso9995-3(basic)"
    include "iso9995-3(full_common)"
};
partial alphanumeric_keys modifier_keys alternate_group 
xkb_symbols "full101" {
    include "iso9995-3(basic101)"
    include "iso9995-3(full_common)"
};
