// Encoding : utf-8 // Usage : xkbcomp -w0 dvorak-fr.xkb $DISPLAY // Author : Francis Leboutte, http://www.algo.be/ergo/dvorak-fr.html // thanks to Fabien Cazenave for his help // Licence : X11 (the layout itself is released under CC-NC-ND licence) // Version : 0.3 // Date : 2008-07-29 xkb_keymap { xkb_keycodes { include "xfree86+aliases(azerty)" }; xkb_types { include "complete" }; xkb_compatibility { include "complete" }; // Base layer + dead AltGr key (`): // ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━━┓ // │ * │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ + │ % ┃ ┃ // │ _ │ = │ / ± │ - ¼ │ è ½ │ \ ¾ │ ^ │ ( │ ` ` │ ) │ " │ [ │ ] ┃ ⌫ ┃ // ┢━━━━━┷━━┱──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┺━━┳━━━━━━━┫ // ┃ ┃ ? Æ │ < │ > │ G │ ! │ H │ V │ C Ç │ M │ K │ Z │ & ┃ ┃ // ┃ ↹ ┃ : æ │ ' $ │ é É │ g € │ . ° │ h │ v │ c ç │ m µ │ k │ z │ ¨ ┃ ┃ // ┣━━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ⏎ ┃ // ┃ ┃ O Ò │ A À │ U Ù │ E È │ B │ F │ S │ T │ N │ D │ W │ # ┃ ┃ // ┃ ⇬ ┃ o ò │ a à │ u ù │ e è │ b │ f │ s « │ t │ n » │ d │ w │ ~ ┃ ┃ // ┣━━━━━━┳━━┹──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┲━━┷━━━━━┻━━━━━━┫ // ┃ ┃ ç Ç │ | Œ │ Q │ @ │ I Ì │ Y │ X │ R │ L │ P │ J ┃ ┃ // ┃ ⇧ ┃ à À │ ; œ │ q { │ , } │ i ì │ y £ │ x │ r º │ l │ p § │ j ┃ ⇧ ┃ // ┣━━━━━━┻┳━━━━┷━━┳━━┷━━━━┱┴─────┴─────┴─────┴─────┴─────┴─┲━━━┷━━━┳━┷━━━━━╋━━━━━━━┳━━━━━━━┫ // ┃ ┃ ┃ ┃ ␣ ⍽ ┃ ┃ ┃ ┃ ┃ // ┃ ctrl ┃ super ┃ alt ┃ ␣ Espace Espace insécable ⍽ ┃ alt ┃ super ┃ menu ┃ ctrl ┃ // ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┻━━━━━━━┛ // Notice the specific Caps_Lock layer: // ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━━┓ // │ * │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ + │ % ┃ ┃ // │ │ │ │ │ │ │ │ │ │ │ │ │ ┃ ⌫ ┃ // ┢━━━━━┷━━┱──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┺━━┳━━━━━━━┫ // ┃ ┃ │ < │ > │ │ │ │ │ │ │ │ │ ┃ ┃ // ┃ ↹ ┃ │ │ │ │ │ │ │ │ │ │ │ ┃ ┃ // ┣━━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ⏎ ┃ // ┃ ┃ │ │ │ │ │ │ │ │ │ │ │ ┃ ┃ // ┃ ⇬ ┃ │ │ │ │ │ │ │ │ │ │ │ ┃ ┃ // ┣━━━━━━┳━━┹──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┲━━┷━━━━━┻━━━━━━┫ // ┃ ┃ / │ - │ │ │ │ │ │ │ │ │ ┃ ┃ // ┃ ⇧ ┃ │ │ │ │ │ │ │ │ │ │ ┃ ⇧ ┃ // ┣━━━━━━┻┳━━━━┷━━┳━━┷━━━━┱┴─────┴─────┴─────┴─────┴─────┴─┲━━━┷━━━┳━┷━━━━━╋━━━━━━━┳━━━━━━━┫ // ┃ ┃ ┃ ┃ ␣ ⍽ ┃ ┃ ┃ ┃ ┃ // ┃ ctrl ┃ super ┃ alt ┃ ␣ Espace Espace insécable ⍽ ┃ alt ┃ super ┃ menu ┃ ctrl ┃ // ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┻━━━━━━━┛ partial alphanumeric_keys modifier_keys xkb_symbols "dvorak" { name[Group1]="France - Dvorak"; include "pc(pc105)" // First row key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ underscore, asterisk ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ equal, 1 ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ slash, 2, plusminus ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ minus, 3, onequarter ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ egrave, 4, onehalf ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ backslash, 5, threequarters ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ dead_circumflex, 6 ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenleft, 7 ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ISO_Level3_Latch, 8, grave ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenright, 9 ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl, 0 ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ bracketleft, plus ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ bracketright, percent ] }; // Second row key { [ colon, question, ae, AE ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ apostrophe, less, dollar ] }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ eacute, greater, Eacute ] }; key { [ g, G, EuroSign ] }; key { [ period, exclam, degree ] }; key { [ h, H ] }; key { [ v, V ] }; key { [ c, C, ccedilla, Ccedilla ] }; key { [ m, M, mu ] }; key { [ k, K ] }; key { [ z, Z ] }; key { [ dead_diaeresis, ampersand ] }; // Third row key { [ o, O, ograve, Ograve ] }; key { [ a, A, agrave, Agrave ] }; key { [ u, U, ugrave, Ugrave ] }; key { [ e, E, egrave, Egrave ] }; key { [ b, B ] }; key { [ f, F ] }; key { [ s, S, guillemotleft ] }; key { [ t, T ] }; key { [ n, N, guillemotright ] }; key { [ d, D ] }; key { [ w, W ] }; key { [ asciitilde, numbersign ] }; // Fourth row key { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ agrave, ccedilla, Agrave, Ccedilla, slash ] }; key { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ semicolon, bar, oe, OE, minus ] }; key { [ q, Q, braceleft ] }; key { [ comma, at, braceright ] }; key { [ i, I, igrave, Igrave ] }; key { [ y, Y, sterling ] }; key { [ x, X ] }; key { [ r, R, masculine ] }; key { [ l, L ] }; key { [ p, P, section ] }; key { [ j, J ] }; key { [ space, space, nobreakspace, nobreakspace ] }; }; xkb_geometry { include "pc(pc105)" }; };