/////////////////////////////////////////////////////////////////////////////// // // License : this is free software released under the GNU General Public License. // See http://www.gnu.org/copyleft/gpl.html for details. // Author : Simon Descarpentries // Author : Nicolas Royackkers // (to send me an email, replace _at_ by @ - this is antispam precaution) // Version : v 0.2 beta - 2004/09/12 - Nicolas Royackkers // Version : v 0.3 beta - 2005/06/10 - Simon Descarpentries // // This file defines a Dvorak-fr keyboard driver for Xorg // // Dvorak-fr layout has been created by Francis Leboutte to adapt the original // (english) Dvorak layout to french language. // See http://www.algo.be/ergo/dvorak-fr.html for details. // // This Dvorak-fr layout intends to answer specific programmer needs // staying as close as possible from standard dvorak-fr // /////////////////////////////////////////////////////////////////////////////// // // ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓ // │ * │ 1 ̨¹ │ 2 ² │ 3 ³ │ 4 ± │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ { │ } ┃ ⌫ Retour┃ // │ _ │ = ½ │ / ± │ - ¾ │ + ¼ │ \ ¾ │ ^ × │ ( │ ` │ ) ^ │ " @ │ [ │ ] ┃ arrière┃ // ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ // ┃ ┃ ? ¿ │ < │ > │ G ¥ │ ! ¡ │ H │ V │ C Ç │ M │ K │ Z │ ~ ┃Entrée ┃ // ┃Tab ↹ ┃ : … │ ' ’ │ é É │ g € │ . · │ h │ v │ c ç │ m µ │ k ¢ │ z │ ¨ ’ ┃ ⏎ ┃ // ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ // ┃ ┃ O Ò │ A À │ U Ù │ E È │ B │ F │ S ß │ T │ N │ D │ W │ $ ̄® ┃ ┃ // ┃Maj ⇬ ┃ o ò │ a à │ u ù │ e è │ b │ f │ s « │ t ™ │ n » │ d ° │ w │ # © ┃ ┃ // ┣━━━━━━━┳┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫ // ┃ ┃ & ¦ │ │ Q Œ │ Æ │ I Ì │ Y │ X │ R │ L │ P ¶ │ J ┃ ┃ // ┃Shift ⇧┃ % | │ ; │ q œ │ , æ │ i ì │ y │ x │ r ° │ l │ p § │ j ┃Shift ⇧ ┃ // ┣━━━━━━━╋━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛ // ┃ ┃ ┃ ┃ ␣ Espace fine insécable ⍽ ┃ ┃ ┃ ┃ // ┃Ctrl ┃Meta ┃Alt ┃ ␣ Espace Espace insécable ⍽ ┃AltGr ⇮┃Menu ┃Ctrl ┃ // ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛ // partial alphanumeric_keys modifier_keys xkb_symbols "dvorak_prog" { include "fr(basic)" name[Group1]= "Dvorak Français"; // 1ère rangée de touches alphanumériques (rangée sous les touches de fonctions) key { [ underscore, asterisk ] }; key { [ equal, 1, onehalf, onesuperior ] }; key { [ slash, 2, plusminus, twosuperior ] }; key { [ minus, 3, threequarters, threesuperior] }; key { [ plus, 4, onequarter, plusminus ] }; key { [ backslash, 5, threequarters ] }; key { [ dead_circumflex, 6, multiply, multiply ] }; key { [ parenleft, 7 ] }; // la touche morte "accent grave" se comporte par défaut comme le modificateur de niveau 3, // c'est-à-dire comme la touche AltGr (ou Alt droit) sur un clavier Azerty, // à la différence près qu'elle est retenue (ou "collante") le temps d'une autre frappe : // pour obtenir le symbole désiré, il suffit d'appuyer D'ABORD sur cette touche PUIS sur une autre // et non de maintenir la touche enfoncée comme avec AltGr sur un clavier Azerty key { [ISO_Level3_Latch, 8, grave ] }; key { [ parenright, 9 ] }; key { [ quotedbl, 0 ] }; key { [ bracketleft, braceleft ] }; key { [ bracketright, braceright ] }; // 2nde rangée de touches key { [ colon, question, 0x1002026, questiondown ] }; key { [ apostrophe, less, dead_acute ] }; key { [ eacute, greater, Eacute ] }; key { [ g, G, EuroSign, yen ] }; key { [ period, exclam, periodcentered, exclamdown ] }; key { [ h, H ] }; key { [ v, V ] }; key { [ c, C, ccedilla, Ccedilla ] }; key { [ m, M, mu ] }; key { [ k, K, cent ] }; key { [ z, Z ] }; key { [ dead_diaeresis, dead_tilde, dead_acute ] }; // 3ème rangée de touches 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, ssharp ] }; key { [ t, T, trademark ] }; key { [ n, N, guillemotright ] }; key { [ d, D, degree ] }; key { [ w, W ] }; key { [ numbersign, dollar, copyright, registered ] }; // 4ème rangée de touches key { [ percent, ampersand, bar, brokenbar ] }; key { [ semicolon, ampersand, bar, percent ] }; key { [ q, Q, oe, OE ] }; key { [ comma, at, ae, AE ] }; key { [ i, I, igrave, Igrave ] }; key { [ y, Y ] }; key { [ x, X ] }; key { [ r, R, degree ] }; key { [ l, L ] }; key { [ p, P, section, paragraph ] }; key { [ j, J ] }; key { [ KP_Delete, comma, KP_Delete, KP_Decimal ] }; // la touche verr maj (caps lock) se comporte comme une touche majuscule (shift) verrouillée // (activation de tous les symboles de niveau 2, dont les chiffres, et non simplement // des lettres majuscules comme il est d'usage) // include "lock(shift)" };