// $TOG: us /main/12 1997/06/14 06:37:07 kaleb $ // symbols definition for a very simple US/ASCII layout. // It has basically the alphanumeric keys, punctuation, // one shift key, one control key and caps lock. It // uses the punctuation keys configurations common on PC // keyboards (e.g. key is { [ period greater ] }) partial hidden alphanumeric_keys modifier_keys xkb_symbols "basic" { name[Group1]= "US/ASCII"; key { [ Escape ] }; // Alphanumeric section key { [ quoteleft, asciitilde ] }; key { [ 1, exclam ] }; key { [ 2, at ] }; key { [ 3, numbersign ] }; key { [ 4, dollar ] }; key { [ 5, percent ] }; key { [ 6, asciicircum ] }; key { [ 7, ampersand ] }; key { [ 8, asterisk ] }; key { [ 9, parenleft ] }; key { [ 0, parenright ] }; key { [ minus, underscore ] }; key { [ equal, plus ] }; key { [ BackSpace ] }; key { [ Tab, ISO_Left_Tab ] }; key { [ q, Q ] }; key { [ w, W ] }; key { [ e, E ] }; key { [ r, R ] }; key { [ t, T ] }; key { [ y, Y ] }; key { [ u, U ] }; key { [ i, I ] }; key { [ o, O ] }; key { [ p, P ] }; key { [ bracketleft, braceleft ] }; key { [ bracketright, braceright ] }; key { [ Return ] }; key { [ Caps_Lock ] }; key { [ a, A ] }; key { [ s, S ] }; key { [ d, D ] }; key { [ f, F ] }; key { [ g, G ] }; key { [ h, H ] }; key { [ j, J ] }; key { [ k, K ] }; key { [ l, L ] }; key { [ semicolon, colon ] }; key { [ quoteright, quotedbl ] }; key { [ Shift_L ] }; key { [ z, Z ] }; key { [ x, X ] }; key { [ c, C ] }; key { [ v, V ] }; key { [ b, B ] }; key { [ n, N ] }; key { [ m, M ] }; key { [ comma, less ] }; key { [ period, greater ] }; key { [ slash, question ] }; key { [ backslash, bar ] }; key { [ Control_L ] }; key { [ space ] }; // End alphanumeric section // begin modifier mappings modifier_map Shift { Shift_L }; modifier_map Lock { Caps_Lock }; modifier_map Control{ Control_L }; }; // definition of a US/ASCII layout for a typical 101-key keyboard. // Includes the basic alphanumeric and punctuation keys and then // defines the "extra" (right) modifier keys, function keys, cursor, // edit, and keypad keys. xkb_symbols "generic101" { include "us(basic)" key { [ Shift_R ] }; key { [ Alt_L ] }; key { [ Control_R ] }; key { [ Alt_R ] }; // Begin "Function" section key { [ F1 ] }; key { [ F2 ] }; key { [ F3 ] }; key { [ F4 ] }; key { [ F5 ] }; key { [ F6 ] }; key { [ F7 ] }; key { [ F8 ] }; key { [ F9 ] }; key { [ F10 ] }; key { [ F11 ] }; key { [ F12 ] }; // End "Function" section // Begin "Editing" section key { type= "PC_SYSRQ", symbols[Group1]= [ Print, Execute ] }; //JWE key { [ Scroll_Lock ] }; key { [ Scroll_Lock, Num_Lock ] }; key { type= "PC_BREAK", symbols[Group1]= [ Pause, Break ] }; key { [ Insert ] }; key { [ Home ] }; key { [ Prior ] }; key { [ Delete ] }; key { [ End ] }; key { [ Next ] }; key { [ Up ] }; key { [ Left ] }; key { [ Down ] }; key { [ Right ] }; // End "Editing" section, begin "Keypad" //JWE key { [ Num_Lock, Pointer_EnableKeys ] }; key { [ KP_Divide ] }; key { [ KP_Multiply ] }; key { [ KP_Subtract ] }; //JWE key { [ KP_Home, KP_7 ] }; //JWE key { [ KP_Up, KP_8 ] }; //JWE key { [ KP_Prior, KP_9 ] }; key { [ KP_7, KP_Home ] }; key { [ KP_8, KP_Up ] }; key { [ KP_9, KP_Prior] }; key { [ KP_Add ] }; //JWE key { [ KP_Left, KP_4 ] }; //JWE key { [ KP_Begin, KP_5 ] }; //JWE key { [ KP_Right, KP_6 ] }; key { [ KP_4, KP_Left ] }; key { [ KP_5, KP_Begin] }; key { [ KP_6, KP_Right] }; //JWE key { [ KP_End, KP_1 ] }; //JWE key { [ KP_Down, KP_2 ] }; //JWE key { [ KP_Next, KP_3 ] }; key { [ KP_1, KP_End ] }; key { [ KP_2, KP_Down ] }; key { [ KP_3, KP_Next ] }; key { [ KP_Enter ] }; //JWE key { [ KP_Insert, KP_0 ] }; //JWE key { [ KP_Delete, KP_Decimal ] }; key { [ KP_0, KP_Insert] }; key { [ KP_Decimal, KP_Delete] }; // End "Keypad" section // begin modifier mappings modifier_map Shift { Shift_R }; modifier_map Control{ Control_R }; modifier_map Mod1 { Alt_L, Alt_R }; modifier_map Mod2 { Num_Lock }; modifier_map Mod5 { Scroll_Lock }; }; // definition for the PC-AT type 101 key keyboard default xkb_symbols "pc101" { include "us(generic101)" key { [ Alt_L, Meta_L ] }; key { [ Alt_R, Meta_R ] }; // begin modifier mappings modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R }; }; // definition for the extra key on 102-key keyboards xkb_symbols "pc102" { include "us(pc101)" key { [ less, greater ] }; }; // definition of Euro-style, Alt_R == [Mode_switch, Multi_key] xkb_symbols "pc101euro" { include "us(generic101)" key { [ Alt_L, Meta_L ] }; key { [ Mode_switch, Multi_key ] }; // begin modifier mappings modifier_map Mod1 { Alt_L, Meta_L }; }; // definition of Alternate Euro-style, Alt_R == [Multi_key] xkb_symbols "pc101compose" { include "us(generic101)" key { [ Alt_L, Meta_L ] }; key { [ Multi_key ] }; // begin modifier mappings modifier_map Mod1 { Alt_L, Meta_L }; }; xkb_symbols "pc102euro" { include "us(pc101euro)" key { [ less, greater ] }; }; xkb_symbols "pc102compose" { include "us(pc101compose)" key { [ less, greater ] }; }; // definition for the extra keys on 104-key "Windows95" keyboards xkb_symbols "pc104" { include "us(generic101)" key { [ Alt_L ] }; key { [ Alt_R ] }; key { [ Meta_L ] }; key { [ Meta_R ] }; key { [ Menu ] }; // modifier mappings modifier_map Mod1 { Alt_L, Alt_R }; modifier_map Mod4 { Meta_L, Meta_R }; }; // definition of Euro-style, Right "logo" key == [Mode_switch, Multi_key] xkb_symbols "pc104euro" { include "us(pc104)" key { [ Mode_switch, Multi_key ] }; }; // put the compose key on the right "logo" key xkb_symbols "pc104compose" { include "us(pc104)" key { [ Multi_key ] }; }; // defintion which includes both the Windows95 keyboards _and_ // the extra key on most European keyboards. xkb_symbols "pc105" { include "us(pc104)" key { [ less, greater ] }; }; xkb_symbols "pc105euro" { include "us(pc104euro)" key { [ less, greater ] }; }; xkb_symbols "pc105compose" { include "us(pc104compose)" key { [ less, greater ] }; }; // universam maps are identical to pc105; wish we had aliases for map names. xkb_symbols "pc_universal" { include "us(pc104)" key { [ less, greater ] }; }; xkb_symbols "pc105euro" { include "us(pc104euro)" key { [ less, greater ] }; }; xkb_symbols "pc105compose" { include "us(pc104compose)" key { [ less, greater ] }; };