Home | History | Annotate | Line # | Download | only in symbols
apl revision 1.1.1.10
      1       1.1  mrg // EXTRAS:
      2       1.1  mrg //
      3       1.1  mrg // APL Keyboard Layouts
      4       1.1  mrg 
      5       1.1  mrg // This file supports:
      6       1.1  mrg // -	The Sharp APL for Unix (SAX) layout
      7       1.1  mrg // -	The IBM APL2 layout
      8   1.1.1.4  mrg // -	The Manugistics APL*PLUS II (Version 5.1, 1993) keyboard layout
      9   1.1.1.2  mrg // -	The Dyalog APL layout - with additions for box drawing and commands
     10       1.1  mrg 
     11       1.1  mrg // Unicode APL table: http://aplwiki.com/UnicodeAplTable
     12       1.1  mrg // ...and another: http://publibfp.boulder.ibm.com/epubs/pdf/h2110611.pdf (appendix A)
     13       1.1  mrg // Generic Unicode stuff: http://www.fileformat.info/info/unicode/category/index.htm
     14       1.1  mrg 
     15       1.1  mrg // Tim Nelson (this file's creator) says:
     16       1.1  mrg 
     17   1.1.1.6  mrg // This file doesn't deal with all the combining stuff -- I'm not an APL programmer,
     18       1.1  mrg // and am not quite sure what's needed here.  However, it may be possible to get this
     19   1.1.1.4  mrg // working with dead keys and the like.  Patches gratefully accepted.  
     20   1.1.1.5  mrg // [Geoff Streeter: What has been done to is to support all of the APL overstrikes in the compose table]
     21       1.1  mrg 
     22       1.1  mrg // Some of the shift-key assignments may differ from the APL tradition.  If
     23   1.1.1.4  mrg // that's not considered acceptable, it should be possible to remap the 
     24       1.1  mrg // shift keys.  I have striven, however, to ensure that the use of shift keys
     25   1.1.1.4  mrg // in these maps is at least self-consistent.  
     26       1.1  mrg 
     27   1.1.1.4  mrg // I'm assuming that this will be used with another keyboard layout (ie. for 
     28   1.1.1.4  mrg // your language), with a special shift key to use these maps.  
     29       1.1  mrg 
     30   1.1.1.6  mrg // 2018-07-02 added some codes to the Unicode Private Use page.
     31   1.1.1.5  mrg // 2017-02-27 changed  to , added 
     32   1.1.1.4  mrg // 2012-09-26 changed "overbar" to macron which fixed some strangeness in xterm
     33   1.1.1.2  mrg 
     34   1.1.1.4  mrg // 2011-12-22 Geoff Streeter: geoff (a] dyalog.com
     35   1.1.1.4  mrg // Added the Dyalog support.
     36   1.1.1.4  mrg // Corrected (what he thinks) are some errors.
     37   1.1.1.4  mrg // 	Resolving the confusion between APL's and Unicode's concept of Left and Right tacks.
     38   1.1.1.4  mrg // 	Unsure about some of the inheritance from APL2 into APLPLUS. Patches welcome.
     39   1.1.1.4  mrg // Complied with freedesktop.org requirement that the keycodes be in sorted order. Which
     40   1.1.1.4  mrg // leads to the bottom to top (roughly) definitions.
     41   1.1.1.4  mrg 
     42   1.1.1.4  mrg // default layout seems to have to be the first one. Choosing the basic Dyalog layout is definitely
     43   1.1.1.4  mrg // better than using the "common" one. Choosing the complete Dyalog layout is not useful to non-Dyalog
     44   1.1.1.4  mrg // users.
     45   1.1.1.4  mrg 
     46   1.1.1.4  mrg default partial alphanumeric_keys
     47   1.1.1.2  mrg xkb_symbols "basic" {
     48   1.1.1.6  mrg 
     49   1.1.1.8  mrg 	include "apl(dyalog_base)"	// forward reference to a good APL keyboard without Dyalogs extras
     50   1.1.1.6  mrg 
     51   1.1.1.8  mrg 	name[Group1]="APL";
     52   1.1.1.2  mrg };
     53   1.1.1.2  mrg 
     54   1.1.1.2  mrg // 
     55   1.1.1.2  mrg //                                                                           
     56   1.1.1.2  mrg //               <        =        >                                  
     57   1.1.1.2  mrg // 
     58   1.1.1.2  mrg //                                                                           
     59   1.1.1.2  mrg //         ?                ~                    *                   
     60   1.1.1.2  mrg //       
     61   1.1.1.2  mrg //                                                                           
     62   1.1.1.2  mrg //                      _                '                            
     63   1.1.1.2  mrg // 
     64   1.1.1.2  mrg //                                                                            
     65   1.1.1.2  mrg //                                      |                               
     66   1.1.1.2  mrg // 
     67   1.1.1.2  mrg //                                                                              
     68   1.1.1.2  mrg //                                                                              
     69   1.1.1.2  mrg // 
     70   1.1.1.2  mrg 
     71   1.1.1.8  mrg hidden partial alphanumeric_keys
     72       1.1  mrg xkb_symbols "common" {
     73   1.1.1.2  mrg 
     74   1.1.1.2  mrg 	key <AB01> { [	U2282		] }; // Z:  -- Subset Of
     75   1.1.1.2  mrg 	key <AB02> { [	U2283		] }; // X:  -- Superset Of
     76   1.1.1.2  mrg 	key <AB03> { [	U2229		] }; // C:  -- Intersection
     77   1.1.1.2  mrg 	key <AB04> { [	U222A		] }; // V:  -- Union
     78   1.1.1.2  mrg 	key <AB05> { [	U22A5		] }; // B:  -- Up Tack
     79   1.1.1.2  mrg 	key <AB06> { [	U22A4		] }; // N:  -- Down Tack
     80   1.1.1.2  mrg 	key <AB07> { [	U007C		] }; // M: | -- Vertical Line
     81   1.1.1.2  mrg 
     82   1.1.1.2  mrg 	key <AC01> { [	U237A		] }; // A:  -- APL Functional Symbol Alpha
     83   1.1.1.2  mrg 	key <AC02> { [	U2308		] }; // S:  -- Left Ceiling
     84   1.1.1.2  mrg 	key <AC03> { [	U230A		] }; // D:  -- Left Floor
     85   1.1.1.2  mrg 	key <AC04> { [	underscore	] }; // F:
     86   1.1.1.2  mrg 	key <AC05> { [	U2207		] }; // G:  -- Nabla
     87   1.1.1.2  mrg 	key <AC06> { [	U2206		] }; // H:  -- Increment
     88   1.1.1.2  mrg 	key <AC07> { [	U2218		] }; // J:  -- Ring Operator
     89   1.1.1.2  mrg 	key <AC08> { [	apostrophe 	] }; // K:
     90   1.1.1.2  mrg 	key <AC09> { [	U2395		] }; // L:  -- APL Functional Symbol Quad
     91   1.1.1.2  mrg 
     92   1.1.1.2  mrg 	key <AD01> { [	question	] }; // Q:
     93   1.1.1.2  mrg 	key <AD02> { [	U2375		] }; // W:  -- APL Functional Symbol Omega
     94   1.1.1.2  mrg 	key <AD03> { [	U220A		] }; // E:  -- Small Element Of
     95   1.1.1.2  mrg 	key <AD04> { [	U2374		] }; // R:  -- APL Functional Symbol Rho
     96   1.1.1.2  mrg 	key <AD05> { [	asciitilde	] }; // T:
     97   1.1.1.2  mrg 	key <AD06> { [	U2191		] }; // Y:  -- Upwards Arrow
     98   1.1.1.2  mrg 	key <AD07> { [	U2193		] }; // U:  -- Downwards Arrow
     99   1.1.1.2  mrg 	key <AD08> { [	U2373		] }; // I:  -- APL Functional Symbol Iota
    100   1.1.1.2  mrg 	key <AD09> { [	U25CB		] }; // O:  -- White Circle
    101   1.1.1.2  mrg 	key <AD10> { [	asterisk	] }; // P: * -- asterisk
    102   1.1.1.2  mrg 	key <AD11> { [	U2190		] }; // [:  -- Leftwards Arrow
    103       1.1  mrg 
    104       1.1  mrg 	key <AE01> { [	diaeresis	] };
    105   1.1.1.4  mrg 	key <AE02> { [	macron		] }; //  -- Macron
    106   1.1.1.2  mrg 	key <AE03> { [	less		] };
    107   1.1.1.2  mrg 	key <AE04> { [	U2264		] }; //  -- Less-than Or Equal To
    108   1.1.1.2  mrg 	key <AE05> { [	equal		] };
    109   1.1.1.2  mrg 	key <AE06> { [	U2265		] }; //  -- Greater-than Or Equal To
    110   1.1.1.2  mrg 	key <AE07> { [	greater		] };
    111   1.1.1.2  mrg 	key <AE08> { [	U2260		] }; //  -- Not Equal To
    112   1.1.1.2  mrg 	key <AE09> { [	U2228		] }; //  -- Logical Or
    113   1.1.1.2  mrg 	key <AE10> { [	U2227		] }; //  -- Logical And
    114       1.1  mrg };
    115       1.1  mrg 
    116       1.1  mrg // Keys common to a number of keyboards that allow normal language usage alongside APL
    117   1.1.1.2  mrg 
    118   1.1.1.2  mrg // 
    119   1.1.1.2  mrg //                                                                        
    120   1.1.1.2  mrg //              <        =        >                                
    121   1.1.1.2  mrg // 
    122   1.1.1.2  mrg //                                                                           
    123   1.1.1.2  mrg //         ?                ~                    *                  
    124   1.1.1.2  mrg //       
    125   1.1.1.2  mrg //                                                                           
    126   1.1.1.2  mrg //                      _                '                            
    127   1.1.1.2  mrg // 
    128   1.1.1.2  mrg //                                                                            
    129   1.1.1.2  mrg //                                      |                               
    130   1.1.1.2  mrg // 
    131   1.1.1.2  mrg //                                                                              
    132   1.1.1.2  mrg //                                                                              
    133   1.1.1.2  mrg // 
    134   1.1.1.2  mrg 
    135   1.1.1.2  mrg partial alphanumeric_keys
    136       1.1  mrg xkb_symbols "unified" {
    137       1.1  mrg 
    138       1.1  mrg 	include "apl(common)"
    139       1.1  mrg 
    140   1.1.1.8  mrg 	name[Group1]= "APL symbols (unified)";
    141   1.1.1.8  mrg 
    142   1.1.1.2  mrg 	key <AD12> { [ U2192			] }; // ]:  -- Rightwards Arrow
    143   1.1.1.2  mrg 	key <AE09> { [ NoSymbol,	U2371	] }; // 9:  -- APL Functional Symbol Down Caret Tilde
    144   1.1.1.2  mrg 	key <AE10> { [ NoSymbol,	U2372	] }; // 0:  -- APL Functional Symbol Up Caret Tilde
    145   1.1.1.2  mrg 	key <AE11> { [ U00D7			] }; // -:  -- Multiplication Sign
    146   1.1.1.2  mrg 	key <AE12> { [ U00F7,		U2339	] }; // =:   -- Division Sign / APL Functional Symbol Quad Divide
    147   1.1.1.2  mrg 	key <TLDE> { [ U22C4			] }; // `:  -- Diamond Operator
    148       1.1  mrg };
    149       1.1  mrg 
    150       1.1  mrg // Layout: http://www.wickensonline.co.uk/apl-unicomp.html
    151   1.1.1.2  mrg 
    152   1.1.1.2  mrg // 
    153   1.1.1.2  mrg //                                                                    
    154   1.1.1.2  mrg //              <        =        >                                
    155   1.1.1.2  mrg // 
    156   1.1.1.2  mrg //                                                                    
    157   1.1.1.2  mrg //         ?                ~                    *                  
    158   1.1.1.2  mrg //       
    159   1.1.1.2  mrg //                                                                   
    160   1.1.1.2  mrg //                      _                '                         
    161   1.1.1.2  mrg // 
    162   1.1.1.2  mrg //                                                                     
    163   1.1.1.2  mrg //                                      |                            
    164   1.1.1.2  mrg // 
    165   1.1.1.2  mrg //                                                                              
    166   1.1.1.2  mrg //                                                                              
    167   1.1.1.2  mrg // 
    168   1.1.1.2  mrg 
    169   1.1.1.2  mrg partial alphanumeric_keys
    170       1.1  mrg xkb_symbols "sax" {
    171       1.1  mrg 
    172       1.1  mrg 	include "apl(unified)"
    173       1.1  mrg 
    174   1.1.1.8  mrg 	name[Group1]= "APL symbols (SAX, Sharp APL for Unix)";
    175   1.1.1.8  mrg 
    176   1.1.1.2  mrg 	key <AB03> { [	NoSymbol,	U235D	] }; // C:  -- APL Functional Symbol Up Shoe Jot
    177   1.1.1.2  mrg 	key <AB05> { [	NoSymbol,	U234E	] }; // B:  -- APL Functional Symbol Down Tack Jot (Unicode got the name wrong; it should have been "Up Tack")
    178   1.1.1.2  mrg 	key <AB06> { [	NoSymbol,	U2355	] }; // N:  -- APL Functional Symbol Up Tack Jot (Unicode got the name wrong; it should have been "Down Tack")
    179   1.1.1.2  mrg 	key <AB07> { [	NoSymbol,	U2336	] }; // M:  -- APL Functional Symbol I-Beam
    180   1.1.1.2  mrg 	key <AB08> { [	U235E,		U236A	] }; // ,:   -- APL Functional Symbol Quote Quad / APL Functional Symbol Comma Bar
    181   1.1.1.2  mrg 	key <AB09> { [	U234E,		U2359	] }; // .:   -- [See B key] / APL Functional Symbol Delta Underbar
    182   1.1.1.2  mrg 	key <AB10> { [	U2355,		U233F	] }; // /:   -- [See N key] / APL Functional Symbol Slash Bar
    183   1.1.1.2  mrg 
    184   1.1.1.2  mrg 	key <AC01> { [	NoSymbol,	U2296	] }; // A:  -- Circled Minus
    185   1.1.1.2  mrg 	key <AC04> { [	NoSymbol,	U236B	] }; // F:  -- APL Functional Symbol Del Tilde
    186   1.1.1.2  mrg 	key <AC05> { [	NoSymbol,	U2352	] }; // G:   -- APL Functional Symbol Del Stile
    187   1.1.1.2  mrg 	key <AC06> { [	NoSymbol,	U234B	] }; // H:   -- APL Functional Symbol Delta Stile
    188   1.1.1.2  mrg 	key <AC07> { [	NoSymbol,	U2364	] }; // J:  -- APL Functional Symbol Jot Diaeresis
    189   1.1.1.2  mrg 	key <AC08> { [	NoSymbol,	U233B	] }; // K: 
    190   1.1.1.2  mrg 	key <AC09> { [	NoSymbol,	U235E	] }; // L:  -- APL Functional Symbol Quote Quad
    191   1.1.1.2  mrg 	key <AC10> { [	U22A2			] }; // ;:  -- Right Tack
    192   1.1.1.2  mrg 	key <AC11> { [	U22A3			] }; // ':  -- Left Tack
    193   1.1.1.2  mrg 
    194   1.1.1.2  mrg 	key <AD01> { [	NoSymbol,	U00BF	] }; // Q:  -- Inverted Question Mark
    195   1.1.1.2  mrg 	key <AD02> { [	NoSymbol,	U233D	] }; // W:  -- APL Functional Symbol Circle Stile
    196   1.1.1.2  mrg 	key <AD03> { [	NoSymbol,	U2377	] }; // E:  -- APL Functional Symbol Epsilon Underbar
    197   1.1.1.2  mrg 	key <AD05> { [	NoSymbol,	U2349	] }; // T:  -- APL Functional Symbol Circle Backslash
    198   1.1.1.2  mrg 	key <AD08> { [	NoSymbol,	U2378	] }; // I:  -- APL Functional Symbol Iota Underbar
    199   1.1.1.2  mrg 	key <AD09> { [	NoSymbol,	U2365	] }; // O:  -- APL Functional Symbol Circle Diaeresis
    200   1.1.1.2  mrg 	key <AD10> { [	NoSymbol,	U235F	] }; // P:  -- APL Functional Symbol Circle Star
    201   1.1.1.2  mrg 	key <AE01> { [	NoSymbol,	U00A1	] }; // 1:  -- Inverted Exclamation Mark
    202   1.1.1.2  mrg 	key <AE04> { [	NoSymbol,	cent	] }; // 4:
    203   1.1.1.2  mrg 	key <AE08> { [	NoSymbol,	U2342	] }; // 8:  -- APL Functional Symbol Quad Backslash
    204   1.1.1.2  mrg 	key <AE11> { [	NoSymbol,	U2261	] }; // -:  -- Identical To
    205       1.1  mrg 
    206   1.1.1.2  mrg 	key <BKSL> { [	U235D,		U2340	] }; // \:   -- APL Functional Symbol Up Shoe Jot / APL Functional Symbol Backslash Bar
    207       1.1  mrg };
    208       1.1  mrg 
    209       1.1  mrg // Layout: http://www.wickensonline.co.uk/apl-unicomp.html
    210   1.1.1.2  mrg 
    211   1.1.1.2  mrg // 
    212   1.1.1.2  mrg //                                               !               
    213   1.1.1.2  mrg //                                                         -               
    214   1.1.1.2  mrg //               <        =        >                 +               
    215   1.1.1.2  mrg // 
    216   1.1.1.2  mrg //                                                                         
    217   1.1.1.2  mrg //                                                                         
    218   1.1.1.2  mrg //         ?                ~                    *                  
    219   1.1.1.2  mrg //       
    220   1.1.1.2  mrg //                                                                        
    221   1.1.1.2  mrg //                                                        (    )            
    222   1.1.1.2  mrg //                      _                '         [    ]            
    223   1.1.1.2  mrg // 
    224   1.1.1.2  mrg //                                                                         
    225   1.1.1.2  mrg //                                                  ;    :    \               
    226   1.1.1.2  mrg //                                      |     ,    .    /               
    227   1.1.1.2  mrg // 
    228   1.1.1.2  mrg //                                                                              
    229   1.1.1.2  mrg //                                                                              
    230   1.1.1.2  mrg // 
    231   1.1.1.2  mrg 
    232   1.1.1.2  mrg partial alphanumeric_keys
    233       1.1  mrg xkb_symbols "apl2" {
    234       1.1  mrg 
    235       1.1  mrg 	include "apl(common)"
    236       1.1  mrg 
    237   1.1.1.8  mrg 	name[Group1]= "APL symbols (IBM APL2)";
    238   1.1.1.8  mrg 
    239       1.1  mrg 	// The first column is NoSymbol because it inherits.  The second is NoSymbol because those keys don't do anything
    240   1.1.1.2  mrg 	// AFS - short for APL Functional Symbol
    241       1.1  mrg 
    242   1.1.1.2  mrg 	key <AB08> { [	comma,		semicolon,	U235D	] }; // ,:  -- AFS Up Shoe Jot
    243   1.1.1.2  mrg 	key <AB09> { [	period,		colon,		U2340	] }; // .:  -- AFS Backslash Bar
    244   1.1.1.2  mrg 	key <AB10> { [	slash,		backslash,	U233F	] }; // /:  -- AFS Slash Bar
    245   1.1.1.2  mrg 
    246   1.1.1.2  mrg 	key <AC10> { [	bracketleft, 	parenleft,	U234E	] }; // ;:  -- [See B key in SAX layout]
    247   1.1.1.4  mrg 	key <AC11> { [	bracketright, 	parenright, 	U2355	] }; // ':  -- [See N key in SAX layout] 
    248   1.1.1.2  mrg 
    249   1.1.1.2  mrg 	key <AD11> { [	NoSymbol,	U2192,		U235E	] }; // [: ()   -- Rightwards Arrow / AFS Quote Quad
    250   1.1.1.2  mrg 	key <AD12> { [	U2337,		U2378,		U2359	] }; // ]:    -- AFS Squish Quad / AFS Iota Underbar / AFS Delta Underbar
    251   1.1.1.2  mrg 
    252   1.1.1.2  mrg 	key <AE01> { [	NoSymbol, 	NoSymbol,	U2336	] }; // 1:  -- AFS I-Beam
    253   1.1.1.2  mrg 	key <AE02> { [	NoSymbol, 	NoSymbol,	U236B	] }; // 2:  -- AFS Del Tilde
    254   1.1.1.2  mrg 	key <AE03> { [	NoSymbol, 	NoSymbol,	U2353	] }; // 3:  -- AFS Del Stile
    255   1.1.1.2  mrg 	key <AE04> { [	NoSymbol, 	NoSymbol,	U234B	] }; // 4:  -- AFS Delta Stile
    256   1.1.1.2  mrg 	key <AE05> { [	NoSymbol, 	NoSymbol,	U233D	] }; // 5:  -- AFS Circle Stile
    257   1.1.1.2  mrg 	key <AE06> { [	NoSymbol, 	NoSymbol,	U2349	] }; // 6:  -- AFS Circle Backslash
    258   1.1.1.2  mrg 	key <AE07> { [	NoSymbol, 	NoSymbol,	U2296	] }; // 7:  -- Circled Minus
    259   1.1.1.2  mrg 	key <AE08> { [	NoSymbol, 	NoSymbol,	U235F	] }; // 8:  -- AFS Circle Star
    260   1.1.1.2  mrg 	key <AE09> { [	NoSymbol, 	NoSymbol,	U2371	] }; // 9:  -- AFS Down Caret Tilde
    261   1.1.1.2  mrg 	key <AE10> { [	NoSymbol, 	NoSymbol,	U2372	] }; // 0:  -- AFS Up Caret Tilde
    262   1.1.1.2  mrg 	key <AE11> { [	plus,		minus,		exclam	] }; // -:
    263   1.1.1.2  mrg 	key <AE12> { [	U00D7,		U00F7,		U2339	] }; // =:    -- Multiplication Sign / Division Sign / AFS Quad Divide
    264       1.1  mrg 
    265   1.1.1.2  mrg 	key <BKSL> { [	U2261,		U2377,		U2364	] }; // \:    -- Identical To / AFS Epsilon Underbar / AFS Jot Diaeresis
    266   1.1.1.2  mrg 
    267   1.1.1.4  mrg 	key <TLDE> { [	NoSymbol,	U233B,		U2342	] }; // `:   -- 
    268   1.1.1.2  mrg 
    269   1.1.1.2  mrg 	include "level3(ralt_switch)"
    270       1.1  mrg };
    271       1.1  mrg 
    272   1.1.1.2  mrg // 
    273   1.1.1.2  mrg //                                               !               
    274   1.1.1.2  mrg //                                                         -               
    275   1.1.1.2  mrg //   $           <        =        >                 +               
    276   1.1.1.2  mrg // 
    277   1.1.1.2  mrg //                                                                         
    278   1.1.1.2  mrg //                                                                         
    279   1.1.1.2  mrg //         ?                ~                    *                  
    280   1.1.1.2  mrg //       
    281   1.1.1.2  mrg //                                                                        
    282   1.1.1.2  mrg //                                                        (    )            
    283   1.1.1.2  mrg //                      _                '         [    ]            
    284   1.1.1.2  mrg // 
    285   1.1.1.2  mrg //                                                                         
    286   1.1.1.2  mrg //                                                  ;    :    \               
    287   1.1.1.2  mrg //                                      |     ,    .    /               
    288   1.1.1.2  mrg // 
    289   1.1.1.2  mrg //                                                                              
    290   1.1.1.2  mrg //                                                                              
    291   1.1.1.2  mrg // 
    292   1.1.1.2  mrg 
    293   1.1.1.2  mrg partial alphanumeric_keys
    294       1.1  mrg xkb_symbols "aplplusII" {
    295       1.1  mrg 
    296       1.1  mrg 	include "apl(apl2)"
    297       1.1  mrg 
    298   1.1.1.8  mrg 	name[Group1]= "APL symbols (Manugistics APL*PLUS II)";
    299   1.1.1.8  mrg 
    300   1.1.1.8  mrg 	// AFS is short for APL Functional Symbol
    301   1.1.1.2  mrg 	key <AC10> { [	bracketleft,	parenleft,	U234E	] }; // ;:  -- [See B key in SAX layout]
    302   1.1.1.4  mrg 	key <AC11> { [	bracketright,	parenright,	U2355	] }; // ':  -- [See N key in SAX layout] 
    303   1.1.1.2  mrg 	key <AD11> { [	U2190,		NoSymbol,	U235E	] }; // [:   -- Leftwards Arrow / AFS Quote Quad
    304   1.1.1.2  mrg 	key <AD12> { [	U2192,		NoSymbol,	U236C	] }; // ]:   -- Rightwards Arrow / AFS Zilde
    305   1.1.1.2  mrg 	key <AE01> { [	NoSymbol, 	NoSymbol, 	U2261	] }; // 1:  -- Identical To
    306   1.1.1.2  mrg 	key <BKSL> { [	U22A2,		U22A3,		U2359	] }; // \:    -- Left Tack / Right Tack / AFS Delta Underbar
    307   1.1.1.2  mrg 	key <TLDE> { [	dollar,		U22C4,		U236A	] }; // `:   -- Diamond Operator / AFS Comma Bar
    308       1.1  mrg };
    309       1.1  mrg 
    310       1.1  mrg 
    311       1.1  mrg // MicroAPL layout: http://aplwiki.com/APLXKeyboardLayouts
    312       1.1  mrg // I didn't do the old-style MicroAPL layout; patches gratefully accepted
    313       1.1  mrg 
    314   1.1.1.2  mrg // 
    315   1.1.1.2  mrg //                                               !               
    316   1.1.1.2  mrg //              <        =        >                                
    317   1.1.1.2  mrg // 
    318   1.1.1.2  mrg //                                                                         
    319   1.1.1.2  mrg //         ?                ~                    *                  
    320   1.1.1.2  mrg //       
    321   1.1.1.2  mrg //                                                                        
    322   1.1.1.2  mrg //                      _                '                         
    323   1.1.1.2  mrg // 
    324   1.1.1.2  mrg //                                                                          
    325   1.1.1.2  mrg //                                      |                            
    326   1.1.1.2  mrg // 
    327   1.1.1.2  mrg //                                                                              
    328   1.1.1.2  mrg //                                                                              
    329   1.1.1.2  mrg // 
    330   1.1.1.2  mrg 
    331   1.1.1.2  mrg partial alphanumeric_keys
    332   1.1.1.2  mrg xkb_symbols "aplx" {
    333   1.1.1.2  mrg 
    334   1.1.1.4  mrg 	include "apl(unified)"
    335   1.1.1.4  mrg 
    336   1.1.1.8  mrg 	name[Group1]= "APL symbols (APLX unified)";
    337   1.1.1.8  mrg 
    338   1.1.1.2  mrg 	key <AB08> { [	U235D,		U236A	] }; // ,:   -- APL Functional Symbol Up Shoe Jot / APL Functional Symbol Comma Bar
    339   1.1.1.2  mrg 	key <AB09> { [	U2340,		U2364	] }; // .:   -- APL Functional Symbol Backslash Bar / APL Functional Symbol Jot Diaeresis
    340   1.1.1.2  mrg 	key <AB10> { [	U233F 			] }; // /:  -- APL Functional Symbol Slash Bar
    341   1.1.1.2  mrg 
    342   1.1.1.2  mrg 	key <AC10> { [	U234E,		U2261	] }; // ;:   -- [See B key in SAX layout] / Identical To
    343   1.1.1.2  mrg 	key <AC11> { [	U2355,		U2262	] }; // ':   -- [See N key in SAX layout] / Not Identical To
    344   1.1.1.2  mrg 
    345   1.1.1.2  mrg 	key <AD11> { [	NoSymbol,	U2347	] }; // [:  -- Box With Left Arrow
    346   1.1.1.2  mrg 	key <AD12> { [	NoSymbol,	U2348	] }; // ]:  -- Box With Right Arrow
    347   1.1.1.2  mrg 
    348   1.1.1.2  mrg 	key <AE01> { [	NoSymbol,	U2336	] }; // 1:  -- APL Functional Symbol I-Beam
    349   1.1.1.2  mrg 	key <AE02> { [	NoSymbol,	U236B	] }; // 2:  -- APL Functional Symbol Del Tilde
    350   1.1.1.2  mrg 	key <AE03> { [	NoSymbol,	U2353	] }; // 3:  -- APL Functional Symbol Del Stile
    351   1.1.1.2  mrg 	key <AE04> { [	NoSymbol,	U234B	] }; // 4:  -- APL Functional Symbol Delta Stile
    352   1.1.1.2  mrg 	key <AE05> { [	NoSymbol,	U233D	] }; // 5:  -- APL Functional Symbol Circle Stile
    353   1.1.1.2  mrg 	key <AE06> { [	NoSymbol,	U2349	] }; // 6:  -- APL Functional Symbol Circle Backslash
    354   1.1.1.2  mrg 	key <AE07> { [	NoSymbol,	U2296	] }; // 7:  -- Circled Minus
    355   1.1.1.2  mrg 	key <AE08> { [	NoSymbol,	U235F	] }; // 8:  -- APL Functional Symbol Circle Star
    356   1.1.1.2  mrg 	key <AE11> { [	NoSymbol,	exclam 	] }; // -:
    357   1.1.1.2  mrg 
    358   1.1.1.2  mrg 	key <BKSL> { [	U22A2,		U22A3	] }; // \:   -- Right Tack / Left Tack
    359   1.1.1.2  mrg 
    360   1.1.1.2  mrg 	key <TLDE> { [	NoSymbol,	U235E	] }; // `:  -- APL Functional Symbol Quote Quad
    361   1.1.1.2  mrg };
    362   1.1.1.2  mrg 
    363   1.1.1.2  mrg // APL language support for the Dyalog keyboard.
    364   1.1.1.4  mrg // Dyalog Ltd sell this keyboard with APL engravings. The current model is 
    365   1.1.1.4  mrg // engraved on a Cherry G80. Base languages for US, UK and DK are availible.
    366   1.1.1.2  mrg 
    367   1.1.1.4  mrg // Geoff Streeter, Dyalog Ltd. 2007-09-03
    368   1.1.1.4  mrg // geoff (a] dyalog.com
    369   1.1.1.2  mrg // extended for APL special actions 2008-09-09
    370   1.1.1.4  mrg // add variant 2010-11-26
    371   1.1.1.4  mrg // made BKSL and LTGT keys the same to remove a compatibility issue with the UK physical keyboard
    372   1.1.1.4  mrg // add key (quad equals) 2013-03-12
    373   1.1.1.4  mrg // add currency 2014-05-23
    374   1.1.1.4  mrg // add parallel 2014-05-23
    375   1.1.1.4  mrg // add circle jot 2014-05-23
    376   1.1.1.4  mrg // add t diaeresis 2014-05-23
    377   1.1.1.4  mrg // add del diaerisis 2014-05-23
    378   1.1.1.4  mrg // add quad query 2014-05-23
    379   1.1.1.4  mrg // add dagger 2014-05-23
    380   1.1.1.5  mrg // correct spelling of key name LTGTLSGT 2016-05-26
    381   1.1.1.6  mrg // add enclose underbar 2017-02-27
    382   1.1.1.6  mrg // add alpha underbar 2019-03-22
    383   1.1.1.6  mrg // add omega underbar 2019-03-22
    384   1.1.1.8  mrg // change all "partial hidden" to "hidden partial" - seems to be a compiler change
    385   1.1.1.2  mrg 
    386   1.1.1.4  mrg // The intention is that this keyboard layout overlays a base keyboard that provides 
    387   1.1.1.2  mrg // the alphabet and similar. If this keyboard is placed as the 2nd layout then it can
    388   1.1.1.2  mrg // be reached with a latching shift to increase group by one.
    389   1.1.1.2  mrg 
    390   1.1.1.8  mrg hidden partial alphanumeric_keys
    391   1.1.1.2  mrg xkb_symbols "dyalog_base" {
    392   1.1.1.2  mrg 
    393   1.1.1.2  mrg // 
    394   1.1.1.5  mrg //                                              !                
    395   1.1.1.2  mrg //              <        =        >                                
    396   1.1.1.2  mrg // 
    397   1.1.1.6  mrg //                                                                 
    398   1.1.1.2  mrg //         ?                ~                    *                  
    399   1.1.1.2  mrg //       
    400   1.1.1.6  mrg //                                                                   
    401   1.1.1.2  mrg //                      _                '                         
    402   1.1.1.2  mrg // 
    403   1.1.1.5  mrg //                                                                    
    404   1.1.1.5  mrg //                                     |                            
    405   1.1.1.2  mrg // 
    406   1.1.1.2  mrg //                                                                              
    407   1.1.1.2  mrg //                                                                              
    408   1.1.1.2  mrg // 
    409   1.1.1.2  mrg 
    410   1.1.1.4  mrg 
    411   1.1.1.5  mrg 	key <AB01> { [ U2282,		U2286	] };	// subset of, enclose if simple
    412   1.1.1.2  mrg 	key <AB02> { [ U2283			] };	// superset of
    413   1.1.1.2  mrg 	key <AB03> { [ U2229			] };	// intersection
    414   1.1.1.2  mrg 	key <AB04> { [ U222A			] };	// union
    415   1.1.1.4  mrg 	key <AB05> { [ U22a5,		U236d	] };	// up tack, stile tide
    416   1.1.1.4  mrg 	key <AB06> { [ U22a4,		U2361	] };	// down tack, down tack diaeresis
    417   1.1.1.4  mrg 	key <AB07> { [ bar,		U2225	] };	// vertical line, parallel to
    418   1.1.1.2  mrg 	key <AB08> { [ U235d,		U236a	] };	// up shoe jot, comma bar
    419   1.1.1.2  mrg 	key <AB09> { [ U2340,		U2359	] };	// backslash bar, delta underbar
    420   1.1.1.2  mrg 	key <AB10> { [ U233f,		U2360	] };	// slash bar, quad colon
    421  1.1.1.10  mrg 	key <AC01> { [ U237a,		U2376	] };	// alpha, alpha underbar
    422   1.1.1.2  mrg 	key <AC02> { [ U2308			] };	// left ceiling
    423   1.1.1.2  mrg 	key <AC03> { [ U230a			] };	// left floor
    424   1.1.1.2  mrg 	key <AC04> { [ underscore		] };	// low line
    425   1.1.1.4  mrg 	key <AC05> { [ U2207,		U2362	] };	// nabla, del diaerisis
    426   1.1.1.2  mrg 	key <AC06> { [ U2206			] };	// increment
    427   1.1.1.2  mrg 	key <AC07> { [ U2218,		U2364	] };	// ring operator, jot diaeresis
    428   1.1.1.4  mrg 	key <AC08> { [ apostrophe,	U2338	] };	// quote, key
    429   1.1.1.2  mrg 	key <AC09> { [ U2395,		U2337	] };	// quad, squish quad
    430   1.1.1.2  mrg 	key <AC10> { [ U234e,		U2261	] };	// up tack jot, identical to
    431   1.1.1.2  mrg 	key <AC11> { [ U2355,		U2262	] };	// down tack jot,  not identical to
    432   1.1.1.4  mrg 	key <AD01> { [ question,	U2370	] };	// ?, quad question
    433  1.1.1.10  mrg 	key <AD02> { [ U2375,		U2379	] };	// omega, omega underbar
    434   1.1.1.2  mrg 	key <AD03> { [ U220a,		U2377	] };	// small element of, epsilon underbar
    435   1.1.1.4  mrg 	key <AD04> { [ U2374,		U233E	] };	// rho, circle jot
    436   1.1.1.2  mrg 	key <AD05> { [ asciitilde,	U2368	] };	// tilde, tilde diaeresis
    437   1.1.1.2  mrg 	key <AD06> { [ U2191			] };	// upwards arrow
    438   1.1.1.2  mrg 	key <AD07> { [ U2193			] };	// downwards arrow
    439   1.1.1.2  mrg 	key <AD08> { [ U2373,		U2378	] };	// iota, iota underbar
    440   1.1.1.2  mrg 	key <AD09> { [ U25cb,		U2365	] };	// circle, circle diaeresis
    441   1.1.1.2  mrg 	key <AD10> { [ asterisk,	U2363	] };	// asterisk, star diaeresis
    442   1.1.1.2  mrg 	key <AD11> { [ U2190,		U235e	] };	// left arrow, quote quad
    443   1.1.1.2  mrg 	key <AD12> { [ U2192,		U236c	] };	// right arrow, zilde
    444   1.1.1.2  mrg 	key <AE01> { [ diaeresis,	U2336	] };	// i-beam
    445   1.1.1.4  mrg 	key <AE02> { [ macron,		U236B	] };	// deltilde
    446   1.1.1.2  mrg 	key <AE03> { [ less,		U2352	] };	// downgrade
    447   1.1.1.2  mrg 	key <AE04> { [ U2264,		U234b	] };	// lesseq upgrade
    448   1.1.1.2  mrg 	key <AE05> { [ equal,		U233d	] };	// circlestile
    449   1.1.1.2  mrg 	key <AE06> { [ U2265,		U2349	] };	// greatereq circleslope
    450   1.1.1.2  mrg 	key <AE07> { [ greater,		U2296	] };	// circlebar
    451   1.1.1.2  mrg 	key <AE08> { [ U2260,		U235f	] };	// notequal, circlestar
    452   1.1.1.2  mrg 	key <AE09> { [ U2228,		U2371	] };	// logical or, down caret tilde
    453   1.1.1.2  mrg 	key <AE10> { [ U2227,		U2372	] };	// logical and, up caret tilde
    454   1.1.1.2  mrg 	key <AE11> { [ multiply,	exclam	] };
    455   1.1.1.4  mrg 	key <AE12> { [ division,	U2339	] };	// quad divide
    456   1.1.1.2  mrg 	key <BKSL> { [ U22a2,		U22a3	] };	// right tack, left tack
    457   1.1.1.5  mrg 	key <LSGT> { [ U22a2,		U22a3	] };	// right tack, left tack
    458   1.1.1.5  mrg 	key <TLDE> { [ U22c4,		U233a	] };	// diamond, quad diamond
    459   1.1.1.2  mrg };
    460   1.1.1.2  mrg 
    461   1.1.1.8  mrg hidden partial keypad_keys
    462   1.1.1.2  mrg xkb_symbols "dyalog_box" {
    463       1.1  mrg 
    464   1.1.1.2  mrg // 
    465   1.1.1.2  mrg //             
    466   1.1.1.2  mrg // 
    467   1.1.1.2  mrg //          
    468   1.1.1.2  mrg //    
    469   1.1.1.2  mrg //          
    470   1.1.1.2  mrg // 
    471   1.1.1.2  mrg //          
    472   1.1.1.2  mrg //    
    473   1.1.1.2  mrg //            
    474   1.1.1.2  mrg // 
    475   1.1.1.2  mrg 
    476   1.1.1.2  mrg 	key <KP0>  { [ U2500 ] };	// box drawing light horizontal
    477   1.1.1.2  mrg 	key <KP1>  { [ U2514 ] };	// box drawing light up and right
    478   1.1.1.2  mrg 	key <KP2>  { [ U2534 ] };	// box drawing light up and horizontal
    479   1.1.1.2  mrg 	key <KP3>  { [ U2518 ] };	// box drawing light up and left
    480   1.1.1.4  mrg 	key <KP4>  { [ U251c ] };	// box drawing light vertical and right
    481   1.1.1.4  mrg 	key <KP5>  { [ U253c ] };	// box drawing light vertical and horizontal
    482   1.1.1.4  mrg 	key <KP6>  { [ U2524 ] };	// box drawing light vertical and left
    483   1.1.1.2  mrg 	key <KP7>  { [ U250c ] };	// box drawing light down and right
    484   1.1.1.2  mrg 	key <KP8>  { [ U252c ] };	// box drawing light down and horizontal
    485   1.1.1.2  mrg 	key <KP9>  { [ U2510 ] };	// box drawing light down and left
    486   1.1.1.2  mrg 	key <KPDL> { [ U2502 ] };	// box drawing light vertical
    487   1.1.1.9  mrg };
    488   1.1.1.2  mrg 
    489   1.1.1.8  mrg hidden partial
    490   1.1.1.7  mrg xkb_symbols "dyalog_codes" {
    491   1.1.1.2  mrg 
    492   1.1.1.2  mrg //	Layout of private use area for this. In the style of the Unicode book
    493   1.1.1.2  mrg //
    494   1.1.1.4  mrg //				APL special actions		F800-F88F
    495   1.1.1.2  mrg //
    496   1.1.1.2  mrg //	F800 F810 F820 F830 F840 F850 F860 F870 F880
    497   1.1.1.2  mrg //	
    498   1.1.1.2  mrg //     0QT  LL  BK  FX  Rc  BP  PA          
    499   1.1.1.2  mrg //	
    500   1.1.1.6  mrg //     1ER  HO  ZM  LN  LW  AB  SA          
    501   1.1.1.2  mrg //	
    502   1.1.1.6  mrg //     2TB  CT  SC  MC  RW  HT  RZ          
    503   1.1.1.2  mrg //	
    504   1.1.1.6  mrg //     3BT  PT  RP  MR  Lw  TH  AC          
    505   1.1.1.2  mrg //	
    506   1.1.1.6  mrg //     4EP  IN  NX  JP  Rw  RM  MA          
    507   1.1.1.2  mrg //	
    508   1.1.1.6  mrg //     5UC  II  PV  D1  Uc  CB  OF          
    509   1.1.1.2  mrg //	
    510   1.1.1.6  mrg //     6DC  DI  RT  D2  Dc  PR  FS      TO  
    511   1.1.1.2  mrg //	
    512   1.1.1.6  mrg //     7RC  DP  RA  D3  Ll  SR  FA      MO  
    513   1.1.1.2  mrg //	
    514   1.1.1.6  mrg //     8LC  DB  ED  D4  Rl  IS  TT          
    515   1.1.1.2  mrg //	
    516   1.1.1.6  mrg //     9US  RD  TC  D5  Ul  TL  FT          
    517   1.1.1.2  mrg //	
    518   1.1.1.6  mrg //     ADS  TG  NB  U1  Dl  UA  PL          
    519   1.1.1.2  mrg //	
    520   1.1.1.6  mrg //     BRS  DK  NS  U2  Us  AO  CA          
    521   1.1.1.2  mrg //	
    522   1.1.1.2  mrg //     CLS  OP  ST  U3  Ds  DO              
    523   1.1.1.2  mrg //	
    524   1.1.1.2  mrg //     DUL  CP  EN  U4  DD  GL          S1  
    525   1.1.1.2  mrg //	
    526   1.1.1.2  mrg //     EDL  MV  IF  U5  DH  CH          S2  
    527   1.1.1.2  mrg //	
    528   1.1.1.2  mrg //     FRL  FD  HK  Lc  BH  PU          OS  
    529   1.1.1.2  mrg //	
    530   1.1.1.2  mrg //
    531   1.1.1.4  mrg //				APL Function Keys		F700-F7FF
    532   1.1.1.2  mrg //
    533   1.1.1.2  mrg //	F700 ...                           ...  F7F0
    534   1.1.1.2  mrg //	....
    535   1.1.1.2  mrg //     0F0  F16 F32 F48     F192F208F224F240
    536   1.1.1.2  mrg //	.
    537   1.1.1.2  mrg //	.
    538   1.1.1.2  mrg //	.
    539   1.1.1.2  mrg //     FF15 F31 F47 F63     F207F223F239F255
    540   1.1.1.2  mrg //	....
    541   1.1.1.4  mrg //	
    542   1.1.1.2  mrg //	whilst these locations are defined. Dyalog's "aplkeys/xterm" file copes with
    543   1.1.1.4  mrg //	normal function keys from the base keyboard rather than this overlay
    544   1.1.1.2  mrg 
    545   1.1.1.2  mrg //                                                                        
    546   1.1.1.6  mrg //  CA                                                                         ZM 
    547   1.1.1.2  mrg //  QT                                                                         ZM 
    548   1.1.1.2  mrg //                                                                        
    549   1.1.1.2  mrg 
    550   1.1.1.2  mrg // 
    551   1.1.1.2  mrg //                                                                     CB    
    552   1.1.1.2  mrg //                                                                     BP    
    553   1.1.1.2  mrg // 
    554   1.1.1.2  mrg //  BT                                                                       
    555   1.1.1.2  mrg //  TB                                                                       
    556   1.1.1.2  mrg //       
    557   1.1.1.2  mrg //                                                                      TC   
    558   1.1.1.2  mrg //                                                                      ED   
    559   1.1.1.2  mrg // 
    560   1.1.1.2  mrg //                                                                            
    561   1.1.1.2  mrg //                                                                            
    562   1.1.1.2  mrg // 
    563   1.1.1.2  mrg //                                    MO                                        
    564   1.1.1.2  mrg //                                    TO                                        
    565   1.1.1.2  mrg // 
    566   1.1.1.2  mrg 
    567   1.1.1.4  mrg 
    568   1.1.1.2  mrg 	key <BKSP> { [ Uf850,	Uf855	] };	// BP CB
    569   1.1.1.6  mrg 	key <ESC>  { [ Uf800,	Uf86b	] };	// QT CA
    570   1.1.1.2  mrg 	key <FK11> { [ Uf821,	Uf821	] };	// ZM, ZM put this on both, the unshifted one sometimes gets lost
    571   1.1.1.2  mrg 	key <RTRN> { [ Uf828,	Uf829	] };	// ED, TC
    572   1.1.1.2  mrg 	key <SPCE> { [ Uf886,	Uf887	] };	// TO, MO
    573   1.1.1.2  mrg 	key <TAB>  { [ Uf802,	Uf803	] };	// TB, BT
    574   1.1.1.2  mrg 
    575   1.1.1.2  mrg //      
    576   1.1.1.2  mrg //           
    577   1.1.1.2  mrg //       BK  
    578   1.1.1.2  mrg // 
    579   1.1.1.2  mrg //  BH       RM 
    580   1.1.1.2  mrg //  PV  FD   NX 
    581   1.1.1.2  mrg // 
    582   1.1.1.2  mrg 
    583   1.1.1.2  mrg 	key <DOWN> { [ Uf81f		] };	// FD
    584   1.1.1.2  mrg 	key <LEFT> { [ Uf825,	Uf84f	] };	// PV, BH
    585   1.1.1.2  mrg 	key <RGHT> { [ Uf824,	Uf854	] };	// NX, RM
    586   1.1.1.2  mrg 	key <UP>   { [ Uf820		] };	// BK
    587   1.1.1.2  mrg 
    588   1.1.1.4  mrg 
    589   1.1.1.2  mrg // 
    590   1.1.1.2  mrg // PT LL UL 
    591   1.1.1.2  mrg // CP LS US 
    592   1.1.1.2  mrg // 
    593   1.1.1.2  mrg // CT RL DL 
    594   1.1.1.2  mrg // DK RS DS 
    595   1.1.1.2  mrg // 
    596   1.1.1.2  mrg 
    597   1.1.1.2  mrg 	key <DELE> { [ Uf81b, Uf812 ] };	// DK, CT
    598   1.1.1.2  mrg 	key <END>  { [ Uf80b, Uf80f ] };	// RS, RL
    599   1.1.1.2  mrg 	key <HOME> { [ Uf80c, Uf810 ] };	// LS, LL
    600   1.1.1.2  mrg 	key <INS>  { [ Uf81d, Uf813 ] };	// CP, PT
    601   1.1.1.2  mrg 	key <PGDN> { [ Uf80a, Uf80e ] };	// DS, DL
    602   1.1.1.2  mrg 	key <PGUP> { [ Uf809, Uf80d ] };	// US, UL
    603   1.1.1.2  mrg 
    604   1.1.1.2  mrg // 
    605   1.1.1.2  mrg //    RD TG LN 
    606   1.1.1.2  mrg // 
    607   1.1.1.2  mrg //             
    608   1.1.1.2  mrg // TL 
    609   1.1.1.2  mrg //             
    610   1.1.1.2  mrg // 
    611   1.1.1.2  mrg //             
    612   1.1.1.2  mrg //    
    613   1.1.1.2  mrg //              
    614   1.1.1.2  mrg // 
    615   1.1.1.2  mrg 
    616   1.1.1.4  mrg 
    617   1.1.1.2  mrg 	key <KPAD> { [ Uf859 ] };	// TL
    618   1.1.1.2  mrg 	key <KPDV> { [ Uf819 ] };	// RD
    619   1.1.1.2  mrg 	key <KPMU> { [ Uf81a ] };	// TG
    620   1.1.1.2  mrg 	key <KPSU> { [ Uf831 ] };	// LN
    621       1.1  mrg };
    622   1.1.1.2  mrg 
    623   1.1.1.2  mrg xkb_symbols "dyalog" {
    624   1.1.1.6  mrg 
    625   1.1.1.2  mrg 	include "apl(dyalog_base)"
    626   1.1.1.2  mrg 	include "apl(dyalog_box)"
    627   1.1.1.2  mrg 	include "apl(dyalog_codes)"
    628   1.1.1.8  mrg 
    629   1.1.1.8  mrg 	name[Group1] = "APL symbols (Dyalog APL)";
    630   1.1.1.2  mrg };
    631   1.1.1.4  mrg 
    632   1.1.1.8  mrg partial
    633   1.1.1.8  mrg xkb_symbols "level3" {
    634  1.1.1.10  mrg  // #UNREGISTERED
    635   1.1.1.8  mrg  name[Group1] = "APL on Level3";
    636   1.1.1.8  mrg 
    637   1.1.1.8  mrg  //from apl(dyalog_base) -- any way to just include it shifted to level3?
    638   1.1.1.8  mrg 
    639   1.1.1.8  mrg  key <AB01> { [ NoSymbol,	NoSymbol,	U2282,		U2286	] };	// subset of, enclose if simple
    640   1.1.1.8  mrg  key <AB02> { [ NoSymbol,	NoSymbol,	U2283			] };	// superset of
    641   1.1.1.8  mrg  key <AB03> { [ NoSymbol,	NoSymbol,	U2229			] };	// intersection
    642   1.1.1.8  mrg  key <AB04> { [ NoSymbol,	NoSymbol,	U222A			] };	// union
    643   1.1.1.8  mrg  key <AB05> { [ NoSymbol,	NoSymbol,	U22a5,		U236d	] };	// up tack, stile tide
    644   1.1.1.8  mrg  key <AB06> { [ NoSymbol,	NoSymbol,	U22a4,		U2361	] };	// down tack, down tack diaeresis
    645   1.1.1.8  mrg  key <AB07> { [ NoSymbol,	NoSymbol,	bar,		U2225	] };	// vertical line, parallel to
    646   1.1.1.8  mrg  key <AB08> { [ NoSymbol,	NoSymbol,	U235d,		U236a	] };	// up shoe jot, comma bar
    647   1.1.1.8  mrg  key <AB09> { [ NoSymbol,	NoSymbol,	U2340,		U2359	] };	// backslash bar, delta underbar
    648   1.1.1.8  mrg  key <AB10> { [ NoSymbol,	NoSymbol,	U233f,		U2360	] };	// slash bar, quad colon
    649  1.1.1.10  mrg  key <AC01> { [ NoSymbol,	NoSymbol,	U237a,		U2376	] };	// alpha, alpha underbar
    650   1.1.1.8  mrg  key <AC02> { [ NoSymbol,	NoSymbol,	U2308			] };	// left ceiling
    651   1.1.1.8  mrg  key <AC03> { [ NoSymbol,	NoSymbol,	U230a			] };	// left floor
    652   1.1.1.8  mrg  key <AC04> { [ NoSymbol,	NoSymbol,	underscore		] };	// low line
    653   1.1.1.8  mrg  key <AC05> { [ NoSymbol,	NoSymbol,	U2207,		U2362	] };	// nabla, del diaerisis
    654   1.1.1.8  mrg  key <AC06> { [ NoSymbol,	NoSymbol,	U2206			] };	// increment
    655   1.1.1.8  mrg  key <AC07> { [ NoSymbol,	NoSymbol,	U2218,		U2364	] };	// ring operator, jot diaeresis
    656   1.1.1.8  mrg  key <AC08> { [ NoSymbol,	NoSymbol,	apostrophe,	U2338	] };	// quote, key
    657   1.1.1.8  mrg  key <AC09> { [ NoSymbol,	NoSymbol,	U2395,		U2337	] };	// quad, squish quad
    658   1.1.1.8  mrg  key <AC10> { [ NoSymbol,	NoSymbol,	U234e,		U2261	] };	// up tack jot, identical to
    659   1.1.1.8  mrg  key <AC11> { [ NoSymbol,	NoSymbol,	U2355,		U2262	] };	// down tack jot,  not identical to
    660   1.1.1.8  mrg  key <AD01> { [ NoSymbol,	NoSymbol,	question,	U2370	] };	// ?, quad question
    661  1.1.1.10  mrg  key <AD02> { [ NoSymbol,	NoSymbol,	U2375,		U2379	] };	// omega, omega underbar
    662   1.1.1.8  mrg  key <AD03> { [ NoSymbol,	NoSymbol,	U220a,		U2377	] };	// small element of, epsilon underbar
    663   1.1.1.8  mrg  key <AD04> { [ NoSymbol,	NoSymbol,	U2374,		U233E	] };	// rho, circle jot
    664   1.1.1.8  mrg  key <AD05> { [ NoSymbol,	NoSymbol,	asciitilde,	U2368	] };	// tilde, tilde diaeresis
    665   1.1.1.8  mrg  key <AD06> { [ NoSymbol,	NoSymbol,	U2191			] };	// upwards arrow
    666   1.1.1.8  mrg  key <AD07> { [ NoSymbol,	NoSymbol,	U2193			] };	// downwards arrow
    667   1.1.1.8  mrg  key <AD08> { [ NoSymbol,	NoSymbol,	U2373,		U2378	] };	// iota, iota underbar
    668   1.1.1.8  mrg  key <AD09> { [ NoSymbol,	NoSymbol,	U25cb,		U2365	] };	// circle, circle diaeresis
    669   1.1.1.8  mrg  key <AD10> { [ NoSymbol,	NoSymbol,	asterisk,	U2363	] };	// asterisk, star diaeresis
    670   1.1.1.8  mrg  key <AD11> { [ NoSymbol,	NoSymbol,	U2190,		U235e	] };	// left arrow, quote quad
    671   1.1.1.8  mrg  key <AD12> { [ NoSymbol,	NoSymbol,	U2192,		U236c	] };	// right arrow, zilde
    672   1.1.1.8  mrg  key <AE01> { [ NoSymbol,	NoSymbol,	diaeresis,	U2336	] };	// i-beam
    673   1.1.1.8  mrg  key <AE02> { [ NoSymbol,	NoSymbol,	macron,		U236B	] };	// deltilde
    674   1.1.1.8  mrg  key <AE03> { [ NoSymbol,	NoSymbol,	less,		U2352	] };	// downgrade
    675   1.1.1.8  mrg  key <AE04> { [ NoSymbol,	NoSymbol,	U2264,		U234b	] };	// lesseq upgrade
    676   1.1.1.8  mrg  key <AE05> { [ NoSymbol,	NoSymbol,	equal,		U233d	] };	// circlestile
    677   1.1.1.8  mrg  key <AE06> { [ NoSymbol,	NoSymbol,	U2265,		U2349	] };	// greatereq circleslope
    678   1.1.1.8  mrg  key <AE07> { [ NoSymbol,	NoSymbol,	greater,	U2296	] };	// circlebar
    679   1.1.1.8  mrg  key <AE08> { [ NoSymbol,	NoSymbol,	U2260,		U235f	] };	// notequal, circlestar
    680   1.1.1.8  mrg  key <AE09> { [ NoSymbol,	NoSymbol,	U2228,		U2371	] };	// logical or, down caret tilde
    681   1.1.1.8  mrg  key <AE10> { [ NoSymbol,	NoSymbol,	U2227,		U2372	] };	// logical and, up caret tilde
    682   1.1.1.8  mrg  key <AE11> { [ NoSymbol,	NoSymbol,	multiply,	exclam	] };
    683   1.1.1.8  mrg  key <AE12> { [ NoSymbol,	NoSymbol,	division,	U2339	] };	// quad divide
    684   1.1.1.8  mrg  key <BKSL> { [ NoSymbol,	NoSymbol,	U22a2,		U22a3	] };	// right tack, left tack
    685   1.1.1.8  mrg  key <LSGT> { [ NoSymbol,	NoSymbol,	U22a2,		U22a3	] };	// right tack, left tack
    686   1.1.1.8  mrg  key <TLDE> { [ NoSymbol,	NoSymbol,	U22c4,		U233a	] };	// diamond, quad diamond
    687   1.1.1.8  mrg };
    688