• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// based on a keyboard map from an 'xkb/symbols/be' file
2
3default partial alphanumeric_keys
4xkb_symbols "basic" {
5
6    include "latin"
7
8    name[Group1]="Belgian";
9
10    key <AE01>	{ [ ampersand,          1,          bar,   exclamdown ]	};
11    key <AE02>	{ [    eacute,          2,           at,    oneeighth ]	};
12    key <AE03>	{ [  quotedbl,          3,   numbersign,     sterling ]	};
13    key <AE04>	{ [apostrophe,          4,   onequarter,       dollar ]	};
14    key <AE05>	{ [ parenleft,          5,      onehalf, threeeighths ]	};
15    key <AE06>	{ [   section,          6,  asciicircum,  fiveeighths ]	};
16    key <AE07>	{ [    egrave,          7,    braceleft, seveneighths ]	};
17    key <AE08>	{ [    exclam,          8,  bracketleft,    trademark ]	};
18    key <AE09>	{ [  ccedilla,          9,    braceleft,    plusminus ]	};
19    key <AE10>	{ [    agrave,          0,   braceright,       degree ]	};
20    key <AE11>	{ [parenright,     degree,    backslash, questiondown ]	};
21    key <AE12>	{ [     minus, underscore, dead_cedilla,  dead_ogonek ]	};
22
23    key <AD01>	{ [         a,          A,           at,  Greek_OMEGA ]	};
24    key <AD02>	{ [         z,          Z,      lstroke,      Lstroke ]	};
25    key <AD03>	{ [         e,          E,     EuroSign,         cent ]	};
26    key <AD09>  { [         o,          O,           oe,           OE ] }; // o O œ Œ
27    key <AD11>	{ [dead_circumflex, dead_diaeresis,  bracketleft, dead_abovering ] };
28    key <AD12>	{ [    dollar,   asterisk, bracketright,  dead_macron ]	};
29
30    key <AC01>	{ [         q,          Q,           ae,           AE ]	};
31    key <AC10>	{ [         m,          M,   dead_acute, dead_doubleacute ] };
32    key <AC11>	{ [    ugrave,    percent,   dead_acute,   dead_caron ]	};
33    key <TLDE>	{ [twosuperior, threesuperior,  notsign,      notsign ]	};
34
35    key <BKSL>	{ [        mu,   sterling,   dead_grave,   dead_breve ]	};
36    key <AB01>	{ [         w,          W, guillemotleft,        less ]	};
37    key <AB07>	{ [     comma,   question, dead_cedilla,    masculine ]	};
38    key <AB08>	{ [ semicolon,     period, horizconnector,   multiply ]	};
39    key <AB09>	{ [     colon,      slash, periodcentered,   division ]	};
40    key <AB10>	{ [     equal,       plus,   dead_tilde, dead_abovedot]	};
41    key <LSGT>  { [      less,    greater,    backslash,    backslash ]	};
42
43    include "level3(ralt_switch)"
44};
45
46
47// Variant of the fr(oss) layout for Belgium
48// Copyright © 2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
49//
50// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
51// │ ³ ≤ │ 1 ≥ │ 2 É │ 3 ˘ │ 4 — │ 5 – │ 6 ™ │ 7 È │ 8 ¡ │ 9 Ç │ 0 À │ ° Ø │ _ ± ┃ ⌫ Retour┃
52// │ ² ¹ │ & | │ é @ │ " # │ ' ¸ │ ( ˇ │ § ^ │ è ` │ ! ~ │ ç { │ à } │ ) ø │ - ‑ ┃  arrière┃
53// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫
54// ┃       ┃ A Æ │ Z  │ E ¢ │ R Ê │ T Þ │ Y Ÿ │ U Û │ I Î │ O Œ │ P Ô │ ¨ ˚ │ * ̨  ┃Entrée ┃
55// ┃Tab ↹  ┃ a æ │ z â │ e € │ r ê │ t þ │ y ÿ │ u û │ i î │ o œ │ p ô │ ^ [ │ $ ] ┃   ⏎   ┃
56// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓      ┃
57// ┃        ┃ Q Ä │ S „ │ D Ë │ F ‚ │ G ¥ │ H Ð │ J Ü │ K Ï │ L   │ M Ö │ % Ù │ £ ̄  ┃      ┃
58// ┃Maj ⇬   ┃ q ä │ s ß │ d ë │ f ‘ │ g ’ │ h ð │ j ü │ k ï │ l / │ m ö │ ù ' │ µ ` ┃      ┃
59// ┣━━━━━━━┳┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫
60// ┃       ┃ > ≠ │ W “ │ X ” │ C ® │ V ← │ B ↑ │ N → │ ? … │ . . │ / ∕ │ + − ┃             ┃
61// ┃Shift ⇧┃ < \ │ w « │ x » │ c © │ v ⍽ │ b ↓ │ n ¬ │ , ¿ │ ; × │ : ÷ │ = ~ ┃Shift ⇧      ┃
62// ┣━━━━━━━╋━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛
63// ┃       ┃       ┃       ┃ ␣              Espace insécable ⍽ ┃       ┃       ┃       ┃
64// ┃Ctrl   ┃Meta   ┃Alt    ┃ ␣ Espace                        ␣ ┃AltGr ⇮┃Menu   ┃Ctrl   ┃
65// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛
66partial alphanumeric_keys
67xkb_symbols "oss" {
68
69    include "fr(oss)"
70    include "be(oss_frbe)"
71
72    name[Group1]="Belgian (alt.)";
73};
74
75partial alphanumeric_keys
76xkb_symbols "oss_frbe" {
77    // First row
78    key <TLDE>	{ [      twosuperior,    threesuperior,          onesuperior,         lessthanequal ] }; // ² ³ ¹ ≤
79    key <AE01>	{ [        ampersand,                1,                  bar,      greaterthanequal ] }; // & 1 | ≥
80    key <AE02>	{ [           eacute,                2,                   at,                Eacute ] }; // é 2 @ É
81    key <AE04>	{ [       apostrophe,                4,         dead_cedilla,             0x1002014 ] }; // ' 4 ¸ — (tiret cadratin)
82    key <AE05>	{ [        parenleft,                5,           dead_caron,             0x1002013 ] }; // ( 5 ˇ – (tiret demi-cadratin)
83    key <AE06>	{ [          section,                6,          asciicircum,             trademark ] }; // § 6 ^ ™
84    key <AE08>	{ [           exclam,                8,           asciitilde,            exclamdown ] }; // ! 8 ~ ¡
85    key <AE09>	{ [         ccedilla,                9,            braceleft,              Ccedilla ] }; // ç 9 { Ç
86    key <AE10>	{ [           agrave,                0,           braceright,                Agrave ] }; // à 0 } À
87    key <AE11>	{ [       parenright,           degree,               oslash,              Ooblique ] }; // ) ° ø Ø
88    key <AE12>	{ [            minus,       underscore,            0x1002011,             plusminus ] }; // - _ - (tiret insécable) ±
89
90    // Second row
91    key <AD11>	{ [  dead_circumflex,   dead_diaeresis,          bracketleft,        dead_abovering ] }; // ^ ̈  [ ˚
92    key <AD12>	{ [           dollar,         asterisk,         bracketright,           dead_ogonek ] }; // $ * ] ̨
93
94    // Third row
95    key <AC09>  { [                l,                L,          dead_stroke ] };
96    key <BKSL>	{ [              mu,          sterling,           dead_grave,           dead_macron ] }; // µ £ ` ̄
97
98    // Fourth row
99    key <LSGT>  { [             less,          greater,            backslash,              notequal ] }; // < > \ ≠
100    key <AB10>  { [            equal,             plus,           dead_tilde,             0x1002212 ] }; // = + ~ −
101};
102
103
104partial alphanumeric_keys
105xkb_symbols "oss_latin9" {
106
107    // Restricts the be(oss) layout to latin9 symbols
108
109    include "fr(oss_latin9)"
110    include "be(oss_frbe)"
111    include "keypad(oss_latin9)"
112
113    name[Group1]="Belgian (Latin-9 only, alt.)";
114
115    // First row
116    key <TLDE>	{ [      twosuperior,    threesuperior,          onesuperior,                  less ] }; // ² ³ ¹ <
117    key <AE01>	{ [        ampersand,                1,                  bar,               greater ] }; // & 1 | >
118    key <AE04>	{ [       apostrophe,                4,         dead_cedilla,                 minus ] }; // ' 4 ¸ -
119    key <AE05>	{ [        parenleft,                5,           dead_caron,                 minus ] }; // ( 5 ˇ -
120    key <AE06>	{ [          section,                6,          asciicircum,           asciicircum ] }; // § 6 ^ ^
121    key <AE12>	{ [            minus,       underscore,                minus,             plusminus ] }; // - _ - ±
122
123    // Second row
124    key <AD12>	{ [           dollar,         asterisk,         bracketright,          dead_cedilla ] }; // $ * ] ¸
125
126    // Third row
127    key <AC09>  { [                l,                L,                    l,                     L ] }; // l L l L
128    key <BKSL>	{ [              mu,          sterling,           dead_grave,       dead_circumflex ] }; // µ £ ` ^
129
130    // Fourth row
131    key <LSGT>  { [             less,          greater,            backslash,                 equal ] }; // < > \ =
132    key <AB10>  { [            equal,             plus,           dead_tilde,                 minus ] }; // = + ~ -
133};
134
135
136partial alphanumeric_keys
137xkb_symbols "oss_Sundeadkeys" {
138
139    // Modifies the basic be(oss) layout to use the Sun dead keys
140
141    include "be(oss)"
142
143    // First row
144    key <AE04>	{ [       apostrophe,                4,        dead_cedilla,             0x1002014 ] }; // ' 4 ¸ — (tiret cadratin)
145
146    // Second row
147    key <AD11>	{ [     dead_circumflex,  dead_diaeresis,          bracketleft,        dead_abovering ] }; // ^ ̈ [ ˚
148
149    //Third row
150    key <AC11>	{ [           ugrave,          percent,          dead_acute,                Ugrave ] }; // ù % ' Ù
151    key <BKSL>	{ [              mu,          sterling,          dead_grave,           dead_macron ] }; // µ £ ` ̄
152
153    // Fourth row
154    key <AB10>  { [            equal,             plus,          dead_tilde,             0x1002212 ] }; // = + ~ −
155};
156
157partial alphanumeric_keys
158xkb_symbols "oss_sundeadkeys" {
159
160    include "be(oss_Sundeadkeys)"
161
162    name[Group1]="Belgian (Sun dead keys, alt.)";
163};
164
165
166partial alphanumeric_keys
167xkb_symbols "iso-alternate" {
168    include "be(basic)"
169    name[Group1]="Belgian (ISO, alt.)";
170
171    key <AD01>	{ [         a,          A,           ae,           AE ]	};
172    key <AD02>	{ [         z,          Z, guillemotleft,        less ]	};
173    key <AC01>	{ [         q,          Q,           at,  Greek_OMEGA ]	};
174    key <AC10>	{ [         m,          M,           mu,    masculine ]	};
175    key <AB01>	{ [         w,          W,      lstroke,      Lstroke ]	};
176    key <AB07>	{ [ comma,   question, dead_cedilla, dead_doubleacute ]	};
177};
178
179partial alphanumeric_keys
180xkb_symbols "sundeadkeys" {
181
182    // Use the Sun dead keys
183
184    include "be(basic)"
185    name[Group1]="Belgian (Sun dead keys)";
186
187    key <AD11>	{ [dead_circumflex, dead_diaeresis, bracketleft, bracketleft] };
188    key <AC11>	{ [    ugrave,    percent,  dead_acute,  dead_acute ]	};
189    key <BKSL>	{ [        mu,   sterling,  dead_grave,  dead_grave ]	};
190    key <AB07>	{ [     comma,  question, dead_cedilla, dead_cedilla]	};
191    key <AB10>	{ [     equal,       plus,  dead_tilde,  dead_tilde ]	};
192};
193
194partial alphanumeric_keys
195xkb_symbols "Sundeadkeys" {
196
197    // Use the Sun dead keys
198
199    include "be(sundeadkeys)"
200
201};
202
203partial alphanumeric_keys
204xkb_symbols "nodeadkeys" {
205
206    // Eliminates dead keys from the basic Belgian layout
207
208    include "be(basic)"
209    name[Group1]="Belgian (no dead keys)";
210
211    key <AE12>	{ [     minus, underscore,      cedilla,       ogonek ]	};
212    key <AD11>	{ [asciicircum,  diaeresis,  bracketleft,  bracketleft]	};
213    key <AD12>	{ [    dollar,   asterisk, bracketright,       macron ]	};
214    key <AC10>	{ [         m,          M,        acute,  doubleacute ]	};
215    key <AC11>	{ [    ugrave,    percent,   apostrophe,   apostrophe ]	};
216    key <BKSL>	{ [        mu,   sterling,        grave,        grave ]	};
217    key <AB07>	{ [     comma,   question,      cedilla,    masculine ]	};
218    key <AB10>	{ [     equal,       plus,   asciitilde,   asciitilde ]	};
219};
220
221// Wang model 724 azerty Belgium keyboard
222partial alphanumeric_keys
223xkb_symbols "wang" {
224
225    include "be(basic)"
226    include "keypad(legacy_wang)"
227    name[Group1]="Belgian (Wang 724 AZERTY)";
228
229    // Engravings on Wang 725-3771-ae
230    key <TLDE> { [ twosuperior, threesuperior,   notsign, asciitilde ] };
231    key <LSGT> { [        less,       greater, backslash,  brokenbar ] };
232};
233
234// EXTRAS:
235
236partial alphanumeric_keys
237	xkb_symbols "sun_type6" {
238	include "sun_vndr/be(sun_type6)"
239};
240