// $XFree86: xc/programs/xkbcomp/symbols/macintosh/us,v 1.11 2006/01/09 15:01:29 dawes Exp $

// symbols definition for a Macintosh "Extended" keyboard

xkb_symbols "extended" {

    name[Group1]= "US/ASCII";
    key <ESC>  {	[ Escape			]	};

    // Alphanumeric section
    key <TLDE> {	[ quoteleft,	asciitilde	]	};
    key <AE01> {	[	  1,	exclam 		]	};
    key <AE02> {	[	  2,	at		]	};
    key <AE03> {	[	  3,	numbersign	]	};
    key <AE04> {	[	  4,	dollar		]	};
    key <AE05> {	[	  5,	percent		]	};
    key <AE06> {	[	  6,	asciicircum	]	};
    key <AE07> {	[	  7,	ampersand	]	};
    key <AE08> {	[	  8,	asterisk	]	};
    key <AE09> {	[	  9,	parenleft	]	};
    key <AE10> {	[	  0,	parenright	]	};
    key <AE11> {	[     minus,	underscore	]	};
    key <AE12> {	[     equal,	plus		]	};
    key <BKSP> {	[ BackSpace			]	};

    key  <TAB> {	[	Tab,	ISO_Left_Tab	]	};
    key <AD01> {	[	  q,	Q 		]	};
    key <AD02> {	[	  w,	W		]	};
    key <AD03> {	[	  e,	E		]	};
    key <AD04> {	[	  r,	R		]	};
    key <AD05> {	[	  t,	T		]	};
    key <AD06> {	[	  y,	Y		]	};
    key <AD07> {	[	  u,	U		]	};
    key <AD08> {	[	  i,	I		]	};
    key <AD09> {	[	  o,	O		]	};
    key <AD10> {	[	  p,	P		]	};
    key <AD11> {	[ bracketleft,	braceleft	]	};
    key <AD12> {	[ bracketright,	braceright	]	};
    key <BKSL> {	[ backslash,	bar		]	};

    key <CAPS> {	[	Caps_Lock		]	};
    key <AC01> {	[	  a,	A 		]	};
    key <AC02> {	[	  s,	S		]	};
    key <AC03> {	[	  d,	D		]	};
    key <AC04> {	[	  f,	F		]	};
    key <AC05> {	[	  g,	G		]	};
    key <AC06> {	[	  h,	H		]	};
    key <AC07> {	[	  j,	J		]	};
    key <AC08> {	[	  k,	K		]	};
    key <AC09> {	[	  l,	L		]	};
    key <AC10> {	[ semicolon,	colon		]	};
    key <AC11> {	[ quoteright,	quotedbl	]	};
    key <RTRN> {	[ Return			]	};

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

    key <SPCE> {	[  space			]	};
    // End alphanumeric section

    // Begin "Function" section
    key <FK01> {	[  F1		]	};
    key <FK02> {	[  F2		]	};
    key <FK03> {	[  F3		]	};
    key <FK04> {	[  F4		]	};
    key <FK05> {	[  F5		]	};
    key <FK06> {	[  F6		]	};
    key <FK07> {	[  F7		]	};
    key <FK08> {	[  F8		]	};
    key <FK09> {	[  F9		]	};
    key <FK10> {	[  F10		]	};
    key <FK11> {	[  F11		]	};
    key <FK12> {	[  F12		]	};
    key <FK13> {	[  Print	]	};
    key <FK14> {	[  Scroll_Lock	]	};
    key <FK15> {	[  Pause	]	};
    // End "Function" section

    // Begin "Editing" section
    key  <INS> {	[  Insert	]	};
    key <HOME> {	[  Home		]	};
    key <PGUP> {	[  Prior	]	};
    key <DELE> {	[  Delete	]	};
    key  <END> {	[  End		]	};
    key <PGDN> {	[  Next		]	};

    key   <UP> {	[  Up		]	};
    key <LEFT> {	[  Left		]	};
    key <DOWN> {	[  Down		]	};
    key <RGHT> {	[  Right	]	};
    // End "Editing" section

    // Begin "Keypad" section
    key <NMLK> {	[  Num_Lock,	Pointer_EnableKeys	]	};
    key <KPEQ> {	[  equal				]	};
    key <KPDV> {	[  KP_Divide				]	};
    key <KPMU> {	[  KP_Multiply				]	};

    key  <KP7> {	[  KP_7,	KP_Home			]	};
    key  <KP8> {	[  KP_8,	KP_Up			]	};
    key  <KP9> {	[  KP_9,	KP_Prior		]	};
    key <KPSU> {	[  KP_Subtract				]	};

    key  <KP4> {	[  KP_4,	KP_Left			]	};
    key  <KP5> {	[  KP_5,	KP_Begin		]	};
    key  <KP6> {	[  KP_6,	KP_Right		]	};
    key <KPAD> {	[  KP_Add				]	};

    key  <KP1> {	[  KP_1,	KP_End			]	};
    key  <KP2> {	[  KP_2,	KP_Down			]	};
    key  <KP3> {	[  KP_3,	KP_Next			]	};
    key <KPEN> {	[  KP_Enter				]	};

    key  <KP0> {	[  KP_0,	KP_Insert		]	};
    key <KPDL> { 	[  KP_Decimal,	KP_Delete		]	};
    // End "Keypad" section

    // Begin "Modifier" section
    key <LFSH> {	[  Shift_L	]	};
    key <RTSH> {	[  Shift_R	]	};
    key <LCTL> {	[  Control_L	]	};
    key <RCTL> {	[  Control_R	]	};
    key <LALT> {	[  Alt_L, Meta_L ]	};
    key <RALT> {	[  Alt_R, Meta_R ]	};
    key <LWIN> {	[  Super_L	]	};
    key <RWIN> {	[  Super_R	]	};
    // End "Modifier" section

    // begin modifier mappings
    modifier_map Shift  { Shift_L , Shift_R };
    modifier_map Lock   { Caps_Lock };
    modifier_map Control{ Control_L, Control_R };
    modifier_map Mod1   { Alt_L, Alt_R, Meta_L, Meta_R };
    modifier_map Mod2   { Num_Lock };
    modifier_map Mod4   { Super_L, Super_R };
    modifier_map Mod5   { Scroll_Lock };
    // end modifier mappings

    include "compose(rwin)"
    include "apple(extended)"

// *** FIXME
//    key <LSGT> {	[ quoteleft,	asciitilde	]	};
//    key <AE01> {	[	  1,	exclam 		],
//			[exclamdown,    slash		]	};
//    key <AE02> {	[	  2,	at		],
//			[ trademark,    eth		]	};
//    key <AE03> {	[	  3,	numbersign	],
//			[ sterling			]	};
//    key <AE04> {	[	  4,	dollar		],
//			[      cent			]	};
//    key <AE05> {	[	  5,	percent		],
//			[  infinity			]	};
//    key <AE06> {	[	  6,	asciicircum	],
//			[ section			]	};
//    key <AE07> {	[	  7,	ampersand	],
//			[ paragraph			]	};
//    key <AE08> {	[	  8,	asterisk	],
//			[periodcentered			]	};
//    key <AE09> {	[	  9,	parenleft	],
//			[ordfeminine			]	};
//    key <AE12> {	[     equal,	plus		],
//			[  notequal,    plusminus	]	};
//    key <AD01> {	[	  q,	Q 		],
//			[	oe,	OE		]	};
//    key <AD04> {	[	  r,	R		],
//			[registered			]	};
//    key <AD05> {	[	  t,	T		],
//			[    dagger			]	};
//    key <BKSL> {	[ backslash,	bar		],
//			[guillemotleft,guillemotright	]	};
//    key <AC01> {	[	  a,	A 		],
//			[     aring,    Aring		]	};
//    key <AC02> {	[	  s,	S		],
//			[    ssharp,    Iacute		]	};
//    key <AC03> {	[	  d,	D		],
//				eth,	Icircumflex	]	};
//    key <AC04> {	[	  f,	F		],
//			[		Idiaeresis	]	};
//    key <AC05> {	[	  g,	G		],
//			[ copyright			]	};
//    key <AC09> {	[	  l,	L		],
//			[   notsign,    Ograve		]	};
//    key <AC11> {	[ quoteright,	quotedbl	],
//			[        ae,	AE		]	};
//    key <AB03> {	[	  c,	C		],
//			[ ccedilla,	Ccedilla	]	};
//    key <AB06> {	[	  n,	N		],
//			[asciitilde			]	};
//    key <AB07> {	[	  m,	M		],
//			[	 mu,	Acircumflex	]	};
//    key <RALT> {	[ Mode_switch,	Multi_key	]	};
//    modifier_map Mod3   { Mode_switch };

};
