On Mar 1, 3:40 pm, Chris Jones <cjns1...@gmail.com> wrote: > At first it looks like something MS (Morgan Stanley..) dumped into the > OSS lap fifteen years ago and nobody ever used it or maintained it.. so > it takes a bit of digging to make it.. sort of work in current GNU/linux > distributions.. especially since it knows nothing about Unicode. > > Here's the X/A+ map I came up with: > > // A+ keyboard layout: /usr/share/X11/xkb/symbols/apl > // Chris Jones - 18/12/2010 > > // Enable via: > // $ setxkbmap -v 10 apl > > default > partial alphanumeric_keys modifier_keys > xkb_symbols "APL" { > > name[Group1]= "APL"; > > // Alphanumeric section > key <TLDE> { [ grave, asciitilde, 0x010000fe, 0x0100007e > ] }; > key <AE01> { [ 1, exclam, 0x010000a1, 0x010000e0 > ] }; > key <AE02> { [ 2, at, 0x010000a2, 0x010000e6 > ] }; > key <AE03> { [ 3, numbersign, 0x0100003c, 0x010000e7 > ] }; > key <AE04> { [ 4, dollar, 0x010000a4, 0x010000e8 > ] }; > key <AE05> { [ 5, percent, 0x0100003d, 0x010000f7 > ] }; > key <AE06> { [ 6, asciicircum, 0x010000a6, 0x010000f4 > ] }; > key <AE07> { [ 7, ampersand, 0x0100003e, 0x010000e1 > ] }; > key <AE08> { [ 8, asterisk, 0x010000a8, 0x010000f0 > ] }; > key <AE09> { [ 9, parenleft, 0x010000a9, 0x010000b9 > ] }; > key <AE10> { [ 0, parenright, 0x0100005e, 0x010000b0 > ] }; > key <AE11> { [ minus, underscore, 0x010000ab, 0x01000021 > ] }; > key <AE12> { [ equal, plus, 0x010000df, 0x010000ad > ] }; > > key <AD01> { [ q, Q, 0x0100003f, 0x010000bf > ] }; > key <AD02> { [ w, W, 0x010000d7, Nosymbol > ] }; > key <AD03> { [ e, E, 0x010000c5, 0x010000e5 > ] }; > key <AD04> { [ r, R, 0x010000d2, Nosymbol > ] }; > key <AD05> { [ t, T, 0x0100007e, Nosymbol > ] }; > key <AD06> { [ y, Y, 0x010000d9, 0x010000b4 > ] }; > key <AD07> { [ u, U, 0x010000d5, Nosymbol > ] }; > key <AD08> { [ i, I, 0x010000c9, 0x010000e9 > ] }; > key <AD09> { [ o, O, 0x010000cf, 0x010000ef > ] }; > key <AD10> { [ p, P, 0x0100002a, 0x010000b3 > ] }; > key <AD11> { [ bracketleft, braceleft, 0x010000fb, 0x010000dd > ] }; > key <AD12> { [ bracketright, braceright, 0x010000fd, 0x010000db > ] }; > > key <AC01> { [ a, A, 0x010000c1, Nosymbol > ] }; > key <AC02> { [ s, S, 0x010000d3, 0x010000be > ] }; > key <AC03> { [ d, D, 0x010000c4, Nosymbol > ] }; > key <AC04> { [ f, F, 0x0100005f, 0x010000bd > ] }; > key <AC05> { [ g, G, 0x010000c7, 0x010000e7 > ] }; > key <AC06> { [ h, H, 0x010000c8, 0x010000e8 > ] }; > key <AC07> { [ j, J, 0x010000ca, 0x010000ea > ] }; > key <AC08> { [ k, K, 0x01000027, Nosymbol > ] }; > key <AC09> { [ l, L, 0x010000cc, 0x010000ec > ] }; > key <AC10> { [ semicolon, colon, 0x010000db, 0x010000bc > ] }; > key <AC11> { [ apostrophe, quotedbl, 0x010000dd, 0x010000bb > ] }; > > key <AB01> { [ z, Z, 0x010000da, 0x010000fa > ] }; > key <AB02> { [ x, X, 0x010000d8, Nosymbol > ] }; > key <AB03> { [ c, C, 0x010000c3, 0x010000e3 > ] }; > key <AB04> { [ v, V, 0x010000d6, Nosymbol > ] }; > key <AB05> { [ b, B, 0x010000c2, 0x010000e2 > ] }; > key <AB06> { [ n, N, 0x010000ce, 0x010000ee > ] }; > key <AB07> { [ m, M, 0x0100007c, 0x010000cd > ] }; > key <AB08> { [ comma, less, 0x010000ac, 0x0100003c > ] }; > key <AB09> { [ period, greater, 0x010000dc, 0x010000ae > ] }; > key <AB10> { [ slash, question, 0x010000af, 0x0100003f > ] }; > > key <BKSL> { [ backslash, bar, 0x010000dc, 0x010000fc > ] }; > key <CAPS> { [ Caps_Lock ] }; > // End alphanumeric section > > include "level3(win_switch)" > include "level3(menu_switch)" > > }; > > In fine.. you fire up an xterm.. issue a ‘setxkbmap apl’ command from > the shell prompt and you're in business. > > I used it daily for about a month before I switched to APLX - aka micro > APL.. and as I had zero problems.. So, I suspect it is 100% A+ > compatible. > > Initially, I thought of writing a python wrapper that would handle > conversion from Unicode to A+'s peculiar brand of latin1 and back (among > other things) but never had the time.
hi Chris, i created a page dedicated to creating math symbol layouts for different langs. I linked to your post. I wonder if you would let me mirror your X code on my site? Or, if you place it on somewhere more permanent or dedicate page such as git, i'd link to that. Thanks. Xah -- http://mail.python.org/mailman/listinfo/python-list