Skip to content

Instantly share code, notes, and snippets.

@Conobi
Created July 3, 2016 22:12
Show Gist options
  • Select an option

  • Save Conobi/898aa6b52f554bb7e762e07b0dd1a8c1 to your computer and use it in GitHub Desktop.

Select an option

Save Conobi/898aa6b52f554bb7e762e07b0dd1a8c1 to your computer and use it in GitHub Desktop.
VOID map
// based on a keyboard map from an 'xkb/symbols/be' file
default partial alphanumeric_keys
xkb_symbols "basic" {
include "latin"
name[Group1]="Belgian";
key <AE01> { [ ampersand, 1, bar, exclamdown ] };
key <AE02> { [ eacute, 2, at, oneeighth ] };
key <AE03> { [ quotedbl, 3, numbersign, sterling ] };
key <AE04> { [apostrophe, 4, onequarter, dollar ] };
key <AE05> { [ parenleft, 5, onehalf, threeeighths ] };
key <AE06> { [ section, 6, asciicircum, fiveeighths ] };
key <AE07> { [ egrave, 7, braceleft, seveneighths ] };
key <AE08> { [ exclam, 8, bracketleft, trademark ] };
key <AE09> { [ ccedilla, 9, braceleft, plusminus ] };
key <AE10> { [ agrave, 0, braceright, degree ] };
key <AE11> { [parenright, degree, backslash, questiondown ] };
key <AE12> { [ minus, underscore, dead_cedilla, dead_ogonek ] };
key <AD01> { [ 0x00001403, A, at, Greek_OMEGA ] };
key <AD02> { [ 0x00001614, Z, lstroke, Lstroke ] };
key <AD03> { [ 0x000014C5, E, EuroSign, cent ] };
key <AD04> { [ 0x0000161B, R, paragraph, registered ] };
key <AD05> { [ 0x00001603, T, tslash, Tslash ] };
key <AD06> { [ 0x000015BB, Y, leftarrow, yen ] };
key <AD07> { [ 0x0000158D, U, downarrow, uparrow ] };
key <AD08> { [ 0x000015BA, I, rightarrow, idotless ] };
key <AD09> { [ 0x00001613, O, oe, OE ] }; // o O ล“ ล’
key <AD10> { [ 0x00001547, P, thorn, THORN ] };
key <AC01> { [ 0x00001543, Q, ae, AE ] };
key <AC02> { [ 0x00001516, S, ssharp, section ] };
key <AC03> { [ 0x0000161B, D, eth, ETH ] };
key <AC04> { [ 0x00001511, F, dstroke, ordfeminine ] };
key <AC05> { [ 0x00001526, G, eng, ENG ] };
key <AC06> { [ 0x00001563, H, hstroke, Hstroke ] };
key <AC07> { [ 0x00001606, J, dead_hook, dead_horn ] };
key <AC08> { [ 0x00001621, K, kra, ampersand ] };
key <AC09> { [ 0x00001635, L, lstroke, Lstroke ] };
key <AC10> { [ 0x0000164F, M, dead_acute, dead_doubleacute ] };
key <AB01> { [ 0x00001552, W, guillemotleft, less ] };
key <AB02> { [ 0x0000161E, X, guillemotright, greater ] };
key <AB03> { [ 0x00001445, C, cent, copyright ] };
key <AB04> { [ 0x0000155A, V, leftdoublequotemark, leftsinglequotemark ] };
key <AB05> { [ 0x0000159A, B, rightdoublequotemark, rightsinglequotemark ] };
key <AB06> { [ 0x000015E3, N, n, N ] };
key <AD11> { [dead_circumflex, dead_diaeresis, bracketleft, dead_abovering ] };
key <AD12> { [ dollar, asterisk, bracketright, dead_macron ] };
key <AC11> { [ ugrave, percent, dead_acute, dead_caron ] };
key <TLDE> { [twosuperior, threesuperior, notsign, notsign ] };
key <BKSL> { [ mu, sterling, dead_grave, dead_breve ] };
key <AB07> { [ comma, question, dead_cedilla, masculine ] };
key <AB08> { [ semicolon, period, horizconnector, multiply ] };
key <AB09> { [ colon, slash, periodcentered, division ] };
key <AB10> { [ equal, plus, dead_tilde, dead_abovedot] };
key <LSGT> { [ less, greater, backslash, backslash ] };
include "level3(ralt_switch)"
};
// Variant of the fr(oss) layout for Belgium
// Copyright ยฉ 2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
//
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฒโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
// โ”‚ ยณ โ‰ค โ”‚ 1 โ‰ฅ โ”‚ 2 ร‰ โ”‚ 3 ห˜ โ”‚ 4 โ€” โ”‚ 5 โ€“ โ”‚ 6 โ„ข โ”‚ 7 รˆ โ”‚ 8 ยก โ”‚ 9 ร‡ โ”‚ 0 ร€ โ”‚ ยฐ ร˜ โ”‚ _ ยฑ โ”ƒ โŒซ Retourโ”ƒ
// โ”‚ ยฒ ยน โ”‚ & | โ”‚ รฉ @ โ”‚ " # โ”‚ ' ยธ โ”‚ ( ห‡ โ”‚ ยง ^ โ”‚ รจ ` โ”‚ ! ~ โ”‚ รง { โ”‚ ร  } โ”‚ ) รธ โ”‚ - โ€‘ โ”ƒ arriรจreโ”ƒ
// โ”ขโ”โ”โ”โ”โ”โ”ทโ”โ”ฑโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”บโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ โ”ƒ A ร† โ”‚ Z ร‚ โ”‚ E ยข โ”‚ R รŠ โ”‚ T รž โ”‚ Y ลธ โ”‚ U ร› โ”‚ I รŽ โ”‚ O ล’ โ”‚ P ร” โ”‚ ยจ หš โ”‚ * ฬจ โ”ƒEntrรฉe โ”ƒ
// โ”ƒTab โ†น โ”ƒ a รฆ โ”‚ z รข โ”‚ e โ‚ฌ โ”‚ r รช โ”‚ t รพ โ”‚ y รฟ โ”‚ u รป โ”‚ i รฎ โ”‚ o ล“ โ”‚ p รด โ”‚ ^ [ โ”‚ $ ] โ”ƒ โŽ โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ”ปโ”ฑโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”บโ”“ โ”ƒ
// โ”ƒ โ”ƒ Q ร„ โ”‚ S โ€ž โ”‚ D ร‹ โ”‚ F โ€š โ”‚ G ยฅ โ”‚ H ร โ”‚ J รœ โ”‚ K ร โ”‚ L โ”‚ M ร– โ”‚ % ร™ โ”‚ ยฃ ฬ„ โ”ƒ โ”ƒ
// โ”ƒMaj โ‡ฌ โ”ƒ q รค โ”‚ s รŸ โ”‚ d รซ โ”‚ f โ€˜ โ”‚ g โ€™ โ”‚ h รฐ โ”‚ j รผ โ”‚ k รฏ โ”‚ l / โ”‚ m รถ โ”‚ รน ' โ”‚ ยต ` โ”ƒ โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ”ณโ”นโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฒโ”ทโ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ โ”ƒ > โ‰  โ”‚ W โ€œ โ”‚ X โ€ โ”‚ C ยฎ โ”‚ V โ† โ”‚ B โ†‘ โ”‚ N โ†’ โ”‚ ? โ€ฆ โ”‚ . . โ”‚ / โˆ• โ”‚ + โˆ’ โ”ƒ โ”ƒ
// โ”ƒShift โ‡งโ”ƒ < \ โ”‚ w ยซ โ”‚ x ยป โ”‚ c ยฉ โ”‚ v โฝ โ”‚ b โ†“ โ”‚ n ยฌ โ”‚ , ยฟ โ”‚ ; ร— โ”‚ : รท โ”‚ = ~ โ”ƒShift โ‡ง โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ•‹โ”โ”โ”โ”โ”โ”ทโ”โ”ณโ”โ”โ”โ”ทโ”โ”โ”โ”ฑโ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”ฒโ”โ”ทโ”โ”โ”โ”โ”โ•ˆโ”โ”โ”โ”โ”โ”ปโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”›
// โ”ƒ โ”ƒ โ”ƒ โ”ƒ โฃ Espace insรฉcable โฝ โ”ƒ โ”ƒ โ”ƒ โ”ƒ
// โ”ƒCtrl โ”ƒMeta โ”ƒAlt โ”ƒ โฃ Espace โฃ โ”ƒAltGr โ‡ฎโ”ƒMenu โ”ƒCtrl โ”ƒ
// โ”—โ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”นโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”บโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”›
partial alphanumeric_keys
xkb_symbols "oss" {
include "fr(oss)"
include "be(oss_frbe)"
name[Group1]="Belgian (alternative)";
};
partial alphanumeric_keys
xkb_symbols "oss_frbe" {
// First row
key <TLDE> { [ twosuperior, threesuperior, onesuperior, lessthanequal ] }; // ยฒ ยณ ยน โ‰ค
key <AE01> { [ ampersand, 1, bar, greaterthanequal ] }; // & 1 | โ‰ฅ
key <AE02> { [ eacute, 2, at, Eacute ] }; // รฉ 2 @ ร‰
key <AE04> { [ apostrophe, 4, dead_cedilla, 0x1002014 ] }; // ' 4 ยธ โ€” (tiret cadratin)
key <AE05> { [ parenleft, 5, dead_caron, 0x1002013 ] }; // ( 5 ห‡ โ€“ (tiret demi-cadratin)
key <AE06> { [ section, 6, asciicircum, trademark ] }; // ยง 6 ^ โ„ข
key <AE08> { [ exclam, 8, asciitilde, exclamdown ] }; // ! 8 ~ ยก
key <AE09> { [ ccedilla, 9, braceleft, Ccedilla ] }; // รง 9 { ร‡
key <AE10> { [ agrave, 0, braceright, Agrave ] }; // ร  0 } ร€
key <AE11> { [ parenright, degree, oslash, Ooblique ] }; // ) ยฐ รธ ร˜
key <AE12> { [ minus, underscore, 0x1002011, plusminus ] }; // - _ - (tiret insรฉcable) ยฑ
// Second row
key <AD11> { [ dead_circumflex, dead_diaeresis, bracketleft, dead_abovering ] }; // ^ ฬˆ [ หš
key <AD12> { [ dollar, asterisk, bracketright, dead_ogonek ] }; // $ * ] ฬจ
// Third row
key <AC09> { [ l, L, dead_stroke ] };
key <BKSL> { [ mu, sterling, dead_grave, dead_macron ] }; // ยต ยฃ ` ฬ„
// Fourth row
key <LSGT> { [ less, greater, backslash, notequal ] }; // < > \ โ‰ 
key <AB10> { [ equal, plus, dead_tilde, 0x1002212 ] }; // = + ~ โˆ’
};
partial alphanumeric_keys
xkb_symbols "oss_latin9" {
// Restricts the be(oss) layout to latin9 symbols
include "fr(oss_latin9)"
include "be(oss_frbe)"
include "keypad(oss_latin9)"
name[Group1]="Belgian (alternative, Latin-9 only)";
// First row
key <TLDE> { [ twosuperior, threesuperior, onesuperior, less ] }; // ยฒ ยณ ยน <
key <AE01> { [ ampersand, 1, bar, greater ] }; // & 1 | >
key <AE04> { [ apostrophe, 4, dead_cedilla, minus ] }; // ' 4 ยธ -
key <AE05> { [ parenleft, 5, dead_caron, minus ] }; // ( 5 ห‡ -
key <AE06> { [ section, 6, asciicircum, asciicircum ] }; // ยง 6 ^ ^
key <AE12> { [ minus, underscore, minus, plusminus ] }; // - _ - ยฑ
// Second row
key <AD12> { [ dollar, asterisk, bracketright, dead_cedilla ] }; // $ * ] ยธ
// Third row
key <AC09> { [ l, L, l, L ] }; // l L l L
key <BKSL> { [ mu, sterling, dead_grave, dead_circumflex ] }; // ยต ยฃ ` ^
// Fourth row
key <LSGT> { [ less, greater, backslash, equal ] }; // < > \ =
key <AB10> { [ equal, plus, dead_tilde, minus ] }; // = + ~ -
};
partial alphanumeric_keys
xkb_symbols "oss_Sundeadkeys" {
// Modifies the basic be(oss) layout to use the Sun dead keys
include "be(oss)"
// First row
key <AE04> { [ apostrophe, 4, dead_cedilla, 0x1002014 ] }; // ' 4 ยธ โ€” (tiret cadratin)
// Second row
key <AD11> { [ dead_circumflex, dead_diaeresis, bracketleft, dead_abovering ] }; // ^ ฬˆ [ หš
//Third row
key <AC11> { [ ugrave, percent, dead_acute, Ugrave ] }; // รน % ' ร™
key <BKSL> { [ mu, sterling, dead_grave, dead_macron ] }; // ยต ยฃ ` ฬ„
// Fourth row
key <AB10> { [ equal, plus, dead_tilde, 0x1002212 ] }; // = + ~ โˆ’
};
partial alphanumeric_keys
xkb_symbols "oss_sundeadkeys" {
include "be(oss_Sundeadkeys)"
name[Group1]="Belgian (alternative, Sun dead keys)";
};
partial alphanumeric_keys
xkb_symbols "iso-alternate" {
include "be(basic)"
name[Group1]="Belgian (ISO alternate)";
key <AD01> { [ a, A, ae, AE ] };
key <AD02> { [ z, Z, guillemotleft, less ] };
key <AC01> { [ q, Q, at, Greek_OMEGA ] };
key <AC10> { [ m, M, mu, masculine ] };
key <AB01> { [ w, W, lstroke, Lstroke ] };
key <AB07> { [ comma, question, dead_cedilla, dead_doubleacute ] };
};
partial alphanumeric_keys
xkb_symbols "sundeadkeys" {
// Use the Sun dead keys
include "be(basic)"
name[Group1]="Belgian (Sun dead keys)";
key <AD11> { [dead_circumflex, dead_diaeresis, bracketleft, bracketleft] };
key <AC11> { [ ugrave, percent, dead_acute, dead_acute ] };
key <BKSL> { [ mu, sterling, dead_grave, dead_grave ] };
key <AB07> { [ comma, question, dead_cedilla, dead_cedilla] };
key <AB10> { [ equal, plus, dead_tilde, dead_tilde ] };
};
partial alphanumeric_keys
xkb_symbols "Sundeadkeys" {
// Use the Sun dead keys
include "be(sundeadkeys)"
};
partial alphanumeric_keys
xkb_symbols "nodeadkeys" {
// Eliminates dead keys from the basic Belgian layout
include "be(basic)"
name[Group1]="Belgian (eliminate dead keys)";
key <AE12> { [ minus, underscore, cedilla, ogonek ] };
key <AD11> { [asciicircum, diaeresis, bracketleft, bracketleft] };
key <AD12> { [ dollar, asterisk, bracketright, macron ] };
key <AC10> { [ m, M, acute, doubleacute ] };
key <AC11> { [ ugrave, percent, apostrophe, apostrophe ] };
key <BKSL> { [ mu, sterling, grave, grave ] };
key <AB07> { [ comma, question, cedilla, masculine ] };
key <AB10> { [ equal, plus, asciitilde, asciitilde ] };
};
// Wang model 724 azerty Belgium keyboard
partial alphanumeric_keys
xkb_symbols "wang" {
include "be(basic)"
include "keypad(legacy_wang)"
name[Group1]="Belgian (Wang model 724 azerty)";
// Engravings on Wang 725-3771-ae
key <TLDE> { [ twosuperior, threesuperior, notsign, asciitilde ] };
key <LSGT> { [ less, greater, backslash, brokenbar ] };
};
// EXTRAS:
partial alphanumeric_keys
xkb_symbols "sun_type6" {
include "sun_vndr/be(sun_type6)"
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment