Home | History | Annotate | Line # | Download | only in symbols
keypad revision 1.1
      1  1.1  mrg // $XKeyboardConfig: xkeyboard-config/symbols/keypad,v 1.6 2007/07/16 08:27:03 svu Exp $
      2  1.1  mrg // $Xorg: keypad,v 1.3 2000/08/17 19:54:43 cpqbld Exp $
      3  1.1  mrg 
      4  1.1  mrg partial hidden keypad_keys
      5  1.1  mrg xkb_symbols "overlay" {
      6  1.1  mrg     include "keypad(overlay1)"
      7  1.1  mrg };
      8  1.1  mrg 
      9  1.1  mrg partial hidden keypad_keys
     10  1.1  mrg xkb_symbols "overlay1" {
     11  1.1  mrg 
     12  1.1  mrg     // Begin "Keypad" section
     13  1.1  mrg 
     14  1.1  mrg     key  <KP7> {	[  KP_Home	],	overlay1=<KO7>	};
     15  1.1  mrg     key  <KP8> {	[  KP_Up	],	overlay1=<KO8>	};
     16  1.1  mrg     key  <KP9> {	[  KP_Prior	],	overlay1=<KO9>	};
     17  1.1  mrg 
     18  1.1  mrg     key  <KP4> {	[  KP_Left	],	overlay1=<KO4>	};
     19  1.1  mrg     key  <KP5> {	[  KP_Begin	],	overlay1=<KO5>	};
     20  1.1  mrg     key  <KP6> {	[  KP_Right	],	overlay1=<KO6>	};
     21  1.1  mrg 
     22  1.1  mrg     key  <KP1> {	[  KP_End	],	overlay1=<KO1>	};
     23  1.1  mrg     key  <KP2> {	[  KP_Down	],	overlay1=<KO2>	};
     24  1.1  mrg     key  <KP3> {	[  KP_Next	],	overlay1=<KO3>	};
     25  1.1  mrg 
     26  1.1  mrg     key  <KP0> {	[  KP_Insert	],	overlay1=<KO0>	};
     27  1.1  mrg     key <KPDL> {  	[  KP_Delete	],	overlay1=<KODL>	};
     28  1.1  mrg 
     29  1.1  mrg     key  <KO7> {	[  KP_7	]	};
     30  1.1  mrg     key  <KO8> {	[  KP_8	]	};
     31  1.1  mrg     key  <KO9> {	[  KP_9	]	};
     32  1.1  mrg 
     33  1.1  mrg     key  <KO4> {	[  KP_4	]	};
     34  1.1  mrg     key  <KO5> {	[  KP_5	]	};
     35  1.1  mrg     key  <KO6> {	[  KP_6	]	};
     36  1.1  mrg 
     37  1.1  mrg     key  <KO1> {	[  KP_1	]	};
     38  1.1  mrg     key  <KO2> {	[  KP_2	]	};
     39  1.1  mrg     key  <KO3> {	[  KP_3	]	};
     40  1.1  mrg 
     41  1.1  mrg     key  <KO0> {	[  KP_0	]	};
     42  1.1  mrg     key <KODL> {  	[  KP_Decimal ]	};
     43  1.1  mrg 
     44  1.1  mrg     // End "Keypad" section
     45  1.1  mrg };
     46  1.1  mrg 
     47  1.1  mrg partial hidden keypad_keys
     48  1.1  mrg xkb_symbols "overlay2" {
     49  1.1  mrg 
     50  1.1  mrg     // Begin "Keypad" section
     51  1.1  mrg 
     52  1.1  mrg     key  <KP7> {	[  KP_Home	],	overlay2=<KO7>	};
     53  1.1  mrg     key  <KP8> {	[  KP_Up	],	overlay2=<KO8>	};
     54  1.1  mrg     key  <KP9> {	[  KP_Prior	],	overlay2=<KO9>	};
     55  1.1  mrg 
     56  1.1  mrg     key  <KP4> {	[  KP_Left	],	overlay2=<KO4>	};
     57  1.1  mrg     key  <KP5> {	[  KP_Begin	],	overlay2=<KO5>	};
     58  1.1  mrg     key  <KP6> {	[  KP_Right	],	overlay2=<KO6>	};
     59  1.1  mrg 
     60  1.1  mrg     key  <KP1> {	[  KP_End	],	overlay2=<KO1>	};
     61  1.1  mrg     key  <KP2> {	[  KP_Down	],	overlay2=<KO2>	};
     62  1.1  mrg     key  <KP3> {	[  KP_Next	],	overlay2=<KO3>	};
     63  1.1  mrg 
     64  1.1  mrg     key  <KP0> {	[  KP_Insert	],	overlay2=<KO0>	};
     65  1.1  mrg     key <KPDL> {  	[  KP_Delete	],	overlay2=<KODL>	};
     66  1.1  mrg 
     67  1.1  mrg     key  <KO7> {	[  KP_7	]	};
     68  1.1  mrg     key  <KO8> {	[  KP_8	]	};
     69  1.1  mrg     key  <KO9> {	[  KP_9	]	};
     70  1.1  mrg 
     71  1.1  mrg     key  <KO4> {	[  KP_4	]	};
     72  1.1  mrg     key  <KO5> {	[  KP_5	]	};
     73  1.1  mrg     key  <KO6> {	[  KP_6	]	};
     74  1.1  mrg 
     75  1.1  mrg     key  <KO1> {	[  KP_1	]	};
     76  1.1  mrg     key  <KO2> {	[  KP_2	]	};
     77  1.1  mrg     key  <KO3> {	[  KP_3	]	};
     78  1.1  mrg 
     79  1.1  mrg     key  <KO0> {	[  KP_0	]	};
     80  1.1  mrg     key <KODL> {  	[  KP_Decimal ]	};
     81  1.1  mrg 
     82  1.1  mrg     // End "Keypad" section
     83  1.1  mrg };
     84  1.1  mrg 
     85  1.1  mrg partial hidden default keypad_keys
     86  1.1  mrg xkb_symbols "x11" {
     87  1.1  mrg // Ungrab cancels server/keyboard/pointer grabs
     88  1.1  mrg     key <KPDV> {
     89  1.1  mrg         type="CTRL+ALT",
     90  1.1  mrg         symbols[Group1]= [ KP_Divide,	XF86_Ungrab ]
     91  1.1  mrg     };
     92  1.1  mrg 
     93  1.1  mrg // ClsGrb kills whichever client has a grab in effect
     94  1.1  mrg     key <KPMU> {
     95  1.1  mrg         type="CTRL+ALT",
     96  1.1  mrg         symbols[Group1]= [ KP_Multiply,	XF86_ClearGrab ]
     97  1.1  mrg     };
     98  1.1  mrg 
     99  1.1  mrg // -VMode switches to the previous video mode
    100  1.1  mrg     key <KPSU> {
    101  1.1  mrg         type="CTRL+ALT",
    102  1.1  mrg         symbols[Group1]= [ KP_Subtract,	XF86_Prev_VMode ]
    103  1.1  mrg     };
    104  1.1  mrg 
    105  1.1  mrg     key  <KP7> {	[  KP_Home,	KP_7	]	};
    106  1.1  mrg     key  <KP8> {	[  KP_Up,	KP_8	]	};
    107  1.1  mrg     key  <KP9> {	[  KP_Prior,	KP_9	]	};
    108  1.1  mrg 
    109  1.1  mrg // +VMode switches to the next video mode
    110  1.1  mrg     key <KPAD> {
    111  1.1  mrg         type="CTRL+ALT",
    112  1.1  mrg         symbols[Group1]= [ KP_Add,	XF86_Next_VMode ]
    113  1.1  mrg     };
    114  1.1  mrg 
    115  1.1  mrg     key  <KP4> {	[  KP_Left,	KP_4	]	};
    116  1.1  mrg     key  <KP5> {	[  KP_Begin,	KP_5	]	};
    117  1.1  mrg     key  <KP6> {	[  KP_Right,	KP_6	]	};
    118  1.1  mrg 
    119  1.1  mrg     key  <KP1> {	[  KP_End,	KP_1	]	};
    120  1.1  mrg     key  <KP2> {	[  KP_Down,	KP_2	]	};
    121  1.1  mrg     key  <KP3> {	[  KP_Next,	KP_3	]	};
    122  1.1  mrg     key <KPEN> {	[  	KP_Enter	]	};
    123  1.1  mrg     key <KPEQ> {	[  	KP_Equal	]	};
    124  1.1  mrg 
    125  1.1  mrg     key  <KP0> {	[  KP_Insert,	KP_0	]	};
    126  1.1  mrg     key <KPDL> {  	[  KP_Delete,	KP_Decimal ]	};
    127  1.1  mrg };
    128  1.1  mrg 
    129  1.1  mrg 
    130  1.1  mrg // Legacy PC keypad definition
    131  1.1  mrg // Copyright  2006-2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    132  1.1  mrg keypad_keys
    133  1.1  mrg xkb_symbols "legacy" {
    134  1.1  mrg 
    135  1.1  mrg     include "keypad(core)"
    136  1.1  mrg     include "keypad(legacymath)"
    137  1.1  mrg     include "keypad(legacynumber)"
    138  1.1  mrg     include "kpdl(dot)"
    139  1.1  mrg };
    140  1.1  mrg 
    141  1.1  mrg 
    142  1.1  mrg // Legacy Wang 725-3771-ae and 725-3771-uk keypad definition
    143  1.1  mrg // Copyright  2006-2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    144  1.1  mrg keypad_keys
    145  1.1  mrg xkb_symbols "legacy_wang" {
    146  1.1  mrg 
    147  1.1  mrg     include "keypad(core)"
    148  1.1  mrg     include "keypad(legacymath)"
    149  1.1  mrg     include "keypad(legacynumber_wang)"
    150  1.1  mrg     include "kpdl(dot)"
    151  1.1  mrg };
    152  1.1  mrg 
    153  1.1  mrg 
    154  1.1  mrg // Complete new keypad definition
    155  1.1  mrg // Copyright  2006-2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    156  1.1  mrg keypad_keys
    157  1.1  mrg xkb_symbols "oss" {
    158  1.1  mrg 
    159  1.1  mrg     include "keypad(core)"
    160  1.1  mrg     include "keypad(ossmath)"
    161  1.1  mrg     include "keypad(ossnumber)"
    162  1.1  mrg     include "kpdl(dotoss)"
    163  1.1  mrg };
    164  1.1  mrg 
    165  1.1  mrg 
    166  1.1  mrg // Latin9 restriction of new keypad definition
    167  1.1  mrg // Copyright  2006-2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    168  1.1  mrg keypad_keys
    169  1.1  mrg xkb_symbols "oss_latin9" {
    170  1.1  mrg 
    171  1.1  mrg     include "keypad(core)"
    172  1.1  mrg     include "keypad(ossmath_latin9)"
    173  1.1  mrg     include "keypad(legacynumber)"
    174  1.1  mrg     include "kpdl(dotoss_latin9)"
    175  1.1  mrg };
    176  1.1  mrg 
    177  1.1  mrg 
    178  1.1  mrg // Wang 725-3771-ae and 725-3771-uk keypad variant of oss keypad
    179  1.1  mrg // Copyright  2006-2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    180  1.1  mrg keypad_keys
    181  1.1  mrg xkb_symbols "oss_wang" {
    182  1.1  mrg 
    183  1.1  mrg     include "keypad(core)"
    184  1.1  mrg     include "keypad(ossmath)"
    185  1.1  mrg     include "keypad(ossnumber_wang)"
    186  1.1  mrg     include "kpdl(dotoss)"
    187  1.1  mrg };
    188  1.1  mrg 
    189  1.1  mrg 
    190  1.1  mrg // Forward-looking keypad definition
    191  1.1  mrg // Won't work with applications that make ASCII assumptions
    192  1.1  mrg // Copyright  2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    193  1.1  mrg keypad_keys
    194  1.1  mrg xkb_symbols "future" {
    195  1.1  mrg 
    196  1.1  mrg     include "keypad(core)"
    197  1.1  mrg     include "keypad(futuremath)"
    198  1.1  mrg     include "keypad(ossnumber)"
    199  1.1  mrg     include "kpdl(commaoss)"
    200  1.1  mrg };
    201  1.1  mrg 
    202  1.1  mrg 
    203  1.1  mrg // Forward-looking keypad definition
    204  1.1  mrg // Won't work with applications that make ASCII assumptions
    205  1.1  mrg // Copyright  2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    206  1.1  mrg keypad_keys
    207  1.1  mrg xkb_symbols "future_wang" {
    208  1.1  mrg 
    209  1.1  mrg     include "keypad(core)"
    210  1.1  mrg     include "keypad(futuremath)"
    211  1.1  mrg     include "keypad(ossnumber_wang)"
    212  1.1  mrg     include "kpdl(commaoss)"
    213  1.1  mrg };
    214  1.1  mrg 
    215  1.1  mrg 
    216  1.1  mrg // Keypad keys nobody changes
    217  1.1  mrg // Copyright  2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    218  1.1  mrg partial keypad_keys
    219  1.1  mrg xkb_symbols "core" {
    220  1.1  mrg 
    221  1.1  mrg     modifier_map Mod2 { Num_Lock };
    222  1.1  mrg 
    223  1.1  mrg     key <NMLK> { [ Num_Lock, Pointer_EnableKeys ] };
    224  1.1  mrg     key <KPEN> { [ KP_Enter                     ] };
    225  1.1  mrg     key <KPEQ> { [ KP_Equal                     ] };
    226  1.1  mrg };
    227  1.1  mrg 
    228  1.1  mrg 
    229  1.1  mrg // Legacy keypad math area
    230  1.1  mrg // Copyright  2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    231  1.1  mrg //
    232  1.1  mrg // 
    233  1.1  mrg // Num                <XF86_Ungrab>
    234  1.1  mrg // Lock /    *    -     <XF86_ClearGrab>
    235  1.1  mrg //   <XF86_Prev_VMode>
    236  1.1  mrg //                         <XF86_Next_VMode>
    237  1.1  mrg //                        
    238  1.1  mrg //                         1 None
    239  1.1  mrg //                         2 Ctrl+Alt
    240  1.1  mrg //                    +   
    241  1.1  mrg //                   
    242  1.1  mrg partial keypad_keys
    243  1.1  mrg xkb_symbols "legacymath" {
    244  1.1  mrg 
    245  1.1  mrg     key.type[Group1]="CTRL+ALT" ;
    246  1.1  mrg 
    247  1.1  mrg     key <KPDV> { [   KP_Divide,     XF86_Ungrab ] }; // / <XF86_Ungrab>
    248  1.1  mrg     key <KPMU> { [ KP_Multiply,  XF86_ClearGrab ] }; // * <XF86_ClearGrab>
    249  1.1  mrg     key <KPSU> { [ KP_Subtract, XF86_Prev_VMode ] }; // - <XF86_Prev_VMode>
    250  1.1  mrg 
    251  1.1  mrg     key <KPAD> { [      KP_Add, XF86_Next_VMode ] }; // + <XF86_Next_VMode>
    252  1.1  mrg 
    253  1.1  mrg };
    254  1.1  mrg 
    255  1.1  mrg 
    256  1.1  mrg // Keypad math area with non-CS operators
    257  1.1  mrg // Copyright  2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    258  1.1  mrg //
    259  1.1  mrg // 
    260  1.1  mrg // Num      .       <XF86_Ungrab>
    261  1.1  mrg // Lock /   *   -    <XF86_ClearGrab>
    262  1.1  mrg //   <XF86_Prev_VMode>
    263  1.1  mrg //                    +    <XF86_Next_VMode>
    264  1.1  mrg //                        
    265  1.1  mrg //                         1 None
    266  1.1  mrg //                         2 Level3 
    267  1.1  mrg //                    + +  3 Shift+Level3 
    268  1.1  mrg //                    4 Ctrl+Alt
    269  1.1  mrg partial keypad_keys
    270  1.1  mrg xkb_symbols "ossmath" {
    271  1.1  mrg 
    272  1.1  mrg     key.type[Group1]="FOUR_LEVEL_X" ;
    273  1.1  mrg 
    274  1.1  mrg     key <KPDV> { [   KP_Divide, 0x1002215, 0x10000F7,     XF86_Ungrab ] }; // /       <XF86_Ungrab>
    275  1.1  mrg     key <KPMU> { [ KP_Multiply, 0x10022C5, 0x10000D7,  XF86_ClearGrab ] }; // *    <XF86_ClearGrab>
    276  1.1  mrg     key <KPSU> { [ KP_Subtract, 0x1002212, 0x1002212, XF86_Prev_VMode ] }; // -   <XF86_Prev_VMode>
    277  1.1  mrg 
    278  1.1  mrg     key <KPAD> { [      KP_Add, 0x100002B, 0x100002B, XF86_Next_VMode ] }; // + + + <XF86_Next_VMode>
    279  1.1  mrg 
    280  1.1  mrg };
    281  1.1  mrg 
    282  1.1  mrg 
    283  1.1  mrg // Keypad math area with non-CS operators in first levels
    284  1.1  mrg // As demanded by users not interested in legacy pre-unicode junk
    285  1.1  mrg // Copyright  2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    286  1.1  mrg //
    287  1.1  mrg // 
    288  1.1  mrg // Num   /   *   -    <XF86_Ungrab>
    289  1.1  mrg // Lock    .       <XF86_ClearGrab>
    290  1.1  mrg //   <XF86_Prev_VMode>
    291  1.1  mrg //                    +    <XF86_Next_VMode>
    292  1.1  mrg //                        
    293  1.1  mrg //                         1 None
    294  1.1  mrg //                         2 Level3 
    295  1.1  mrg //                    + +  3 Shift+Level3 
    296  1.1  mrg //                    4 Ctrl+Alt
    297  1.1  mrg partial keypad_keys
    298  1.1  mrg xkb_symbols "futuremath" {
    299  1.1  mrg 
    300  1.1  mrg     key.type[Group1]="FOUR_LEVEL_X" ;
    301  1.1  mrg 
    302  1.1  mrg     key <KPDV> { [ 0x1002215,   KP_Divide, 0x10000F7,     XF86_Ungrab ] }; //  /      <XF86_Ungrab>
    303  1.1  mrg     key <KPMU> { [ 0x10022C5, KP_Multiply, 0x10000D7,  XF86_ClearGrab ] }; //  *   <XF86_ClearGrab>
    304  1.1  mrg     key <KPSU> { [ 0x1002212, KP_Subtract, 0x1002212, XF86_Prev_VMode ] }; //  -  <XF86_Prev_VMode>
    305  1.1  mrg 
    306  1.1  mrg     key <KPAD> { [ 0x100002B,      KP_Add, 0x100002B, XF86_Next_VMode ] }; // + + + <XF86_Next_VMode>
    307  1.1  mrg };
    308  1.1  mrg 
    309  1.1  mrg 
    310  1.1  mrg // Keypad math area with non-CS operators, restricted to latin9
    311  1.1  mrg // Copyright  2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    312  1.1  mrg //
    313  1.1  mrg // 
    314  1.1  mrg // Num   /      -    <XF86_Ungrab>
    315  1.1  mrg // Lock /   *   - -   <XF86_ClearGrab>
    316  1.1  mrg //   <XF86_Prev_VMode>
    317  1.1  mrg //                    +    <XF86_Next_VMode>
    318  1.1  mrg //                        
    319  1.1  mrg //                         1 None
    320  1.1  mrg //                         2 Level3 
    321  1.1  mrg //                    + +  3 Shift+Level3 
    322  1.1  mrg //                    4 Ctrl+Alt
    323  1.1  mrg partial keypad_keys
    324  1.1  mrg xkb_symbols "ossmath_latin9" {
    325  1.1  mrg 
    326  1.1  mrg     key.type[Group1]="FOUR_LEVEL_X";
    327  1.1  mrg 
    328  1.1  mrg     key <KPDV> { [   KP_Divide,          slash, division,     XF86_Ungrab ] }; // / /      <XF86_Ungrab>
    329  1.1  mrg     key <KPMU> { [ KP_Multiply, periodcentered, multiply,  XF86_ClearGrab ] }; // *    <XF86_ClearGrab>
    330  1.1  mrg     key <KPSU> { [ KP_Subtract,          minus,    minus, XF86_Prev_VMode ] }; // - - - <XF86_Prev_VMode>
    331  1.1  mrg 
    332  1.1  mrg     key <KPAD> { [      KP_Add,           plus,     plus, XF86_Next_VMode ] }; // + + + <XF86_Next_VMode>
    333  1.1  mrg };
    334  1.1  mrg 
    335  1.1  mrg 
    336  1.1  mrg // Legacy keypad number area
    337  1.1  mrg // Copyright  2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    338  1.1  mrg //
    339  1.1  mrg //                     Home
    340  1.1  mrg // Num                      End
    341  1.1  mrg // Lock                    Page up
    342  1.1  mrg //         Page down
    343  1.1  mrg //  7    8    9           Page up
    344  1.1  mrg //                     Insert
    345  1.1  mrg //         Delete
    346  1.1  mrg //  4    5    6           Directions
    347  1.1  mrg //              
    348  1.1  mrg // 
    349  1.1  mrg //  1    2    3   
    350  1.1  mrg //                     1 None
    351  1.1  mrg //         2 Num Lock 
    352  1.1  mrg //  0         
    353  1.1  mrg //           
    354  1.1  mrg // 
    355  1.1  mrg partial keypad_keys
    356  1.1  mrg xkb_symbols "legacynumber" {
    357  1.1  mrg 
    358  1.1  mrg     key.type[Group1]="KEYPAD" ;
    359  1.1  mrg 
    360  1.1  mrg     key <KP7>  { [   KP_Home,       KP_7 ] }; //   <home> 7
    361  1.1  mrg     key <KP8>  { [     KP_Up,       KP_8 ] }; //     <up> 8
    362  1.1  mrg     key <KP9>  { [  KP_Prior,       KP_9 ] }; //  <prior> 9
    363  1.1  mrg  
    364  1.1  mrg     key <KP4>  { [   KP_Left,       KP_4 ] }; //   <left> 4
    365  1.1  mrg     key <KP5>  { [  KP_Begin,       KP_5 ] }; //  <begin> 5
    366  1.1  mrg     key <KP6>  { [  KP_Right,       KP_6 ] }; //  <right> 6
    367  1.1  mrg 
    368  1.1  mrg     key <KP1>  { [    KP_End,       KP_1 ] }; //    <end> 1
    369  1.1  mrg     key <KP2>  { [   KP_Down,       KP_2 ] }; //   <down> 2
    370  1.1  mrg     key <KP3>  { [   KP_Next,       KP_3 ] }; //   <next> 3
    371  1.1  mrg 
    372  1.1  mrg     key <KP0>  { [ KP_Insert,       KP_0 ] }; // <insert> 0
    373  1.1  mrg };
    374  1.1  mrg 
    375  1.1  mrg 
    376  1.1  mrg // Legacy Wang 725-3771-ae and 725-3771-uk keypad number area
    377  1.1  mrg // Copyright  2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    378  1.1  mrg // This is actually a three-level keypad, declared as four-level
    379  1.1  mrg // to avoid defining a new type
    380  1.1  mrg //
    381  1.1  mrg //                     Home
    382  1.1  mrg // Num                      End
    383  1.1  mrg // Lock                    Page up
    384  1.1  mrg //         Page down
    385  1.1  mrg //  7    8    9           Page up
    386  1.1  mrg //   <   >   ^         Insert
    387  1.1  mrg //         Delete
    388  1.1  mrg //  4    5    6           Directions
    389  1.1  mrg //   [    ]   $ 
    390  1.1  mrg // 
    391  1.1  mrg //  1    2    3   
    392  1.1  mrg //   &   @   #        1 None
    393  1.1  mrg //        2 Num Lock 
    394  1.1  mrg //  0                      3 Level3 
    395  1.1  mrg //           
    396  1.1  mrg // 
    397  1.1  mrg partial keypad_keys
    398  1.1  mrg xkb_symbols "legacynumber_wang" {
    399  1.1  mrg 
    400  1.1  mrg     key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD" ;
    401  1.1  mrg 
    402  1.1  mrg     key <KP7>  { [   KP_Home,   KP_7,         less ] }; //   <home> 7 <
    403  1.1  mrg     key <KP8>  { [     KP_Up,   KP_8,      greater ] }; //     <up> 8 >
    404  1.1  mrg     key <KP9>  { [  KP_Prior,   KP_9,  asciicircum ] }; //  <prior> 9 ^
    405  1.1  mrg  
    406  1.1  mrg     key <KP4>  { [   KP_Left,   KP_4,  bracketleft ] }; //   <left> 4 [
    407  1.1  mrg     key <KP5>  { [  KP_Begin,   KP_5, bracketright ] }; //  <begin> 5 ]
    408  1.1  mrg     key <KP6>  { [  KP_Right,   KP_6,       dollar ] }; //  <right> 6 $
    409  1.1  mrg 
    410  1.1  mrg     key <KP1>  { [    KP_End,   KP_1,    ampersand ] }; //    <end> 1 &
    411  1.1  mrg     key <KP2>  { [   KP_Down,   KP_2,           at ] }; //   <down> 2 @
    412  1.1  mrg     key <KP3>  { [   KP_Next,   KP_3,   numbersign ] }; //   <next> 3 #
    413  1.1  mrg 
    414  1.1  mrg     key <KP0>  { [ KP_Insert,   KP_0,   apostrophe ] }; // <insert> 0 '
    415  1.1  mrg };
    416  1.1  mrg 
    417  1.1  mrg 
    418  1.1  mrg // Keypad number area with arrow symbols
    419  1.1  mrg // Copyright  2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    420  1.1  mrg //
    421  1.1  mrg //                     Home
    422  1.1  mrg // Num                      End
    423  1.1  mrg // Lock                    Page up
    424  1.1  mrg //         Page down
    425  1.1  mrg //  7   8   9          Page up
    426  1.1  mrg //                  Insert
    427  1.1  mrg //         Delete
    428  1.1  mrg //  4   5   6          Directions
    429  1.1  mrg //                   narrow no-break space
    430  1.1  mrg // 
    431  1.1  mrg //  1   2   3  
    432  1.1  mrg //                 1 None
    433  1.1  mrg //        2 Num Lock 
    434  1.1  mrg //  0                     3 Level3 
    435  1.1  mrg //                       4 Shift+Level3 
    436  1.1  mrg // 
    437  1.1  mrg partial keypad_keys
    438  1.1  mrg xkb_symbols "ossnumber" {
    439  1.1  mrg 
    440  1.1  mrg     key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD" ;
    441  1.1  mrg 
    442  1.1  mrg     key <KP7>  { [   KP_Home,   KP_7, 0x1002196, 0x10021D6 ] }; //   <home> 7  
    443  1.1  mrg     key <KP8>  { [     KP_Up,   KP_8, 0x1002191, 0x10021D1 ] }; //     <up> 8  
    444  1.1  mrg     key <KP9>  { [  KP_Prior,   KP_9, 0x1002197, 0x10021D7 ] }; //  <prior> 9  
    445  1.1  mrg  
    446  1.1  mrg     key <KP4>  { [   KP_Left,   KP_4, 0x1002190, 0x10021D0 ] }; //   <left> 4  
    447  1.1  mrg     key <KP5>  { [  KP_Begin,   KP_5, 0x1002194, 0x10021D4 ] }; //  <begin> 5  
    448  1.1  mrg     key <KP6>  { [  KP_Right,   KP_6, 0x1002192, 0x10021D2 ] }; //  <right> 6  
    449  1.1  mrg 
    450  1.1  mrg     key <KP1>  { [    KP_End,   KP_1, 0x1002199, 0x10021D9 ] }; //    <end> 1  
    451  1.1  mrg     key <KP2>  { [   KP_Down,   KP_2, 0x1002193, 0x10021D3 ] }; //   <down> 2  
    452  1.1  mrg     key <KP3>  { [   KP_Next,   KP_3, 0x1002198, 0x10021D8 ] }; //   <next> 3  
    453  1.1  mrg 
    454  1.1  mrg     key <KP0>  { [ KP_Insert,   KP_0, 0x1002195, 0x10021D5 ] }; // <insert> 0  
    455  1.1  mrg };
    456  1.1  mrg 
    457  1.1  mrg 
    458  1.1  mrg // Wang 725-3771-ae and 725-3771-uk keypad number area with additional arrow symbols
    459  1.1  mrg // Copyright  2007 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
    460  1.1  mrg //
    461  1.1  mrg //                     Home
    462  1.1  mrg // Num                      End
    463  1.1  mrg // Lock                    Page up
    464  1.1  mrg //         Page down
    465  1.1  mrg //  7   8   9          Page up
    466  1.1  mrg //   <   >   ^         Insert
    467  1.1  mrg //         Delete
    468  1.1  mrg //  4   5   6          Directions
    469  1.1  mrg //   [    ]   $         narrow no-break space
    470  1.1  mrg // 
    471  1.1  mrg //  1   2   3  
    472  1.1  mrg //   &   @   #        1 None
    473  1.1  mrg //        2 Num Lock 
    474  1.1  mrg //  0                     3 Level3 
    475  1.1  mrg //         '              4 Shift+Level3 
    476  1.1  mrg // 
    477  1.1  mrg partial keypad_keys
    478  1.1  mrg xkb_symbols "ossnumber_wang" {
    479  1.1  mrg 
    480  1.1  mrg     key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD" ;
    481  1.1  mrg 
    482  1.1  mrg     key <KP7>  { [   KP_Home,   KP_7,         less, 0x1002196 ] }; //   <home> 7 < 
    483  1.1  mrg     key <KP8>  { [     KP_Up,   KP_8,      greater, 0x1002191 ] }; //     <up> 8 > 
    484  1.1  mrg     key <KP9>  { [  KP_Prior,   KP_9,  asciicircum, 0x1002197 ] }; //  <prior> 9 ^ 
    485  1.1  mrg  
    486  1.1  mrg     key <KP4>  { [   KP_Left,   KP_4,  bracketleft, 0x1002190 ] }; //   <left> 4 [ 
    487  1.1  mrg     key <KP5>  { [  KP_Begin,   KP_5, bracketright, 0x1002194 ] }; //  <begin> 5 ] 
    488  1.1  mrg     key <KP6>  { [  KP_Right,   KP_6,       dollar, 0x1002192 ] }; //  <right> 6 $ 
    489  1.1  mrg 
    490  1.1  mrg     key <KP1>  { [    KP_End,   KP_1,    ampersand, 0x1002199 ] }; //    <end> 1 & 
    491  1.1  mrg     key <KP2>  { [   KP_Down,   KP_2,           at, 0x1002193 ] }; //   <down> 2 @ 
    492  1.1  mrg     key <KP3>  { [   KP_Next,   KP_3,   numbersign, 0x1002198 ] }; //   <next> 3 # 
    493  1.1  mrg 
    494  1.1  mrg     key <KP0>  { [ KP_Insert,   KP_0,   apostrophe, 0x1002195 ] }; // <insert> 0 ' 
    495  1.1  mrg };
    496