Bug 6474

Summary: [rfa] xkbdesc/symbols/be wang variant
Product: xkeyboard-config Reporter: vdb128 <vdb128>
Component: GeneralAssignee: xkb
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: high Keywords: patch
Version: unspecified   
Hardware: x86 (IA32)   
OS: All   
URL: http://picaros.org/xorg/wang724
Whiteboard:
i915 platform: i915 features:

Description vdb128 2006-04-03 04:51:21 UTC
Dear xkb maintainers,

Here below is a proposed addition to the layout xkbdesc/symbols/be.  
It extends the be(basic) variant as to match the engravings on 
a Wang model 724 azerty Belgium keyboard.  This 724 was supplied in 
Belgium and Luxembourg from 1986 until 1998.  

Model number overview:
  724 qwerty US = pc101 + 8 keys (Help, F13-F16, Cancel, Erase, GL) (725-3770)
  724 azerty BE = pc102 + 8 keys + four level keypad (item 725-3771-ae)
  724 qwerty UK = pc102 + 8 keys + four level keypad (item 725-3771-uk)
See www.geocities.jp/vintage_keyboard/wang724.html for the layout.

I didn't find a suitable keysym for the Erase/DecTab key (it E0 
generates Alt_L+F10+Rel:F10+Rel:Alt_L).  It used to insert a decimal 
tab with a field that fills from right-to-left. 

Perhaps this extension might be useful in general and considered for 
inclusion as a new variant.  Alternatively, it could be merged into 
the be(basic) part since all new symbols are a strict addition.  A 
patch for each option is included below.

Yours sincerely,
Servaas Vandenberghe
--- xkbdesc/symbols/be-dist	2005-01-16 03:18:20.000000000 +0100
+++ xkbdesc/symbols/be	2006-04-02 19:55:42.000000000 +0200
@@ -33,7 +33,7 @@
     key <AC01>	{ [         q,          Q,           ae,           AE ]	};
     key <AC10>	{ [         m,          M,   dead_acute, dead_doubleacute ] };
     key <AC11>	{ [    ugrave,    percent,   dead_acute,   dead_caron ]	};
-    key <TLDE>	{ [twosuperior, threesuperior,  notsign,      notsign ]	};
+    key <TLDE>	{ [ twosuperior, threesuperior, notsign,   asciitilde ] };
 
     key <BKSL>	{ [        mu,   sterling,   dead_grave,   dead_breve ]	};
     key <AB01>	{ [         w,          W, guillemotleft,        less ]	};
@@ -41,7 +41,29 @@
     key <AB08>	{ [ semicolon,     period, horizconnector,   multiply ]	};
     key <AB09>	{ [     colon,      slash, periodcentered,   division ]	};
     key <AB10>	{ [     equal,       plus,   dead_tilde, dead_abovedot]	};
-    key <LSGT>  { [      less,    greater,    backslash,    backslash ] };
+    key <LSGT>	{ [      less,    greater,    backslash,    brokenbar ] };
+
+    // Keypad geometry for Wang model 724 type 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  <KP7>	{  [   KP_Home,       KP_7,         less,         less ]  };
+    key  <KP8>	{  [     KP_Up,       KP_8,      greater,      greater ]  };
+    key  <KP9>	{  [  KP_Prior,       KP_9,  asciicircum,  asciicircum ]  };
+
+    key  <KP4>	{  [   KP_Left,       KP_4,  bracketleft,  bracketleft ]  };
+    key  <KP5>	{  [  KP_Begin,       KP_5, bracketright, bracketright ]  };
+    key  <KP6>	{  [  KP_Right,       KP_6,       dollar,       dollar ]  };
+
+    key  <KP1>	{  [    KP_End,       KP_1,    ampersand,    ampersand ]  };
+    key  <KP2>	{  [   KP_Down,       KP_2,           at,           at ]  };
+    key  <KP3>	{  [   KP_Next,       KP_3,   numbersign,   numbersign ]  };
+
+    key  <KP0>	{  [ KP_Insert,       KP_0,   apostrophe,   apostrophe ]  };
+    key <KPDL>	{  [ KP_Delete, KP_Decimal, KP_Separator, KP_Separator ]  };
 
     include "level3(ralt_switch)"
 };
--- xkbdesc/symbols/be-dist	2005-01-16 03:18:20.000000000 +0100
+++ xkbdesc/symbols/be-wang	2006-04-02 19:55:51.000000000 +0200
@@ -100,3 +100,37 @@
     key <AB07>	{ [     comma,   question,      cedilla,    masculine ]	};
     key <AB10>	{ [     equal,       plus,   asciitilde,   asciitilde ]	};
 };
+
+// Wang model 724 azerty Belgium keyboard
+partial alphanumeric_keys
+xkb_symbols "wang" {
+
+    include "be(basic)"
+    name[Group1]="Belgium - Wang model 724 azerty";
+
+    // Engravings on Wang 725-3771-ae
+    key <TLDE> { [ twosuperior, threesuperior,   notsign, asciitilde ] };
+    key <LSGT> { [        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  <KP7> {  [   KP_Home,       KP_7,         less,         less ]  };
+    key  <KP8> {  [     KP_Up,       KP_8,      greater,      greater ]  };
+    key  <KP9> {  [  KP_Prior,       KP_9,  asciicircum,  asciicircum ]  };
+
+    key  <KP4> {  [   KP_Left,       KP_4,  bracketleft,  bracketleft ]  };
+    key  <KP5> {  [  KP_Begin,       KP_5, bracketright, bracketright ]  };
+    key  <KP6> {  [  KP_Right,       KP_6,       dollar,       dollar ]  };
+
+    key  <KP1> {  [    KP_End,       KP_1,    ampersand,    ampersand ]  };
+    key  <KP2> {  [   KP_Down,       KP_2,           at,           at ]  };
+    key  <KP3> {  [   KP_Next,       KP_3,   numbersign,   numbersign ]  };
+
+    key  <KP0> {  [ KP_Insert,       KP_0,   apostrophe,   apostrophe ]  };
+    key <KPDL> {  [ KP_Delete, KP_Decimal, KP_Separator, KP_Separator ]  };
+};
Comment 1 Sergey V. Udaltsov 2006-04-03 06:11:20 UTC
Thanks, committed. Though I must admit it looks like exotic one...

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.