diff -uNr xkeyboard-config-20070715.orig/rules/base.xml.in xkeyboard-config-20070715/rules/base.xml.in --- xkeyboard-config-20070715.orig/rules/base.xml.in 2007-07-15 13:50:16.000000000 +0200 +++ xkeyboard-config-20070715/rules/base.xml.in 2007-07-15 14:45:58.000000000 +0200 @@ -3571,6 +3571,30 @@ <_description>Keypad with unicode additions (arrows and math operators). Math operators on default level. + + + + diff -uNr xkeyboard-config-20070715.orig/symbols/be xkeyboard-config-20070715/symbols/be --- xkeyboard-config-20070715.orig/symbols/be 2006-04-02 22:07:45.000000000 +0200 +++ xkeyboard-config-20070715/symbols/be 2007-07-15 14:25:31.000000000 +0200 @@ -106,31 +106,10 @@ xkb_symbols "wang" { include "be(basic)" + include "keypad(legacy_wang)" name[Group1]="Belgium - Wang model 724 azerty"; // Engravings on Wang 725-3771-ae key { [ twosuperior, threesuperior, notsign, asciitilde ] }; key { [ less, greater, backslash, brokenbar ] }; - - // Keypad geometry for Wang 725-3771-ae and 725-3771-uk: - // NmLck Erase/DecTab PrntScrn/SysRq / - // 7< 8> 9^ * - // 4[ 5] 6$ - - // 1& 2@ 3# + - // 0'------ ., ret - //key.type[Group1] = "FOUR_LEVEL_KEYPAD"; - key { [ KP_Home, KP_7, less, less ] }; - key { [ KP_Up, KP_8, greater, greater ] }; - key { [ KP_Prior, KP_9, asciicircum, asciicircum ] }; - - key { [ KP_Left, KP_4, bracketleft, bracketleft ] }; - key { [ KP_Begin, KP_5, bracketright, bracketright ] }; - key { [ KP_Right, KP_6, dollar, dollar ] }; - - key { [ KP_End, KP_1, ampersand, ampersand ] }; - key { [ KP_Down, KP_2, at, at ] }; - key { [ KP_Next, KP_3, numbersign, numbersign ] }; - - key { [ KP_Insert, KP_0, apostrophe, apostrophe ] }; - key { [ KP_Delete, KP_Decimal, KP_Separator, KP_Separator ] }; }; diff -uNr xkeyboard-config-20070715.orig/symbols/keypad xkeyboard-config-20070715/symbols/keypad --- xkeyboard-config-20070715.orig/symbols/keypad 2007-07-15 13:39:39.000000000 +0200 +++ xkeyboard-config-20070715/symbols/keypad 2007-07-15 14:49:46.000000000 +0200 @@ -139,6 +139,18 @@ }; +// Legacy Wang 725-3771-ae and 725-3771-uk keypad definition +// Copyright © 2006-2007 Nicolas Mailhot +keypad_keys +xkb_symbols "legacy_wang" { + + include "keypad(core)" + include "keypad(legacymath)" + include "keypad(legacynumber_wang)" + include "kpdl(dot)" +}; + + // Complete new keypad definition // Copyright © 2006-2007 Nicolas Mailhot keypad_keys @@ -163,6 +175,18 @@ }; +// Wang 725-3771-ae and 725-3771-uk keypad variant of oss keypad +// Copyright © 2006-2007 Nicolas Mailhot +keypad_keys +xkb_symbols "oss_wang" { + + include "keypad(core)" + include "keypad(ossmath)" + include "keypad(ossnumber_wang)" + include "kpdl(dotoss)" +}; + + // Forward-looking keypad definition // Won't work with applications that make ASCII assumptions // Copyright © 2007 Nicolas Mailhot @@ -176,6 +200,19 @@ }; +// Forward-looking keypad definition +// Won't work with applications that make ASCII assumptions +// Copyright © 2007 Nicolas Mailhot +keypad_keys +xkb_symbols "future_wang" { + + include "keypad(core)" + include "keypad(futuremath)" + include "keypad(ossnumber_wang)" + include "kpdl(commaoss)" +}; + + // Keypad keys nobody changes // Copyright © 2006 Nicolas Mailhot partial keypad_keys @@ -336,6 +373,48 @@ }; +// Legacy Wang 725-3771-ae and 725-3771-uk keypad number area +// Copyright © 2007 Nicolas Mailhot +// This is actually a three-level keypad, declared as four-level +// to avoid defining a new type +// +// ┏━━━━━┱ ⇱ Home +// ┃Num ┃ ⇲ End +// ┃Lock⇭┃ ⇞ Page up +// ┡━━━━━╃─────┼─────┼ ⇟ Page down +// │ 7 │ 8 │ 9 │ ⇞ Page up +// │ ⇱ < │ ⇧ > │ ⇞ ^ │ ⎀ Insert +// ├─────┼─────┼─────┤ ␥ Delete +// │ 4 │ 5 │ 6 │ ⇦⇧⇨⇩ Directions +// │ ⇦ [ │ ] │ ⇨ $ │ +// ├─────┼─────┼─────╆ +// │ 1 │ 2 │ 3 ┃ +// │ ⇲ & │ ⇩ @ │ ⇟ # ┃ 1 None +// ├─────┴─────┼─────┨ 2 Num Lock ⇭ +// │ 0 │ 3 Level3 ⇮ +// │ ⎀ │ +// └───────────┴ +partial keypad_keys +xkb_symbols "legacynumber_wang" { + + key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD" ; + + key { [ KP_Home, KP_7, less ] }; // 7 < + key { [ KP_Up, KP_8, greater ] }; // 8 > + key { [ KP_Prior, KP_9, asciicircum ] }; // 9 ^ + + key { [ KP_Left, KP_4, bracketleft ] }; // 4 [ + key { [ KP_Begin, KP_5, bracketright ] }; // 5 ] + key { [ KP_Right, KP_6, dollar ] }; // 6 $ + + key { [ KP_End, KP_1, ampersand ] }; // 1 & + key { [ KP_Down, KP_2, at ] }; // 2 @ + key { [ KP_Next, KP_3, numbersign ] }; // 3 # + + key { [ KP_Insert, KP_0, apostrophe ] }; // 0 ' +}; + + // Keypad number area with arrow symbols // Copyright © 2006 Nicolas Mailhot // @@ -374,3 +453,43 @@ key { [ KP_Insert, KP_0, 0x1002195, 0x10021D5 ] }; // 0 ↕ ⇕ }; + + +// Wang 725-3771-ae and 725-3771-uk keypad number area with additional arrow symbols +// Copyright © 2007 Nicolas Mailhot +// +// ┏━━━━━┱ ⇱ Home +// ┃Num ┃ ⇲ End +// ┃Lock⇭┃ ⇞ Page up +// ┡━━━━━╃─────┼─────┼ ⇟ Page down +// │ 7 ↖ │ 8 ↑ │ 9 ↗ │ ⇞ Page up +// │ ⇱ < │ ⇧ > │ ⇞ ^ │ ⎀ Insert +// ├─────┼─────┼─────┤ ␥ Delete +// │ 4 ← │ 5 ↔ │ 6 → │ ⇦⇧⇨⇩ Directions +// │ ⇦ [ │ ] │ ⇨ $ │ ⍽ narrow no-break space +// ├─────┼─────┼─────╆ +// │ 1 ↙ │ 2 ↓ │ 3 ↘ ┃ +// │ ⇲ & │ ⇩ @ │ ⇟ # ┃ 1 None +// ├─────┴─────┼─────┨ 2 Num Lock ⇭ +// │ 0 ↕ │ 3 Level3 ⇮ +// │ ⎀ ' │ 4 Shift+Level3 ⇧⇮ +// └───────────┴ +partial keypad_keys +xkb_symbols "ossnumber_wang" { + + key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD" ; + + key { [ KP_Home, KP_7, less, 0x1002196 ] }; // 7 < ↖ + key { [ KP_Up, KP_8, greater, 0x1002191 ] }; // 8 > ↑ + key { [ KP_Prior, KP_9, asciicircum, 0x1002197 ] }; // 9 ^ ↗ + + key { [ KP_Left, KP_4, bracketleft, 0x1002190 ] }; // 4 [ ← + key { [ KP_Begin, KP_5, bracketright, 0x1002194 ] }; // 5 ] ↔ + key { [ KP_Right, KP_6, dollar, 0x1002192 ] }; // 6 $ → + + key { [ KP_End, KP_1, ampersand, 0x1002199 ] }; // 1 & ↙ + key { [ KP_Down, KP_2, at, 0x1002193 ] }; // 2 @ ↓ + key { [ KP_Next, KP_3, numbersign, 0x1002198 ] }; // 3 # ↘ + + key { [ KP_Insert, KP_0, apostrophe, 0x1002195 ] }; // 0 ' ↕ +};