forked from luxcem/programmer-beop
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsymbols
executable file
·93 lines (85 loc) · 8.74 KB
/
symbols
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
// -- start programmer_beop --
// Programmer Béop
// Pr-Béop
// Ergonomic layout derived from Bépo and Béop (beop.free.fr)
// ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
// │comp│ 1 –│ 2 “│ 3 ”│ 4 ≤│ 5 ≥║ 6 „│ 7 ¬│ 8 ‑│ 9 ½│ 0 ¼│ ° ′│ % ″║ ║
// │ │ & —│ « ð│ » ſ│ ' þ│ " ß║ @ ^│ + ±│ - −│ / ÷│ * ×│ = ≠│ # ‰║ <-- ║
// ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
// ║ ⇤ ║ B ¦│ É ˝│ O Œ│ P ¶│ È `║ W →│ V ⇒│ D ¤│ L ©│ J IJ│ Z Ə│ ̉ ̛ ║ | ║
// ║ ⇥ ║ b |│ é ´│ o œ│ p §│ è `║ w ^│ v ˇ│ d $│ l /│ j ij│ z ə│ ̣ ˘║ <-' ║
// ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗ ║
// ║ ║ A Æ│ U Ù│ E €│ I ˙│ ! ¡║ C Ç│ T ™│ S ᵉ│ R ʳ│ N Ñ│ F ª│ ° ,║ ║
// ║ CAPS ║ a æ│ u ù│ e (│ i )│ , ;║ c ç│ t <│ s >│ r ®│ n ñ│ f ˛│ ¨ ¸║ ║
// ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩════╣
// ║ ║ Ê⍽ │ À〃│ Y ≃│ X •│ : ·│ ? ‘║ K ~│ Q │ G μ│ H ‡│ M º║ ║
// ║ ⇧ ║ ê /│ à \│ y {│ x }│ . …│ ’ ¿║ k ~│ q [│ g ]│ h †│ m ¯║ ⇧ ║
// ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦═════╣
// ║ ║ ║ ║ Espace Esp. Ins. ║ ║ ║ ║ ║
// ║ Ctrl ║ Alt ║AltGr║ Espace _ ║AltGr║ Menu ║ Win ║Ctrl ║
// ╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩═════╝
// ┌─────┐
// │ O Œ │ O = Maj. , Œ = AltGr + Maj.
// │ o œ │ o = normal, œ = AltGr
// └─────┘
partial alphanumeric_keys modifier_keys
xkb_symbols "programmer_beop" {
include "level3(alt_switch)"
include "keypad(oss)"
name[Group1]= "French (Pr-Beop, ergonomic, Programmer Béop)";
key <TLDE> { repeat = no, type[group1] = "ONE_LEVEL" , [ Multi_key ] }; // Compose
key <AE01> { type[group1] = "FOUR_LEVEL" , [ ampersand, 1, emdash, endash ] }; // & 1 cadratin demi-cadratin
key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenleft, 2, eth, leftdoublequotemark ] }; // « 2 ð “
key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenright, 3, U017F,rightdoublequotemark ] }; // « 3 ſ ”
key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ apostrophe, 4, thorn, lessthanequal ] }; // ' 4 þ ≤
key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl , 5, ssharp, greaterthanequal] }; // " 5 ß ≥
key <AE06> { type[group1] = "FOUR_LEVEL" , [ at, 6, asciicircum, doublelowquotemark ] }; // @ 6 ^ „
key <AE07> { type[group1] = "FOUR_LEVEL" , [ plus, 7, plusminus, notsign ] }; // + 7 ± ¬
key <AE08> { type[group1] = "FOUR_LEVEL" , [ minus, 8, U2212, U2011 ] }; // - 8 − ‑ (non breaking hyphen)
key <AE09> { type[group1] = "FOUR_LEVEL" , [ slash, 9, division, onehalf ] }; // / 9 ÷ ½
key <AE10> { type[group1] = "FOUR_LEVEL" , [ asterisk, 0, multiply, onequarter ] }; // * 0 × ¼
key <AE11> { type[group1] = "FOUR_LEVEL" , [ equal, degree, notequal, minutes ] }; // = ° ≠ ′
key <AE12> { type[group1] = "FOUR_LEVEL" , [ numbersign, percent, U2030, seconds ] }; // # % ‰ ″
key <AD01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar ] }; // b B | ¦
key <AD02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ eacute, Eacute, dead_acute, dead_doubleacute ] }; // é É ´ ˝
key <AD03> { type[group1] = "FOUR_LEVEL_ALPHABETIC" , [ o, O, oe, OE ] }; // o O œ Œ
key <AD04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ p, P, section, paragraph] }; // p P § ¶
key <AD05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, dead_grave, grave ] }; // è È ` `
key <AD06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ w, W, dead_circumflex, U2192 ] }; // w W ^ →
key <AD07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ v, V, dead_caron, U21D2 ] }; // v V ˇ ⇒
key <AD08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ d, D, dollar, dead_currency ] }; // d D $ ¤
key <AD09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ l, L, dead_stroke, copyright ] }; // l L / ©
key <AD10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ j, J, U0133, U0132 ] }; // j J ij IJ
key <AD11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ z, Z, schwa, SCHWA ] }; // z Z ə Ə
key <AD12> { type[group1] = "FOUR_LEVEL" , [ ecircumflex, Ecircumflex, slash, U202F ] }; // ̣ ̉ ˘ ̛
key <AC01> { type[group1] = "FOUR_LEVEL_ALPHABETIC" , [ a, A, ae, AE ] }; // a A æ Æ
key <AC02> { type[group1] = "FOUR_LEVEL_ALPHABETIC" , [ u, U, ugrave, Ugrave ] }; // u U ù Ù
key <AC03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ e, E, braceleft, EuroSign ] }; // e E ( €
key <AC04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ i, I, braceright, dead_abovedot ] }; // i I ) ˙
key <AC05> { type[group1] = "FOUR_LEVEL" , [ comma, exclam, semicolon, exclamdown ] }; // , ! ; ¡
key <AC06> { type[group1] = "FOUR_LEVEL_ALPHABETIC" , [ c, C, ccedilla, Ccedilla ] }; // c C
key <AC07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ t, T, less, trademark ] }; // t T < ™
key <AC08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ s, S, greater, U1D49 ] }; // s S > ᵉ
key <AC09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ r, R, registered, U02B3] }; // r R ® ʳ
key <AC10> { type[group1] = "FOUR_LEVEL_ALPHABETIC" , [ n, N, ntilde, Ntilde ] }; // n N ñ Ñ
key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ f, F, dead_ogonek, ordfeminine ] }; // f F ̨ ª
key <BKSL> { type[group1] = "FOUR_LEVEL" , [ dead_belowdot, dead_hook, dead_breve, dead_horn ] }; // ¨ ° ¸
key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ISO_Level3_Shift ] }; // ê Ê / espace fine insécable
key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, backslash, U3003] }; // à À \ 〃
key <AB02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ y, Y, guillemotleft, notequal ] }; // y Y { ≠
key <AB03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ x, X, guillemotright, U2022 ] }; // x X } •
key <AB04> { type[group1] = "FOUR_LEVEL" , [ period, colon, ellipsis, periodcentered ] }; // . : … ·
key <AB05> { type[group1] = "FOUR_LEVEL" , [ rightsinglequotemark, question, questiondown, leftsinglequotemark ] }; // ’ ? ¿ ‘
key <AB06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, dead_tilde ] }; // k K ~ ~
key <AB07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ q, Q, bracketleft, Multi_key ] }; // q Q [ Compose
key <AB08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ g, G, bracketright, mu ] }; // g G ]
key <AB09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ h, H, dagger, doubledagger ] }; // h H † ‡
key <AB10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ m, M, dead_macron, masculine ] }; // m M ¯ º
key <LWIN> { type[group1] = "TWO_LEVEL" , [ Super_L ] };
key <LALT> { type[group1] = "ONE_LEVEL" , [ ISO_Level3_Shift ] };
key <SPCE> { type[group1] = "FOUR_LEVEL" , [ space, space, underscore, nobreakspace ] }; // _
key <RALT> { type[group1] = "ONE_LEVEL" , [ Alt_L ] };
key <RWIN> { type[group1] = "TWO_LEVEL" , [ Menu, Super_R ] };
key <MENU> { type[group1] = "TWO_LEVEL" , [ Super_L, Menu ] };
};
// -- end programmer_beop --