Subject: port-amiga/29598: Missed amiga keymaps (XFreee86 4.4.0)
To: None <port-amiga-maintainer@netbsd.org, gnats-admin@netbsd.org,>
From: None <chwalek@poczta.onet.pl>
List: netbsd-bugs
Date: 03/04/2005 19:57:00
>Number: 29598
>Category: port-amiga
>Synopsis: Missed amiga keymaps (XFreee86 4.4.0)
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: port-amiga-maintainer
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Mar 04 19:57:00 +0000 2005
>Originator: Pawel Chwalowski
>Release: NetBSD/amiga 2.0 with XFree86 4.4.0
>Organization:
>Environment:
>Description:
1. Wrong path in the amiga (and ataritt) keymap file. Symbols file for the amiga (and ataritt) is in the symbols/xfree68 directory
2. Incomplete "de" keymap (missed symbols definition)
3. Missed "fr", "pl_us" and "pl_eur" keymaps
>How-To-Repeat:
>Fix:
diff -ru xsrc/xfree/xc/programs/xkbcomp.ori/geometry/amiga xsrc/xfree/xc/programs/xkbcomp/geometry/amiga
--- xsrc/xfree/xc/programs/xkbcomp.ori/geometry/amiga 2005-03-01 23:52:49.000000000 +0100
+++ xsrc/xfree/xc/programs/xkbcomp/geometry/amiga 2005-03-02 00:28:14.000000000 +0100
@@ -268,3 +268,149 @@
}; // End of "Keypad" section
};
+
+xkb_geometry "fr" {
+
+ description= "Amiga (fr)";
+ width= 490;
+ height= 175;
+
+ shape.cornerRadius= 1;
+ shape "NORM" { { [ 18,18] }, { [2,1], [ 16,17] } };
+ shape "BKSP" { { [ 18,18] }, { [2,1], [ 16,17] } };
+ shape "FCTS" { { [ 23,18] }, { [2,1], [ 21,17] } };
+ shape "TLDE" { { [ 28,18] }, { [2,1], [ 26,17] } };
+ shape "TABK" { { [ 37,18] }, { [2,1], [ 35,17] } };
+ shape "CTRL" { { [ 23,18] }, { [2,1], [ 21,17] } };
+ shape "CAPS" { { [ 18,18] }, { [2,1], [ 16,17] } };
+ shape "RTRN" {
+ { [ 0, 0], [28,0], [28,37], [5,37], [5,18], [ 0,18] },
+ { [ 2, 1], [26,1], [26,36], [7,36], [7,17], [ 2,17] } };
+ shape "LFSH" { { [ 32,18] }, { [2,1], [ 29,17] } };
+ shape "RTSH" { { [ 52,18] }, { [2,1], [ 50,17] } };
+ shape "MODK" { { [ 23,18] }, { [2,1], [ 21,17] } };
+ shape "SPCE" { { [172,18] }, { [2,1], [170,17] } };
+ shape "DELE" { { [ 28,18] }, { [2,1], [ 26,17] } };
+ shape "KP0" { { [ 37,18] }, { [2,1], [ 35,17] } };
+ shape "KPEN" { { [ 18,37] }, { [2,1], [ 16,36] } };
+
+ section.left= 22;
+ row.left= 1;
+ key.shape= "FCTS";
+ key.gap= 1;
+ section "Function" {
+ top= 28;
+ row {
+ top= 1;
+ keys { { <ESC>, shape="NORM" },
+ { <FK01>, 9 }, <FK02>, <FK03>, <FK04>, <FK05>,
+ { <FK06>, 9 }, <FK07>, <FK08>, <FK09>, <FK10>
+ };
+ };
+ }; // End of "Function" section
+
+ key.shape= "NORM";
+ section "Alpha" {
+ top= 56;
+ row {
+ top= 1;
+ keys { { <TLDE>, shape="TLDE" },
+ <AE01>, <AE02>, <AE03>, <AE04>, <AE05>, <AE06>,
+ <AE07>, <AE08>, <AE09>, <AE10>, <AE11>, <AE12>,
+ <BKSL>, { <BKSP>, "BKSP" }
+ };
+ };
+ row {
+ top= 20;
+ keys { { <TAB>, "TABK" },
+ <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
+ <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
+ <AD11>, <AD12>, { <RTRN>, "RTRN" }
+ };
+ };
+ row {
+ top= 39;
+ keys { { <LCTL>, "CTRL" }, { <CAPS>, "CAPS" },
+ <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
+ <AC06>, <AC07>, <AC08>, <AC09>, <AC10>,
+ <AC11>, <AC12>
+ };
+ };
+ row {
+ top= 58;
+ keys { { <LFSH>, "LFSH" },
+ <LSGT>, <AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
+ <AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
+ { <RTSH>, "RTSH" }
+ };
+ };
+ row {
+ top= 77;
+ key.shape= "MODK";
+ keys { { <LALT>, 14 }, <LAMI>,
+ { <SPCE>, "SPCE" },
+ <RAMI>, <RALT>
+ };
+ };
+ }; // End of "Alpha" section
+
+ section "Editing" {
+ top= 56;
+ left= 326;
+ row {
+ top= 1;
+ key.shape = "DELE";
+ keys { <DELE>, <HELP> };
+ };
+ row {
+ top= 39;
+ left = 20;
+ keys { <UP> };
+ };
+ row {
+ top= 58;
+ keys { <LEFT>, <DOWN>, <RGHT> };
+ };
+ }; // End of "Editing" section
+
+ section "Keypad" {
+ top= 56;
+ left= 392;
+ row {
+ top= 1;
+ keys { <KPLP>, <KPRP>, <KPDV>, <KPMU> };
+ };
+ row {
+ top= 20;
+ keys { <KP7>, <KP8>, <KP9>, <KPSU> };
+ };
+ row {
+ top= 39;
+ keys { <KP4>, <KP5>, <KP6>, <KPAD> };
+ };
+ row {
+ top= 58;
+ keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPEN" } };
+ };
+ row {
+ top= 77;
+ keys { { <KP0>, "KP0" }, <KPDC> };
+ };
+ }; // End of "Keypad" section
+
+};
+
+// XXX simplified geometry (experimental)
+// Everyone uses either US layout or European layout
+
+xkb_geometry "us" {
+ include "amiga(usa1)"
+
+ override description= "Amiga (us)";
+};
+xkb_geometry "eur" {
+ include "amiga(de)"
+
+ override description= "Amiga (eur)";
+};
+
diff -ru xsrc/xfree/xc/programs/xkbcomp.ori/keycodes/amiga xsrc/xfree/xc/programs/xkbcomp/keycodes/amiga
--- xsrc/xfree/xc/programs/xkbcomp.ori/keycodes/amiga 2005-03-01 23:52:49.000000000 +0100
+++ xsrc/xfree/xc/programs/xkbcomp/keycodes/amiga 2005-03-04 20:24:17.000000000 +0100
@@ -229,3 +229,135 @@
<KPDC> = 68;
<KPEN> = 75;
};
+
+xkb_keycodes "fr" {
+
+ minimum= 8;
+ maximum= 111;
+
+ <ESC> = 77;
+ <FK01> = 88;
+ <FK02> = 89;
+ <FK03> = 90;
+ <FK04> = 91;
+ <FK05> = 92;
+ <FK06> = 93;
+ <FK07> = 94;
+ <FK08> = 95;
+ <FK09> = 96;
+ <FK10> = 97;
+
+ <TLDE> = 8;
+ <AE01> = 9;
+ <AE02> = 10;
+ <AE03> = 11;
+ <AE04> = 12;
+ <AE05> = 13;
+ <AE06> = 14;
+ <AE07> = 15;
+ <AE08> = 16;
+ <AE09> = 17;
+ <AE10> = 18;
+ <AE11> = 19;
+ <AE12> = 20;
+ <BKSL> = 21;
+ <BKSP> = 73;
+
+ <TAB> = 74;
+ <AD01> = 24;
+ <AD02> = 25;
+ <AD03> = 26;
+ <AD04> = 27;
+ <AD05> = 28;
+ <AD06> = 29;
+ <AD07> = 30;
+ <AD08> = 31;
+ <AD09> = 32;
+ <AD10> = 33;
+ <AD11> = 34;
+ <AD12> = 35;
+ <RTRN> = 76;
+
+ <LCTL> = 107;
+ <CAPS> = 106;
+ <AC01> = 40;
+ <AC02> = 41;
+ <AC03> = 42;
+ <AC04> = 43;
+ <AC05> = 44;
+ <AC06> = 45;
+ <AC07> = 46;
+ <AC08> = 47;
+ <AC09> = 48;
+ <AC10> = 49;
+ <AC11> = 50;
+ <AC12> = 51;
+
+ <LFSH> = 104;
+ <LSGT> = 56;
+ <AB01> = 57;
+ <AB02> = 58;
+ <AB03> = 59;
+ <AB04> = 60;
+ <AB05> = 61;
+ <AB06> = 62;
+ <AB07> = 63;
+ <AB08> = 64;
+ <AB09> = 65;
+ <AB10> = 66;
+ <RTSH> = 105;
+
+ <LALT> = 108;
+ <LAMI> = 110;
+ <SPCE> = 72;
+ <RAMI> = 111;
+ <RALT> = 109;
+
+ <DELE> = 78;
+ <HELP> = 103;
+ <UP> = 84;
+ <LEFT> = 87;
+ <DOWN> = 85;
+ <RGHT> = 86;
+
+ <KPLP> = 98;
+ <KPRP> = 99;
+ <KPDV> = 100;
+ <KPMU> = 101;
+
+ <KP7> = 69;
+ <KP8> = 70;
+ <KP9> = 71;
+ <KPSU> = 82;
+
+ <KP4> = 53;
+ <KP5> = 54;
+ <KP6> = 55;
+ <KPAD> = 102;
+
+ <KP1> = 37;
+ <KP2> = 38;
+ <KP3> = 39;
+
+ <KP0> = 23;
+ <KPDC> = 68;
+ <KPEN> = 75;
+};
+
+// XXX simplified keycodes (experimental)
+// The only difference between US and European keyboards consists of two
+// additional keys (usa: 94 keys, europe: 96 keys)
+
+xkb_keycodes "us" {
+ include "amiga(usa1)"
+};
+
+xkb_keycodes "eur" {
+ include "amiga(usa1)"
+
+ // AC11
+ <AC12> = 51;
+ // LFSH
+ <LSGT> = 56;
+ // AB01
+};
diff -ru xsrc/xfree/xc/programs/xkbcomp.ori/keymap/amiga xsrc/xfree/xc/programs/xkbcomp/keymap/amiga
--- xsrc/xfree/xc/programs/xkbcomp.ori/keymap/amiga 2005-03-01 23:52:48.000000000 +0100
+++ xsrc/xfree/xc/programs/xkbcomp/keymap/amiga 2005-03-02 00:16:30.000000000 +0100
@@ -9,7 +9,7 @@
xkb_keycodes { include "amiga(usa1)" };
xkb_types { include "default" };
xkb_compatibility { include "default" };
- xkb_symbols { include "amiga(usa1)" };
+ xkb_symbols { include "xfree68/amiga(usa1)" };
xkb_geometry { include "amiga(usa1)" };
};
@@ -17,6 +17,30 @@
xkb_keycodes { include "amiga(de)" };
xkb_types { include "default" };
xkb_compatibility { include "default" };
- xkb_symbols { include "amiga(de)" };
+ xkb_symbols { include "xfree68/amiga(de)" };
xkb_geometry { include "amiga(de)" };
};
+
+xkb_keymap "fr" {
+ xkb_keycodes { include "amiga(fr)" };
+ xkb_types { include "default" };
+ xkb_compatibility { include "default" };
+ xkb_symbols { include "xfree68/amiga(fr)" };
+ xkb_geometry { include "amiga(fr)" };
+};
+
+xkb_keymap "pl_us" {
+ xkb_keycodes { include "amiga(us)" };
+ xkb_types { include "default" };
+ xkb_compatibility { include "default" };
+ xkb_symbols { include "xfree68/amiga(pl_us)"};
+ xkb_geometry { include "amiga(us)" };
+};
+
+xkb_keymap "pl_eur" {
+ xkb_keycodes { include "amiga(eur)" };
+ xkb_types { include "default" };
+ xkb_compatibility { include "default" };
+ xkb_symbols { include "xfree68/amiga(pl_eur)"};
+ xkb_geometry { include "amiga(eur)" };
+};
diff -ru xsrc/xfree/xc/programs/xkbcomp.ori/keymap/ataritt xsrc/xfree/xc/programs/xkbcomp/keymap/ataritt
--- xsrc/xfree/xc/programs/xkbcomp.ori/keymap/ataritt 2005-03-01 23:52:48.000000000 +0100
+++ xsrc/xfree/xc/programs/xkbcomp/keymap/ataritt 2005-03-01 23:59:17.000000000 +0100
@@ -9,13 +9,13 @@
xkb_keycodes { include "ataritt(us)" };
xkb_types { include "default" };
xkb_compatibility { include "default" };
- xkb_symbols { include "ataritt(us)" };
+ xkb_symbols { include "xfree68/ataritt(us)" };
xkb_geometry { include "ataritt(us)" };
};
xkb_keymap "de" {
xkb_keycodes { include "ataritt(de)" };
xkb_types { include "default" };
xkb_compatibility { include "default" };
- xkb_symbols { include "ataritt(de)" };
+ xkb_symbols { include "xfree68/ataritt(de)" };
xkb_geometry { include "ataritt(de)" };
};
diff -ru xsrc/xfree/xc/programs/xkbcomp.ori/symbols/xfree68/amiga xsrc/xfree/xc/programs/xkbcomp/symbols/xfree68/amiga
--- xsrc/xfree/xc/programs/xkbcomp.ori/symbols/xfree68/amiga 2005-03-01 23:52:50.000000000 +0100
+++ xsrc/xfree/xc/programs/xkbcomp/symbols/xfree68/amiga 2005-03-04 20:26:20.000000000 +0100
@@ -130,3 +130,388 @@
modifier_map Mod2 { Mode_switch };
modifier_map Mod3 { Meta_L, Meta_R };
};
+
+xkb_symbols "de" {
+
+ name[Group1]= "German";
+ key <ESC> { [ Escape ] };
+
+ // 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 ] };
+ // End "Function" section
+
+ // Alphanumeric section
+ key <TLDE> { [ grave, asciitilde ],
+ [ grave ] };
+ key <AE01> { [ 1, exclam ],
+ [ onesuperior, exclam ] };
+ key <AE02> { [ 2, quotedbl ],
+ [ at, twosuperior ] };
+ key <AE03> { [ 3, paragraph ],
+ [ threesuperior, numbersign ] };
+ key <AE04> { [ 4, dollar ],
+ [ degree, cent ] };
+ key <AE05> { [ 5, percent ],
+ [ onequarter, percent ] };
+ key <AE06> { [ 6, ampersand ],
+ [ onehalf, asciicircum ] };
+ key <AE07> { [ 7, slash ],
+ [ threequarters, ampersand ] };
+ key <AE08> { [ 8, parenleft ],
+ [ periodcentered, asterisk ] };
+ key <AE09> { [ 9, parenright ],
+ [ guillemotleft, parenleft ] };
+ key <AE10> { [ 0, equal ],
+ [ guillemotright, parenright ] };
+ key <AE11> { [ ssharp, question ],
+ [ minus, underscore ] };
+ key <AE12> { [ apostrophe, grave ],
+ [ equal, plus ] };
+ key <BKSL> { [ backslash, bar ] };
+ key <BKSP> { [ BackSpace ] };
+
+ key <TAB> { [ Tab, ISO_Left_Tab ] };
+ key <AD01> { [ q, Q ],
+ [ aring, Aring ] };
+ key <AD02> { [ w, W ],
+ [ degree, degree ] };
+ key <AD03> { [ e, E ],
+ [ copyright, copyright ] };
+ key <AD04> { [ r, R ],
+ [ registered, registered ] };
+ key <AD05> { [ t, T ],
+ [ thorn, THORN ] };
+ key <AD06> { [ z, Z ],
+ [ currency, yen ] };
+ key <AD07> { [ u, U ],
+ [ mu, mu ] };
+ key <AD08> { [ i, I ],
+ [ exclamdown, brokenbar ] };
+ key <AD09> { [ o, O ],
+ [ oslash, Ooblique ] };
+ key <AD10> { [ p, P ],
+ [ paragraph, paragraph ] };
+ key <AD11> { [ udiaeresis, Udiaeresis ],
+ [ bracketleft, braceleft ] };
+ key <AD12> { [ plus, asterisk ],
+ [ bracketright, braceright ] };
+ key <RTRN> { [ Return ] };
+
+ key <LCTL> { [ Control_L ] };
+ key <CAPS> { [ Caps_Lock ] };
+ key <AC01> { [ a, A ],
+ [ ae, AE ] };
+ key <AC02> { [ s, S ],
+ [ ssharp, section ] };
+ key <AC03> { [ d, D ],
+ [ eth, ETH ] };
+ key <AC04> { [ f, F ] };
+ key <AC05> { [ g, G ] };
+ key <AC06> { [ h, H ] };
+ key <AC07> { [ j, J ] };
+ key <AC08> { [ k, K ] };
+ key <AC09> { [ l, L ],
+ [ sterling, sterling ] };
+ key <AC10> { [ odiaeresis, Odiaeresis ],
+ [ semicolon, colon ] };
+ key <AC11> { [ adiaeresis, Adiaeresis ],
+ [ apostrophe, quotedbl ] };
+ key <AC12> { [ numbersign, asciicircum ] };
+
+ key <LFSH> { [ Shift_L ] };
+ key <LSGT> { [ less, greater ] };
+ key <AB01> { [ y, Y ] };
+ 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, semicolon ],
+ [ comma, less ] };
+ key <AB09> { [ period, colon ],
+ [ period, greater ] };
+ key <AB10> { [ minus, underscore ],
+ [ slash, question ] };
+ key <RTSH> { [ Shift_R ] };
+
+ key <LALT> { [ Alt_L ] };
+ key <LAMI> { [ Meta_L ] };
+ key <SPCE> { [ space ] };
+ key <RAMI> { [ Meta_R ] };
+ key <RALT> { [ Mode_switch, Multi_key ] };
+ // End alphanumeric section
+
+ // Begin "Editing" section
+ key <DELE> { [ Delete ] };
+ key <HELP> { [ Help ] };
+ key <UP> { [ Up ] };
+ key <LEFT> { [ Left ] };
+ key <DOWN> { [ Down ] };
+ key <RGHT> { [ Right ] };
+ // End "Editing" section
+
+ // Begin "Keypad" section
+ key <KPLP> { [ bracketleft, braceleft ],
+ [ Num_Lock ] };
+ key <KPRP> { [ bracketright, braceright ],
+ [ Scroll_Lock ] };
+ key <KPDV> { [ KP_Divide ] };
+ key <KPMU> { [ KP_Multiply ],
+ [ Print ] };
+
+ 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 ] };
+ 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 <KP0> { [ KP_0, KP_Insert ] };
+ key <KPDC> { [ KP_Decimal, KP_Delete ] };
+ key <KPEN> { [ KP_Enter ] };
+ // End "Keypad" section
+
+ // begin modifier mappings
+ modifier_map Shift { Shift_L, Shift_R };
+ modifier_map Lock { Caps_Lock };
+ modifier_map Control{ Control_L };
+ modifier_map Mod1 { Alt_L };
+ modifier_map Mod2 { Mode_switch };
+ modifier_map Mod3 { Meta_L, Meta_R };
+};
+
+xkb_symbols "fr" {
+
+ name[Group1]= "French";
+ key <ESC> { [ Escape ] };
+
+ // 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 ] };
+ // End "Function" section
+
+ // Alphanumeric section
+ key <TLDE> { [ grave, asciitilde ],
+ [ grave ] };
+ key <AE01> { [ ampersand, 1 ],
+ [ onesuperior, exclam ] };
+ key <AE02> { [ eacute, 2 ],
+ [ twosuperior, at ] };
+ key <AE03> { [ quotedbl, 3 ],
+ [ threesuperior, numbersign ] };
+ key <AE04> { [ apostrophe, 4 ],
+ [ cent, dollar ] };
+ key <AE05> { [ parenleft, 5 ],
+ [ onequarter, percent ] };
+ key <AE06> { [ section, 6 ],
+ [ onehalf, asciicircum ] };
+ key <AE07> { [ egrave, 7 ],
+ [ threequarters, ampersand ] };
+ key <AE08> { [ exclam, 8 ],
+ [ periodcentered, asterisk ] };
+ key <AE09> { [ ccedilla, 9 ],
+ [ guillemotleft, parenleft ] };
+ key <AE10> { [ agrave, 0 ],
+ [ guillemotright, parenright ] };
+ key <AE11> { [ parenright, degree ],
+ [ minus, underscore ] };
+ key <AE12> { [ minus, underscore ],
+ [ equal, plus ] };
+ key <BKSL> { [ backslash, bar ] };
+ key <BKSP> { [ BackSpace ] };
+
+ key <TAB> { [ Tab, ISO_Left_Tab ] };
+ key <AD01> { [ a, A ],
+ [ aring, Aring ] };
+ key <AD02> { [ z, Z ],
+ [ degree, degree ] };
+ key <AD03> { [ e, E ],
+ [ copyright, copyright ] };
+ key <AD04> { [ r, R ],
+ [ registered, registered ] };
+ key <AD05> { [ t, T ],
+ [ thorn, THORN ] };
+ key <AD06> { [ y, Y ],
+ [ currency, yen ] };
+ key <AD07> { [ u, U ],
+ [ mu, mu ] };
+ key <AD08> { [ i, I ],
+ [ exclamdown, brokenbar ] };
+ key <AD09> { [ o, O ],
+ [ oslash, Ooblique ] };
+ key <AD10> { [ p, P ],
+ [ paragraph, paragraph ] };
+ key <AD11> { [ dead_circumflex, dead_diaeresis ],
+ [ bracketleft, braceleft ] };
+ key <AD12> { [ dollar, asterisk ],
+ [ bracketright, braceright ] };
+ key <RTRN> { [ Return ] };
+
+ key <LCTL> { [ Control_L ] };
+ key <CAPS> { [ Caps_Lock ] };
+ key <AC01> { [ q, Q ],
+ [ ae, AE ] };
+ key <AC02> { [ s, S ],
+ [ ssharp, section ] };
+ key <AC03> { [ d, D ],
+ [ eth, ETH ] };
+ key <AC04> { [ f, F ] };
+ key <AC05> { [ g, G ] };
+ key <AC06> { [ h, H ] };
+ key <AC07> { [ j, J ] };
+ key <AC08> { [ k, K ] };
+ key <AC09> { [ l, L ],
+ [ sterling, sterling ] };
+ key <AC10> { [ m, M ],
+ [ semicolon, colon ] };
+ key <AC11> { [ ugrave, percent ],
+ [ apostrophe, quotedbl ] };
+ key <AC12> { [ mu, sterling ] };
+
+ key <LFSH> { [ Shift_L ] };
+ key <LSGT> { [ less, greater ] };
+ key <AB01> { [ w, W ],
+ [ plusminus, notsign ] };
+ key <AB02> { [ x, X ],
+ [ multiply, division ] };
+ key <AB03> { [ c, C ],
+ [ ccedilla, Ccedilla ] };
+ key <AB04> { [ v, V ],
+ [ ordfeminine ] };
+ key <AB05> { [ b, B ],
+ [ masculine ] };
+ key <AB06> { [ n, N ],
+ [ minus, underscore ] };
+ key <AB07> { [ comma, question ],
+ [ cedilla, questiondown ] };
+ key <AB08> { [ semicolon, period ],
+ [ comma, less ] };
+ key <AB09> { [ colon, slash ],
+ [ period, greater ] };
+ key <AB10> { [ equal, plus ],
+ [ slash, question ] };
+ key <RTSH> { [ Shift_R ] };
+
+ key <LALT> { [ Alt_L ] };
+ key <LAMI> { [ Meta_L ] };
+ key <SPCE> { [ space ] };
+ key <RAMI> { [ Meta_R ] };
+ key <RALT> { [ Mode_switch, Multi_key ] };
+ // End alphanumeric section
+
+ // Begin "Editing" section
+ key <DELE> { [ Delete ] };
+ key <HELP> { [ Help ] };
+ key <UP> { [ Up ] };
+ key <LEFT> { [ Left ] };
+ key <DOWN> { [ Down ] };
+ key <RGHT> { [ Right ] };
+ // End "Editing" section
+
+ // Begin "Keypad" section
+ key <KPLP> { [ bracketleft, braceleft ],
+ [ Num_Lock ] };
+ key <KPRP> { [ bracketright, braceright ],
+ [ Scroll_Lock ] };
+ key <KPDV> { [ KP_Divide ] };
+ key <KPMU> { [ KP_Multiply ],
+ [ Print ] };
+
+ 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 ] };
+ 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 <KP0> { [ KP_0, KP_Insert ] };
+ key <KPDC> { [ KP_Decimal, KP_Delete ] };
+ key <KPEN> { [ KP_Enter ] };
+ // End "Keypad" section
+
+ // begin modifier mappings
+ modifier_map Shift { Shift_L, Shift_R };
+ modifier_map Lock { Caps_Lock };
+ modifier_map Control{ Control_L };
+ modifier_map Mod1 { Alt_L };
+ modifier_map Mod2 { Mode_switch };
+ modifier_map Mod3 { Meta_L, Meta_R };
+};
+
+// common polish symbols for US and European keyboards
+//
+partial xkb_symbols "pl" {
+
+ name[Group1]= "Polish";
+
+ // Begin "Function" section
+ // End "Function" section
+
+ // Alphanumeric section
+ key <AD03> { symbols[Group2]= [ ecircumflex, Ecircumflex ] };
+ key <AD09> { symbols[Group2]= [ oacute, Oacute ] };
+
+ key <AC01> { symbols[Group2]= [ plusminus, exclamdown ] };
+ key <AC02> { symbols[Group2]= [ paragraph, brokenbar ] };
+ key <AC09> { symbols[Group2]= [ threesuperior, sterling ] };
+
+ key <AB02> { symbols[Group2]= [ onequarter, notsign ] };
+ key <AB03> { symbols[Group2]= [ ae, AE ] };
+ key <AB06> { symbols[Group2]= [ ntilde, Ntilde ] };
+ // End alphanumeric section
+
+ // Begin "Editing" section
+ // End "Editing" section
+
+ // Begin "Keypad" section
+ // End "Keypad" section
+
+ // begin modifier mappings
+};
+
+xkb_symbols "pl_us" {
+ replace "xfree68/amiga(usa1)+xfree68/amiga(pl)"
+
+ override key <AB01> { symbols[Group2]= [ questiondown, macron ] };
+};
+
+xkb_symbols "pl_eur" {
+ replace "xfree68/amiga(de)+xfree68/amiga(pl)"
+
+ override key <AD06> { symbols[Group2]= [ questiondown, macron ] };
+ override key <AC12> { symbols[Group1]= [ numbersign, asciicircum ] };
+ override key <LSGT> { symbols[Group1]= [ less, greater ] };
+};
+