/////////////////////////////////////////////////////////////////////////////// // // License : this is free software released under the GNU General Public License. // See http://www.gnu.org/copyleft/gpl.html for details. // Author : Nicolas Royackkers // (to send me an email, replace _at_ by @ - this is antispam precaution) // Version : v 0.2 beta - 2004/09/12 // // Modified by Matthieu Moy 2004/12/7 : // - grave under "8" not dead anymore // - asciicircum under the "9" like azerty // // This file defines a Dvorak-fr keyboard driver for XFree86 (version 4.3 and above). // 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. // // The following documentation and comments are written in french // since this driver is especially intended for french speaking people. // /////////////////////////////////////////////////////////////////////////////// // // 1. LICENCE, AUTEUR ET VERSION // -------------------------- // Licence : ceci est un logiciel libre diffusé sous la licence GNU GPL. // Voir http://www.gnu.org/copyleft/gpl.html pour le texte complet // de cette licence. // Auteur : Nicolas Royackkers // (pour m'envoyer un mail, remplacez _at_ par @ ; ceci est une mesure antispam) // Version : v 0.2 beta - 12/09/2004 // // 2. CONTENU // ------- // Ce fichier définit un pilote XFree86 (version 4.3 et supérieure) // pour la disposition de clavier Dvorak-fr. // La disposition Dvorak-fr est une création de Francis Leboutte dont le but // est d'adapter la disposition ergonomique du clavier Dvorak original // aux particularités de la langue française. // Voir http://www.algo.be/ergo/dvorak-fr.html pour plus d'informations. // // 3. VERSIONS // -------- // v 0.2 // - correction du comportement instable de verr maj (caps lock) // - documentation, section " Configuration" : // modification de l'option de basculement entre dispositions de clavier // dans XF86Config-4 (la touche "arrêt défil" remplace la séquence // "maj + alt" pour éviter d'éventuels problèmes de compatibilité) // // v 0.1 // - version initiale de ce pilote // // 4. DISPOSITION ET UTILISATION DU CLAVIER DVORAK-FR // ----------------------------------------------- // La disposition de clavier Dvorak-fr peut être représentée comme suit : // // ======================================================================== // | * | 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 | # | | // | VERR | o ò| a à| u ù| e è| b | f | s «| t | n »| d | w | ~ | | // ======================================================================== // | | ç Ç| | ¼| Q | @ | I Ì| Y | X | R | L | P | J | | // | MAJ | à À| ; ½| q {| , }| i ì| y | x | r °| l | p §| j | MAJ | // ======================================================================== // // ____ // Légende : | 2 4| 2 = maj et touche 4 = ` puis maj et touche // | 1 3| 1 = touche 3 = ` puis touche // ¯¯¯¯ // // Le symbole de niveau 1 est celui obtenu en pressant simplement sur // la touche désirée. Pour les caractères alphabétiques, on obtient la lettre minuscule. // Ex : 'g' obtenu en pressant la touche G (une lettre est toujours imprimée // en majuscule sur une touche de clavier, même si par défaut cette touche affiche // une minuscule lorsqu'on la presse). // // Le symbole de niveau 2 est obtenu en pressant maj (shift) ET la touche désirée. // Pour les caractères alphabétiques, on obtient la lettre majuscule. // Ex : 'G' obtenu en pressant maj et G // // Le symbole de niveau 3 est obtenu en pressant la touche morte accent grave // PUIS la touche désirée. Ex : '¤' obtenu en pressant ` puis G // La touche accent grave joue le rôle de la touche Alt Gr sur un clavier Azerty, // à la différence près qu'elle doit être pressée successivement et non simultanément // avec la touche dont on veut obtenir le symbole de niveau 3. // // Le symbole de niveau 4 est obtenu en pressant la touche morte accent grave, // PUIS la touche maj ET la touche désirée. // Ex : 'Ç' obtenu en pressant ` puis maj et à // // Remarque : en fonction de l'encodage par défaut utilisé, il se peut // que votre éditeur de texte n'affiche pas correctement les symboles // de niveau 3 des touches successives -, è et / (première rangée de touches // sur le schéma). Ceux-ci sont en réalité les symboles de fraction // 1/4, 1/2 et 3/4 respectivement. // // 5. INSTALLATION // ------------ // Pour installer la disposition Dvorak-fr parmi les dispositions de clavier // disponibles sur le serveur XFree86 de votre ordinateur, trois étapes // sont nécessaires (à réaliser en tant qu'administrateur) : // // 1) Copier ce fichier (dvorak_fr) dans le répertoire /etc/X11/xkb/symbols/pc/ // // 2) Ouvrir le fichier /etc/X11/xkb/rules/xfree86.lst dans un éditeur de texte. // Rechercher la ligne suivante : // dvorak Dvorak // Insérer en dessous la ligne suivante : // dvorak_fr Dvorak (French) // Sauvegarder le fichier ainsi modifié. // // 3) Ouvrir le fichier /etc/X11/xkb/rules/xfree86.xml dans un éditeur de texte. // Rechercher la ligne suivante : // dvorak // Rechercher ensuite la première occurrence de la ligne suivante : // // Insérer sous cette ligne les lignes suivantes : // // // dvorak_fr // Dvorak (French) // // // // // // // european // Dvorak (French European) // // // // // // // kinesis // Dvorak (French Kinesis Contoured) // // // // // // // Sauvegarder le fichier ainsi modifié. // // 6. UTILISATION (immédiate) // ----------------------- // On suppose dans cette partie que votre ordinateur est équipé d'un clavier // Azerty de 105 touches. // Pour utiliser immédiatement le pilote installé, il suffit d'entrer la commande // suivante dans un terminal : // setxkbmap -rules xfree86 -model pc105 -layout dvorak_fr -variant basic // // Cette commande charge un gestionnaire de clavier pour le serveur X : // - qui suit les règles xfree86 // - pour un clavier physique de 105 touches // - selon la disposition dvorak_fr (définie dans ce fichier) // - avec la variante de disposition basic (variante par défaut) // // Pour revenir en disposition Azerty (très provisoirement bien sûr), il suffit // d'entrer la commande suivante : // setxkbmap -rules xfree86 -model pc105 -layout fr -variant basic // // Taper cette commande en disposition Dvorak-fr (sans utiliser l'historique // du terminal) alors qu'on ne la connaît pas encore constitue un premier // entraînement intéressant ;-) // // 7. CONFIGURATION (XF86Config-4) // ---------------------------- // Vous souhaitez franchir le pas et charger par défaut la disposition Dvorak-fr // au démarrage du serveur graphique de votre ordinateur ? Rien de plus simple : // // 1) En tant qu'administrateur, ouvrir le fichier /etc/X11/XF86Config-4 // dans un éditeur de texte // // 2) Rechercher l'ensemble des lignes qui commencent par : // Section "InputDevice" // Identifier "Keyboard0" // et se terminent par : // EndSection // Remplacer ces lignes par les suivantes : // Section "InputDevice" // Identifier "Keyboard0" // Driver "keyboard" // Option "CoreKeyboard" // Option "XkbRules" "xfree86" // Option "XkbModel" "pc105" // Option "XkbLayout" "dvorak_fr" // Option "XkbVariant" "basic // EndSection // Sauvegarder le fichier ainsi modifié. // // XFree86 exécutera ainsi l'équivalent de la commande // setxkbmap -rules xfree86 -model pc105 -layout dvorak_fr -variant basic // à chaque démarrage ou redémarrage du serveur X. // // En phase d'apprentissage de Dvorak-fr, on peut également vouloir disposer // de l'Azerty et basculer à tout moment entre les deux dispositions. // On peut pour cela utiliser les lignes suivantes à la place de celles // indiquées auparavant : // Section "InputDevice" // Identifier "Keyboard0" // Driver "keyboard" // Option "CoreKeyboard" // Option "XkbRules" "xfree86" // Option "XkbModel" "pc105" // Option "XkbLayout" "dvorak_fr,fr" // Option "XkbVariant" "basic,basic" // Option "XKbOptions" "grp:sclk_toggle" // EndSection // // Comme on le voit, les deux dispositions de clavier sont spécifiées. // On bascule instantanément de l'une à l'autre en pressant la touche // arrêt défil (scroll lock) (touche ou combinaison de touches // définie par l'option "XKbOptions"). // // Enfin, il faut savoir que certains environnements graphiques (comme KDE 3.x // par exemple) chargent leurs propres paramètres au-dessus de ceux de XFree86. // Cela signifie que le paramétrage que nous venons d'effectuer ne changera pas // la disposition de clavier habituellement chargée au démarrage de l'environnement. // Cependant, les dispositions de claviers restent bien gérées par XFree86 : // la disposition Dvorak-fr sera donc disponible dans l'environnement // comme n'importe quelle autre. Il suffira de reconfigurer votre environnement // (exemple : avec le centre de configuration KDE) pour profiter d'un clavier // Dvorak-fr. // // Bonne frappe ! // // Nicolas Royackkers // /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // Définition partielle du clavier Dvorak-fr de base. // On définit complètement la partie alphanumérique du clavier, // qui est particulière à chaque disposition (nationale ou autre). // Les autres touches (maj, entrée, alt, ctrl, menu, flèches, // pavé numérique, touches de fonctions, etc.) sont prédéfinies // dans de nombreux autres fichiers de XFree86. /////////////////////////////////////////////////////////////////////////////// partial alphanumeric_keys modifier_keys xkb_symbols "basic" { name[Group1]= "Dvorak_fr"; name[Group2]= "Dvorak_fr_2"; // le comportement de chaque touche est défini par un vecteur du type : //touche { [ symbole niv. 1, symbole niv. 2, symbole niv. 3, symbole niv. 4 ] }; // 1ère rangée de touches alphanumériques (rangée sous les touches de fonctions) key { [ underscore, asterisk ] }; key { [ equal, 1 ] }; key { [ slash, 2, plusminus ] }; key { [ minus, 3, onequarter ] }; key { [ egrave, 4, onehalf ] }; key { [ backslash, 5, threequarters ] }; key { [ dead_circumflex, 6 ] }; 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 { [ grave, 8, grave ] }; key { [ parenright, 9, asciicircum ] }; key { [ quotedbl, 0 ] }; key { [ bracketleft, plus ] }; key { [ bracketright, percent ] }; // 2nde rangée de touches key { [ colon, question, ae, AE ] }; key { [ apostrophe, less, dollar ] }; key { [ 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 ] }; // 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 ] }; key { [ t, T ] }; key { [ n, N, guillemotright ] }; key { [ d, D ] }; key { [ w, W ] }; key { [ asciitilde, numbersign ] }; // 4ème rangée de touches key { [ agrave, ccedilla, Agrave, Ccedilla ] }; key { [ semicolon, bar, oe, OE ] }; key { [ q, Q, braceleft ] }; key { [ comma, at, braceright ] }; key { [ i, I, igrave, Igrave ] }; key { [ y, Y ] }; key { [ x, X ] }; key { [ r, R, degree ] }; key { [ l, L ] }; key { [ p, P, section ] }; key { [ j, J ] }; // la barre d'espace produit un espace insécable aux niveaux 3 et 4 key { [ space, space, nobreakspace, nobreakspace ] }; // 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) key { [ Shift_Lock ] }; modifier_map Shift { Shift_Lock }; // Remarque : théoriquement, les deux lignes précédentes peuvent être remplacées // par la ligne unique suivante : // include "lock(shift)" // mais le fichier /etc/X11/xkb/symbols/lock n'est pas obligatoirement présent // dans toutes les distributions. }; /////////////////////////////////////////////////////////////////////////////// // Variante "langues européennes" de Dvorak-fr // non encore implantée // to do ////////////////////////////////////////////////////////////////////////////// xkb_symbols "european" { include "pc/dvorak_fr(basic)" }; /////////////////////////////////////////////////////////////////////////////// // Variante Dvorak-fr pour clavier Kinesis Contoured // non encore implantée // to do /////////////////////////////////////////////////////////////////////////////// partial alphanumeric_keys modifier_keys xkb_symbols "kinesis" { include "pc/dvorak_fr(basic)" };