~ubuntu-branches/ubuntu/raring/xkeyboard-config/raring

« back to all changes in this revision

Viewing changes to symbols/apl

  • Committer: Bazaar Package Importer
  • Author(s): Cyril Brulebois
  • Date: 2011-04-06 02:41:25 UTC
  • mto: (12.3.3 sid)
  • mto: This revision was merged to the branch mainline in revision 74.
  • Revision ID: james.westby@ubuntu.com-20110406024125-viz2oxc3mwv20d44
Tags: upstream-2.2.1
Import upstream version 2.2.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// EXTRAS:
 
2
//
 
3
// APL Keyboard Layouts
 
4
 
 
5
// This file supports:
 
6
// -    The Sharp APL for Unix (SAX) layout
 
7
// -    The IBM APL2 layout
 
8
// -    The Manugistics APL*PLUS II (Version 5.1, 1993) keyboard layout
 
9
 
 
10
// Unicode APL table: http://aplwiki.com/UnicodeAplTable
 
11
// ...and another: http://publibfp.boulder.ibm.com/epubs/pdf/h2110611.pdf (appendix A)
 
12
// Generic Unicode stuff: http://www.fileformat.info/info/unicode/category/index.htm
 
13
 
 
14
// Tim Nelson (this file's creator) says:
 
15
 
 
16
// This file doesn't deal with all the combining stuff -- I'm not an APL programmer,
 
17
// and am not quite sure what's needed here.  However, it may be possible to get this
 
18
// working with dead keys and the like.  Patches gratefully accepted.  
 
19
 
 
20
// Some of the shift-key assignments may differ from the APL tradition.  If
 
21
// that's not considered acceptable, it should be possible to remap the 
 
22
// shift keys.  I have striven, however, to ensure that the use of shift keys
 
23
// in these maps is at least self-consistent.  
 
24
 
 
25
// I'm assuming that this will be used with another keyboard layout (ie. for 
 
26
// your language), with a special shift key to use these maps.  
 
27
 
 
28
partial alphanumeric_keys modifier_keys 
 
29
xkb_symbols "common" {
 
30
        name[Group1]= "APL";
 
31
 
 
32
        key <AE01> { [  diaeresis       ] };
 
33
        key <AE02> { [  U00AF   ] }; // ¯ -- Macron
 
34
        key <AE03> { [  less    ] };
 
35
        key <AE04> { [  U2264   ] }; // ≤ -- Less-than Or Equal To
 
36
        key <AE05> { [  equal   ] };
 
37
        key <AE06> { [  U2265   ] }; // ≥ -- Greater-than Or Equal To
 
38
        key <AE07> { [  greater ] };
 
39
        key <AE08> { [  U2260   ] }; // ≠ -- Not Equal To
 
40
        key <AE09> { [  U2228   ] }; // ∨ -- Logical Or
 
41
        key <AE10> { [  U2227   ] }; // ∧ -- Logical And
 
42
 
 
43
        // Q
 
44
        key <AD01> { [  question        ] };
 
45
        // W
 
46
        key <AD02> { [  U2375           ] }; // ⍵ -- APL Functional Symbol Omega
 
47
        // E
 
48
        key <AD03> { [  U220A           ] }; // ∊ -- Small Element Of
 
49
        // R
 
50
        key <AD04> { [  U2374           ] }; // ⍴ -- APL Functional Symbol Rho
 
51
        // T
 
52
        key <AD05> { [  asciitilde              ] };
 
53
        // Y
 
54
        key <AD06> { [  U2191           ] }; // ↑ -- Upwards Arrow
 
55
        // U
 
56
        key <AD07> { [  U2193           ] }; // ↓ -- Downwards Arrow
 
57
        // I
 
58
        key <AD08> { [  U2373   ] }; // ⍳ -- APL Functional Symbol Iota
 
59
        // O
 
60
        key <AD09> { [  U25CB   ] }; // ○ -- White Circle
 
61
        // P
 
62
        key <AD10> { [  U22C6   ] }; // ⋆ -- Should this be a plain asterisk, or the star operator???
 
63
        // [
 
64
        key <AD11> { [  U2190   ] }; // ← -- Leftwards Arrow
 
65
 
 
66
        // A
 
67
        key <AC01> { [  U237A   ] }; // ⍺ -- APL Functional Symbol Alpha
 
68
        // S
 
69
        key <AC02> { [  U2308   ] }; // ⌈ -- Left Ceiling
 
70
        // D
 
71
        key <AC03> { [  U230A   ] }; // ⌊ -- Left Floor
 
72
        // F
 
73
        key <AC04> { [  underscore      ] };
 
74
        // G
 
75
        key <AC05> { [  U2207   ] }; // ∇ -- Nabla
 
76
        // H
 
77
        key <AC06> { [  U2206   ] }; // ∆ -- Increment
 
78
        // J
 
79
        key <AC07> { [  U2218   ] }; // ∘ -- Ring Operator
 
80
        // K
 
81
        key <AC08> { [  apostrophe ] };
 
82
        // L
 
83
        key <AC09> { [  U2395   ] }; // ⎕ -- APL Functional Symbol Quad
 
84
 
 
85
        // Z
 
86
        key <AB01> { [  U2282   ] }; // ⊂ -- Subset Of
 
87
        // X
 
88
        key <AB02> { [  U2283   ] }; // ⊃ -- Superset Of
 
89
        // C
 
90
        key <AB03> { [  U2229   ] }; // ∩ -- Intersection
 
91
        // V
 
92
        key <AB04> { [  U222A   ] }; // ∪ -- Union
 
93
        // B
 
94
        key <AB05> { [  U22A5   ] }; // ⊥ -- Up Tack
 
95
        // N
 
96
        key <AB06> { [  U22A4   ] }; // ⊤ -- Down Tack
 
97
        // M
 
98
        key <AB07> { [  U007C   ] }; // | -- Vertical Line
 
99
};
 
100
 
 
101
// Keys common to a number of keyboards that allow normal language usage alongside APL
 
102
partial alphanumeric_keys modifier_keys 
 
103
xkb_symbols "unified" {
 
104
        name[Group1]= "APL Keyboard Symbols: Unified Layout";
 
105
 
 
106
        include "apl(common)"
 
107
 
 
108
        // `
 
109
        key <TLDE> { [  U22C4   ] }; // ⋄ -- Diamond Operator
 
110
        key <AE09> { [  NoSymbol,       U2371   ] }; // ⍱ -- APL Functional Symbol Down Caret Tilde
 
111
        key <AE10> { [  NoSymbol,       U2372   ] }; // ⍲ -- APL Functional Symbol Up Caret Tilde
 
112
        // -
 
113
        key <AE11> { [  U00D7   ] }; // × -- Multiplication Sign
 
114
        // =
 
115
        key <AE12> { [  U00F7,  U2339   ] }; // ÷ ⌹ -- Division Sign / APL Functional Symbol Quad Divide
 
116
 
 
117
        // ]
 
118
        key <AD12> { [  U2192           ] }; // → -- Rightwards Arrow
 
119
};
 
120
 
 
121
// Layout: http://www.wickensonline.co.uk/apl-unicomp.html
 
122
default
 
123
partial alphanumeric_keys modifier_keys 
 
124
xkb_symbols "sax" {
 
125
        name[Group1]= "APL Keyboard Symbols: Sharp APL for Unix";
 
126
 
 
127
        include "apl(unified)"
 
128
 
 
129
        key <AE01> { [  NoSymbol,       U00A1   ] }; // ¡ -- Inverted Exclamation Mark
 
130
        key <AE04> { [  NoSymbol,       cent    ] };
 
131
        key <AE08> { [  NoSymbol,       U2342   ] }; // ⍂ -- APL Functional Symbol Quad Backslash
 
132
        // -
 
133
        key <AE11> { [  NoSymbol,       U2261   ] }; // ≡ -- Identical To
 
134
 
 
135
        // Q
 
136
        key <AD01> { [  NoSymbol,       U00BF   ] }; // ¿ -- Inverted Question Mark
 
137
        // W
 
138
        key <AD02> { [  NoSymbol,       U233D   ] }; // ⌽ -- APL Functional Symbol Circle Stile
 
139
        // E
 
140
        key <AD03> { [  NoSymbol,       U2377   ] }; // ⍷ -- APL Functional Symbol Epsilon Underbar
 
141
        // T
 
142
        key <AD05> { [  NoSymbol,       U2349   ] }; // ⍉ -- APL Functional Symbol Circle Backslash
 
143
        // I
 
144
        key <AD08> { [  NoSymbol,       U2378   ] }; // ⍸ -- APL Functional Symbol Iota Underbar
 
145
        // O
 
146
        key <AD09> { [  NoSymbol,       U2365   ] }; // ⍥ -- APL Functional Symbol Circle Diaeresis
 
147
        // P
 
148
        key <AD10> { [  NoSymbol,       U235F   ] }; // ⍟ -- APL Functional Symbol Circle Star
 
149
 
 
150
        // A
 
151
        key <AC01> { [  NoSymbol,       U2296   ] }; // ⊖ -- Circled Minus
 
152
        // F
 
153
        key <AC04> { [  NoSymbol,       U236B   ] }; // ⍫ -- APL Functional Symbol Del Tilde
 
154
        // G
 
155
        key <AC05> { [  NoSymbol,       U2352   ] }; // ∇ ⍒ -- APL Functional Symbol Del Stile
 
156
        // H
 
157
        key <AC06> { [  NoSymbol,       U234B   ] }; // ∆ ⍋ -- APL Functional Symbol Delta Stile
 
158
        // J
 
159
        key <AC07> { [  NoSymbol,       U2364   ] }; // ⍤ -- APL Functional Symbol Jot Diaeresis
 
160
        // K
 
161
        key <AC08> { [  NoSymbol,       U233B   ] }; // ⌻
 
162
        // L
 
163
        key <AC09> { [  NoSymbol,       U235E   ] }; // ⍞ -- APL Functional Symbol Quote Quad
 
164
        // ;
 
165
        key <AC10> { [  U22A2   ] }; // ⊢ -- Right Tack
 
166
        // '
 
167
        key <AC11> { [  U22A3   ] }; // ⊣ -- Left Tack
 
168
 
 
169
        // C
 
170
        key <AB03> { [  NoSymbol,       U235D   ] }; // ⍝ -- APL Functional Symbol Up Shoe Jot
 
171
        // B
 
172
        key <AB05> { [  NoSymbol,       U234E   ] }; // ⍎ -- APL Functional Symbol Down Tack Jot (Unicode got the name wrong; it should have been "Up Tack")
 
173
        // N
 
174
        key <AB06> { [  NoSymbol,       U2355   ] }; // ⍕ -- APL Functional Symbol Up Tack Jot (Unicode got the name wrong; it should have been "Down Tack")
 
175
        // M
 
176
        key <AB07> { [  NoSymbol,       U2336   ] }; // ⌶ -- APL Functional Symbol I-Beam
 
177
        // ,
 
178
        key <AB08> { [  U235E,  U236A   ] }; // ⍞ ⍪ -- APL Functional Symbol Quote Quad / APL Functional Symbol Comma Bar
 
179
        // .
 
180
        key <AB09> { [  U234E,  U2359   ] }; // ⍎ ⍙ -- [See B key] / APL Functional Symbol Delta Underbar
 
181
        // /
 
182
        key <AB10> { [  U2355,  U233F   ] }; // ⍕ ⌿ -- [See N key] / APL Functional Symbol Slash Bar
 
183
 
 
184
        key <BKSL> { [  U235D,  U2340   ] }; // ⍝ ⍀ -- APL Functional Symbol Up Shoe Jot / APL Functional Symbol Backslash Bar
 
185
};
 
186
 
 
187
// Layout: http://www.wickensonline.co.uk/apl-unicomp.html
 
188
partial alphanumeric_keys modifier_keys 
 
189
xkb_symbols "apl2" {
 
190
        name[Group1]= "APL Keyboard Symbols: IBM APL2";
 
191
 
 
192
        include "apl(common)"
 
193
 
 
194
        // The first column is NoSymbol because it inherits.  The second is NoSymbol because those keys don't do anything
 
195
 
 
196
        // `
 
197
        key <TLDE> { [  NoSymbol,       U233B,  U2342   ] }; // ⌻ ⍂ -- 
 
198
        key <AE01> { [  NoSymbol, NoSymbol, U2336       ] }; // ⌶ -- APL Functional Symbol I-Beam
 
199
        key <AE02> { [  NoSymbol, NoSymbol,     U236B   ] }; // ⍫ -- APL Functional Symbol Del Tilde
 
200
        key <AE03> { [  NoSymbol, NoSymbol,     U2353   ] }; // ⍒ -- APL Functional Symbol Del Stile
 
201
        key <AE04> { [  NoSymbol, NoSymbol,     U234B   ] }; // ⍋ -- APL Functional Symbol Delta Stile
 
202
        key <AE05> { [  NoSymbol, NoSymbol,     U233D   ] }; // ⌽ -- APL Functional Symbol Circle Stile
 
203
        key <AE06> { [  NoSymbol, NoSymbol,     U2349   ] }; // ⍉ -- APL Functional Symbol Circle Backslash
 
204
        key <AE07> { [  NoSymbol, NoSymbol,     U2296   ] }; // ⊖ -- Circled Minus
 
205
        key <AE08> { [  NoSymbol, NoSymbol,     U235F   ] }; // ⍟ -- APL Functional Symbol Circle Star
 
206
        key <AE09> { [  NoSymbol, NoSymbol,     U2371   ] }; // ⍱ -- APL Functional Symbol Down Caret Tilde
 
207
        key <AE10> { [  NoSymbol, NoSymbol,     U2372   ] }; // ⍲ -- APL Functional Symbol Up Caret Tilde
 
208
        // -
 
209
        key <AE11> { [  plus,   minus,  exclam  ] };
 
210
        // =
 
211
        key <AE12> { [  U00D7,  U00F7,  U2339   ] }; // × ÷ ⌹ -- Multiplication Sign / Division Sign / APL Functional Symbol Quad Divide
 
212
 
 
213
        // [
 
214
        key <AD11> { [  NoSymbol,       U2192,  U235E   ] }; // (←) → ⍞ -- Rightwards Arrow / APL Functional Symbol Quote Quad
 
215
        // ]
 
216
        key <AD12> { [  U2337,  U2378,  U2359   ] }; // ⌷ ⍸ ⍙ -- APL Functional Symbol Squish Quad / APL Functional Symbol Iota Underbar / APL Functional Symbol Delta Underbar
 
217
 
 
218
        // ;
 
219
        key <AC10> { [  bracketleft, parenleft, U234E   ] }; // ⍎ -- [See B key in SAX layout]
 
220
        // '
 
221
        key <AC11> { [  bracketright, parenright, U2355 ] }; // ⍕ -- [See N key in SAX layout] 
 
222
 
 
223
        // ,
 
224
        key <AB08> { [  comma,  semicolon, U235D ] }; // ⍝ -- APL Functional Symbol Up Shoe Jot
 
225
        // .
 
226
        key <AB09> { [  period, colon,  U2340   ] }; // ⍀ -- APL Functional Symbol Backslash Bar
 
227
        // /
 
228
        key <AB10> { [  slash,  backslash, U233F ] }; // ⌿ -- APL Functional Symbol Slash Bar
 
229
 
 
230
        key <BKSL> { [  U2261,  U2377, U2364    ] }; // ≡ ⍷ ⍤ -- Identical To / APL Functional Symbol Epsilon Underbar / APL Functional Symbol Jot Diaeresis
 
231
};
 
232
 
 
233
partial alphanumeric_keys modifier_keys 
 
234
xkb_symbols "aplplusII" {
 
235
        name[Group1]= "APL Keyboard Symbols: Manugistics APL*PLUS II";
 
236
 
 
237
        include "apl(apl2)"
 
238
 
 
239
        // `
 
240
        key <TLDE> { [  dollar, U22C4,  U236A   ] }; // ⋄ ⍪ -- Diamond Operator / APL Functional Symbol Comma Bar
 
241
        key <AE01> { [  NoSymbol, NoSymbol, U2261       ] }; // ≡ -- Identical To
 
242
 
 
243
        // [
 
244
        key <AD11> { [  U2190,  NoSymbol,       U235E   ] }; // ← ⍞ -- Leftwards Arrow / APL Functional Symbol Quote Quad
 
245
        // ]
 
246
        key <AD12> { [  U2192,  NoSymbol,       U236C   ] }; // → ⍬ -- Rightwards Arrow / APL Functional Symbol Zilde
 
247
 
 
248
        // ;
 
249
        key <AC10> { [  bracketleft, parenleft, U234E   ] }; // ⍎ -- [See B key in SAX layout]
 
250
        // '
 
251
        key <AC11> { [  bracketright, parenright, U2355 ] }; // ⍕ -- [See N key in SAX layout] 
 
252
 
 
253
        key <BKSL> { [  U22A3,  U22A2,  U2359   ] }; // ⊣ ⊢ ⍙ -- Left Tack / Right Tack / APL Functional Symbol Delta Underbar
 
254
};
 
255
 
 
256
 
 
257
// MicroAPL layout: http://aplwiki.com/APLXKeyboardLayouts
 
258
// I didn't do the old-style MicroAPL layout; patches gratefully accepted
 
259
partial alphanumeric_keys modifier_keys 
 
260
xkb_symbols "aplx" {
 
261
        name[Group1]= "APL Keyboard Symbols: APLX Unified APL Layout";
 
262
 
 
263
        include "apl(unified)"
 
264
 
 
265
        // `
 
266
        key <TLDE> { [  NoSymbol,       U235E   ] }; // ⍞ -- APL Functional Symbol Quote Quad
 
267
        key <AE01> { [  NoSymbol,       U2336   ] }; // ⌶ -- APL Functional Symbol I-Beam
 
268
        key <AE02> { [  NoSymbol,       U236B   ] }; // ⍫ -- APL Functional Symbol Del Tilde
 
269
        key <AE03> { [  NoSymbol,       U2353   ] }; // ⍒ -- APL Functional Symbol Del Stile
 
270
        key <AE04> { [  NoSymbol,       U234B   ] }; // ⍋ -- APL Functional Symbol Delta Stile
 
271
        key <AE05> { [  NoSymbol,       U233D   ] }; // ⌽ -- APL Functional Symbol Circle Stile
 
272
        key <AE06> { [  NoSymbol,       U2349   ] }; // ⍉ -- APL Functional Symbol Circle Backslash
 
273
        key <AE07> { [  NoSymbol,       U2296   ] }; // ⊖ -- Circled Minus
 
274
        key <AE08> { [  NoSymbol,       U235F   ] }; // ⍟ -- APL Functional Symbol Circle Star
 
275
        // -
 
276
        key <AE11> { [  NoSymbol,       exclam ] };
 
277
 
 
278
        // [
 
279
        key <AD11> { [  NoSymbol,       U2347   ] }; // ⍇ -- Box With Left Arrow
 
280
        // ]
 
281
        key <AD12> { [  NoSymbol,       U2348   ] }; // ⍈ -- Box With Right Arrow
 
282
 
 
283
        // ;
 
284
        key <AC10> { [  U234E,  U2261   ] }; // ⍎ ≡ -- [See B key in SAX layout] / Identical To
 
285
        // '
 
286
        key <AC11> { [  U2355,  U2262   ] }; // ⍕ ≢ -- [See N key in SAX layout] / Not Identical To
 
287
 
 
288
        // ,
 
289
        key <AB08> { [  U235D,  U236A   ] }; // ⍝ ⍪ -- APL Functional Symbol Up Shoe Jot / APL Functional Symbol Comma Bar
 
290
        // .
 
291
        key <AB09> { [  U2340,  U2364   ] }; // ⍀ ⍤ -- APL Functional Symbol Backslash Bar / APL Functional Symbol Jot Diaeresis
 
292
        // /
 
293
        key <AB10> { [  U233F ] }; // ⌿ -- APL Functional Symbol Slash Bar
 
294
 
 
295
        key <BKSL> { [  U22A3,  U22A3   ] }; // ⊣ ⊢ -- Left Tack / Right Tack
 
296
};