[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ suivant ]

Utiliser et configurer Debian GNU/Linux pour le français
Chapitre 4 - Configurer l'entrée et la sortie en français


4.1 Principe général

Chaque caractère est représenté dans l'ordinateur par un code (de 7, 8 ou 16 bits selon le « codage » choisi). Il faut donc définir :

Par défaut, le système Debian GNU/Linux est configuré pour un clavier anglais (lors de l'installation, vous avez cependant pu en sélectionner un autre) et l'affichage des caractères suivant la carte américaine. Il faut donc reconfigurer l'entrée et la sortie (ES).

De plus, il n'existe pas de méthode de configuration de l'ES commune à la console et à X11 [1]. Il faut donc configurer chacun séparément.

     	Entrée au clavier --> Code 8 bits --> Affichage à l'écran

4.2 Configurer la console


4.2.1 Ce qu'il faut faire

Si vous avez un clavier français, il suffit :


4.2.2 Pour avoir le symbole « Euro »

Si vous utilisez une carte clavier qui ne supporte pas l'euro et si vous souhaitez conserver cette carte clavier, vous pouvez y ajouter simplement les composantes « Euro ». Installez le paquet euro-support qui effectue cette modification automatiquement :

     apt-get install euro-support

4.2.3 Comment cela fonctionne


4.2.3.1 Configuration de l'entrée

L'entrée est définie par une « carte clavier », c'est-à-dire la correspondance entre le code des touches tapées et le code des caractères mémorisés. Le noyau (kernel) linux utilise une carte par défaut (définie lors de la compilation). Mais une carte peut être chargée en mémoire à tout moment à l'aide de l'utilitaire loadkeys. Sous Debian GNU/Linux, ces « autres » cartes clavier sont définies dans les fichiers carte.kmap.gz du répertoire /usr/share/keymaps/*. Par exemple :

     loadkeys fr-pc

La carte clavier est chargée au démarrage (via loadkeys) par /etc/init.d/keymap.sh, en utilisant la carte clavier par défaut : /etc/console/boottime.kmap.gz.

Plusieurs solutions sont possibles pour charger la « bonne » carte au démarrage. Dans la plupart des cas, vous voulez simplement charger l'une des cartes proposées. Vous pouvez alors faire un lien de /etc/console/boottime.kmap.gz vers la carte choisie (déconseillé). La méthode propre sous Debian GNU/Linux consiste à passer par debconf :

     dpkg-reconfigure console-data

et à choisir la bonne carte. Debconf demande alors au programme install-keymap d'installer la carte choisie. Vous pouvez aussi appeler directement install-keymap, mais votre choix ne sera pas mémorisé par debconf...

Dans certains cas, vous pouvez vouloir utiliser une combinaison de cartes (une carte principale et des compléments, par exemple pour le support de l'euro). Il vous faut alors modifier directement le script /etc/init.d/keymap.sh pour charger plus d'une carte.


4.2.3.2 Configuration de la sortie

La police de caractères utilisée pour la sortie est configurée à l'aide de l'utilitaire consolechars. Ce programme est appelé au démarrage par /etc/init.d/console-screen.sh en utilisant le fichier de configuration /etc/console-tools/config, qui est « auto-documenté ».

Il faut donc modifier la police comme indiqué, en définissant la variable SCREEN_FONT pour utiliser la table de caractères souhaitée. Il n'est pas nécessaire, a priori, de définir une carte de caractères pour les applications (APP_CHARSET_MAP), ni de carte de police écran (SCREEN_FONT_MAP).

Vous devez ensuite relancer le démon pour utiliser les nouvelles polices souhaitées, lequel appelle consolechars.


4.2.4 Polices latin-0 sous svgatextmode

Si vous utilisez svgatextmode sous la console, vous devrez aussi lui indiquer comment charger les polices latin-0 en ajoutant les lignes suivantes à la fin du fichier /etc/TextConfig :

     FontSelect "lat0-16"   8x16 9x16 8x15 9x15
     FontSelect "lat0-14"   8x14 9x14 8x13 9x13
     FontSelect "lat0-12"   8x12 9x12 8x11 9x11
     FontSelect "lat0-10"   8x10 9x10 8x9  9x9
     FontSelect "lat0-08"   8x8  9x8  8x7  9x7

4.3 Configurer X11


4.3.1 Configuration de l'entrée


4.3.1.1 Sous XFree86 3.3.6

A priori, vous n'avez pas de raison de continuer à utiliser XFree 3 sous Debian GNU/Linux (sauf si vous possédez une carte graphique très ancienne ou très rare). Je vous conseille de passer à XFree 4.

Pour l'entrée, si vous n'utilisez pas debconf, il faut corriger le fichier /etc/X11/XF86Config, section « Keyboard », pour avoir :

     Section "Keyboard"
       Protocol "Standard"
       XkbKeymap "xfree86(fr)"
       ScrollLock Compose
     EndSection

ou bien :

     Section "Keyboard"
       XkbRules    "xfree86"
       XkbModel    "pc105"
       XkbLayout   "fr"
       XkbVariant  ""
       XkbOptions  ""
       ScrollLock Compose
     EndSection

selon ce qui figure dans votre XF86Config (cela dépend de l'outil que vous avez utilisé pour le fabriquer, mais les deux solutions sont strictement identiques : la première ne fonctionne que sous Debian GNU/Linux, la seconde est vraie aussi pour les autres systèmes).

Si vous utilisez debconf, lancez :

     dpkg-reconfigure xserver-common-v3

et choisissez la disposition du clavier fr (au lieu de us).


4.3.1.2 Sous XFree86 4

Pour l'entrée, si vous n'utilisez pas debconf, il faut corriger à la main le fichier /etc/X11/XF86Config-4 (attention au -4), section InputDevice contenant Driver "keyboard" et remplacer "us" par "fr" pour l'option XkbLayout.

Si vous utilisez debconf, lancez :

     dpkg-reconfigure xserver-xfree86

Choisissez la disposition du clavier fr (au lieu de us et pour les options, tapez compose:rwin si vous avez une touche avec le symbole de « Windows ».


4.3.2 Configuration de la sortie

Pour la sortie, il faut installer une police iso8859-15 ajouter *font:-*-*-medium-r-normal--14-*-*-*-c-*-iso8859-15 dans le fichier /etc/X11/Xresources/xfree86-common. Pour rester le plus proche possible de l'installation par défaut, je vous recommande d'utiliser le paquet xfonts-100dpi-transcoded.

Il existe d'autres paquets contenant des polices latin0 : xfonts-*-transcoded, xfonts-jmk, xfonts-terminus, ttf-bitstream-vera, etc. N'hésitez pas à adapter la définition *font: en fonction de vos préférences et de votre installation. Le programme xfontsel vous sera alors très utile.

Si certains de vos utilisateurs possèdent des fichiers ~/.xinitrc ou ~/.xsession et court-circuitent ainsi le programme /etc/X11/Xsession, alors vous devrez vous assurer qu'ils appellent bien xrdb -merge /etc/X11/Xresources/xfree86-common. Dans le cas contraire, vous pouvez soit leur suggérer de modifier leur ~/.xinitrc et leur ~/.xsession, soit ajouter la définition *font: dans leur ~/.Xresources. Je recommande pour ma part la deuxième solution, qui est mise en œuvre automatiquement par le programme set-language-env

Enfin, vous devez tenir compte du fait qu'il existe deux types de polices. Les polices vectorielles (« scalable ») peuvent être redimensionnées sans soucis. Les polices « bitmap ») peuvent, au contraire, être très laides lorsqu'elles ne sont pas utilisées à la taille initialement prévue. Mais certains caractères n'existent qu'en bitmap. En particulier, si vous utilisez Mozilla ou OpenOffice.org, vous aurez besoin de ces polices. Le paquet fontconfig gère ces différentes polices pour vous. Lancez dpkg-reconfigure fontconfig et activez les polices bitmap.


4.3.3 Comment cela fonctionne


4.3.3.1 Configuration de l'entrée

L'entrée clavier est configurée dans la section Keyboard du fichier /etc/X11/XF86Config. Sous XFree 4, le clavier est décrit, comme les autres périphériques d'entrée, dans une section InputDevice avec un pilote (driver) Keyboard.

L'option XkbRules permet de spécifier le comportement du clavier et l'option XkbLayout la carte clavier à utiliser.

L'option XkbKeymap permet de regrouper XkbRules et XkbLayout dans une même règle.


4.3.3.2 La touche « compose »

La disposition du clavier « fr » correspond à une entrée en latin-1 (ISO-8859-1). Il n'existe pas à ce jour de carte clavier latin-0 (comme pour la console) sous Debian GNU/Linux. Par conséquent, certains caractères ne peuvent pas être tapés directement : il faut utiliser des compositions de touches complémentaires. La touche « compose » (ou Multi_key) permet d'indiquer au système que les deux touches suivantes sont une composition. La liste des compositions possibles est définie dans le fichier /usr/X11R6/lib/X11/locale/iso8859-1/Compose.


4.3.3.3 Configuration de la sortie : installation des polices

La configuration de la sortie se fait, comme sous la console, en donnant une police de caractères qui :

Sous Debian GNU/Linux, les polices sont installées dans le répertoire /usr/X11R6/lib/X11/fonts/. Le programme xlsfonts permet de connaître l'ensemble des polices disponibles sous X. Ces polices sont dans différents répertoires contenant chacun les fichiers :

Le serveur X peut soit gérer lui-même les polices, soit utiliser un serveur de polices, comme xfs. La définition des polices dans le fichier de configuration du serveur X (/etc/X11/XF86Config-4) se fait à l'aide de commandes FontPath dans la section Files :

     Section "Files"
             FontPath        "unix/:7100"                    # Serveur de police
             # Si le serveur échoue, se rabattre sur les polices suivantes :
             FontPath        "/usr/lib/X11/fonts/CID"
             FontPath        "/usr/lib/X11/fonts/Speedo"
             FontPath        "/usr/lib/X11/fonts/misc"
             FontPath        "/usr/lib/X11/fonts/cyrillic"
             FontPath        "/usr/lib/X11/fonts/100dpi"
             FontPath        "/usr/lib/X11/fonts/75dpi"
             FontPath        "/usr/lib/X11/fonts/Type1"
     EndSection

La liste des polices utilisables par le serveur de polices xfs est donnée dans la définition catalogue du fichier /etc/X11/fs/config.

Si vous souhaitez utiliser des polices « True Type » (TT), le mieux est d'installer le serveur de polices adapté (xfs-xtt) et le système de gestion de polices defoma. Le serveur X peut gérer les polices (mais moins bien qu'un serveur dédié) depuis la version 4 de XFree86.


4.3.3.4 Configuration de la sortie : utilisation d'une police

La définition *font: permet de définir la police pour les applications utilisant xlib (les « widgets »). C'est le programme xrdb qui permet de définir vos ressources X11, et en particulier la police *font. Il est appelé sur les fichiers de configuration générale (/etc/X11/Xresources/*) par /etc/X11/Xsession ainsi que sur votre fichier de configuration de ressources X11 personnel : ~/.Xresources

Pour les autres applications, un réglage « manuel » est généralement nécessaire.

Je vous conseille aussi d'installer fontconfig et d'activer les polices bitmap pour éviter les mauvaises surprises sous Mozilla et OpenOffice qui utilisent ces polices.


4.3.3.5 Autres possibilités

Il existe d'autres solutions pour configurer l'entrée et la sortie sous Debian GNU/Linux :

Ces solutions, moins simples à mettre en œuvre, sont encore à l'étude et seront présentées dans une prochaine version de ce document.


4.3.4 Pour avoir le symbole « euro » sur AltGr+e

Par défaut, le symbole « euro » est accessible par AltGr + $. L'habitude veut qu'on utilise plutôt la touche AltGr + e, ce qui nécessite quelques changements.

La méthode la plus simple et sans doute la plus efficace est d'utiliser le paquet euro-support qui configurera votre système automatiquement.

Pour les fans de la bidouille, vous pouvez aussi effectuer ces modifications manuellement. Une solution simple (c'est celle que je recommande parce que xmodmap est obsolète depuis XFree86 3.2) consiste, en tant que super-utilisateur (root), à ajouter dans /usr/X11R6/lib/X11/xkb/symbols/fr, dans la section xkb_symbols "basic", avant key <AE01>, les lignes suivantes :

         key <AD03> {        [               e,               E      ],
                             [        currency,            cent      ]       };

Une autre solution consiste à utiliser xmodmap : en tant que super-utilisateur, ajoutez la ligne suivante à la fin du fichier /etc/X11/Xmodmap :

     keycode 26 = e  E currency cent

[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ suivant ]

Utiliser et configurer Debian GNU/Linux pour le français


16 janvier 2004

Nicolas Sabouret - [email protected]