Francophones HOWTO

Embed Size (px)

DESCRIPTION

Francophones HOWTO

Citation preview

  • Le FrancophonesHOWTO : Linux & la langue franaise

  • Table of ContentsLe FrancophonesHOWTO : Linux & la langue franaise............................................................................1

    crit par Guylhem Aznar, ......................................................................11. Prsentation..........................................................................................................................................12. Les problmes......................................................................................................................................13. Le vocabulaire : petit lexique...............................................................................................................14. Rglage du clavier sous Linux.............................................................................................................15. XFree....................................................................................................................................................26. Rglage du clavier pour les applications en mode texte......................................................................27. Rglage du clavier pour les applications X..........................................................................................38. Remerciements.....................................................................................................................................31. Prsentation..........................................................................................................................................31.1 Introduction........................................................................................................................................31.2 Fichiers utiliss dans ce HOWTO......................................................................................................31.3 Les Franais ne sont pas les seuls francophones !.............................................................................3

    a) Diffrentes versions................................................................................................................3b) Les tatsuniens : raccourcis claviers....................................................................................4c) Le Luxembourg : comme la France........................................................................................4d) Le Canada : 3 claviers............................................................................................................4

    1.4 Attention............................................................................................................................................4a) ROOT.....................................................................................................................................5b) CHERCHER...........................................................................................................................5

    2. Les problmes......................................................................................................................................52.1 Prsentation........................................................................................................................................52.2 Solutions............................................................................................................................................62.3 Aider..................................................................................................................................................63. Le vocabulaire : petit lexique...............................................................................................................63.1 8 bits...................................................................................................................................................63.2 La police de caractres.......................................................................................................................63.3 Les polices de caractres....................................................................................................................73.4 Table de clavier..................................................................................................................................83.5 Home , End , Page_Up et Page_Down ........................................................................93.6 Touches mortes..................................................................................................................................93.7 BackSpace et Delete ............................................................................................................103.8 UTC et GMT ........................................................................................................................104. Rglage du clavier sous Linux...........................................................................................................114.1 Introduction......................................................................................................................................114.2 Attention au stty !............................................................................................................................114.3 Faire de ces modifications les dfauts au dmarrage.......................................................................114.4 Polices de caractre..........................................................................................................................124.5 Vieilles versions...............................................................................................................................134.6 Amliorations spcifiques au clavier franais latin9.......................................................................14

    a) carr/cube..............................................................................................................................14b) dollar / livre / symbole montaire international...................................................................14

    4.7 Pour les autres claviers latin9..........................................................................................................154.8 Dans tous les cas..............................................................................................................................155. XFree..................................................................................................................................................155.1 Introduction......................................................................................................................................155.2 Mal programmer..............................................................................................................................16

    Le FrancophonesHOWTO : Linux & la langue franaise

    i

  • Table of Contents5.3 Le clavier en pratique.......................................................................................................................16

    a) Solution utilisant xmodmap..................................................................................................16b) Solution utilisant xkb (recommande)..................................................................................16c) Solution du compose.............................................................................................................17d) Solution modifiant la libX11................................................................................................17e) Estce ncessaire ?...............................................................................................................18

    5.4 latin9 ou latin1 ?..................................................................................................................185.5 Table de correspondances................................................................................................................195.6 Les polices ISO 885915 latin 9 sous X..........................................................................................196. Rglage du clavier pour les applications en mode texte....................................................................206.1 Tout d'abord.....................................................................................................................................206.2 Une police, des polices....................................................................................................................20

    a) Historique des polices...........................................................................................................21b) ISO 885915 latin 9.............................................................................................................21c) Utiliser les polices ISO 885915 latin 9...............................................................................22d) Unicode.................................................................................................................................23e) Utiliser les possibilits Unicode...........................................................................................23

    6.3 Les locales, messages en Franais...................................................................................................246.4 Son linux en franais........................................................................................................................266.5 Les variables....................................................................................................................................276.6 Les caractres 8 bits dans les programmes utilisant readline tels bash ou ncftp.............................286.7 zsh....................................................................................................................................................306.8 tcsh...................................................................................................................................................306.9 Pour tous les shells...........................................................................................................................306.10 L'heure...........................................................................................................................................316.11 vi....................................................................................................................................................336.12 Emacs.............................................................................................................................................356.13 less.................................................................................................................................................386.14 ls.....................................................................................................................................................396.15 flex.................................................................................................................................................406.16 elm.................................................................................................................................................406.17 col...................................................................................................................................................406.18 rlogin..............................................................................................................................................406.19 joe...................................................................................................................................................406.20 TeX et LaTeX................................................................................................................................406.21 Manuel...........................................................................................................................................416.22 Correcteur orthographique ispell...................................................................................................426.23 Les claviers 105 touches................................................................................................................426.24 PGP................................................................................................................................................426.25 Impression en mode ascii...............................................................................................................436.26 Unicode/latin/cp... je n'ai pas compris ce dernier paragraphe !.....................................................436.27 ncurses............................................................................................................................................44

    Introduction...............................................................................................................................45Les accents................................................................................................................................45

    6.28 Perl.................................................................................................................................................456.29 Installer les locales.........................................................................................................................46

    Midnight Commander (mc)......................................................................................................466.30 Kernel.............................................................................................................................................47

    Le FrancophonesHOWTO : Linux & la langue franaise

    ii

  • Table of Contents6.31 Lilo.................................................................................................................................................476.32 Groff (man)....................................................................................................................................476.33 Divers.............................................................................................................................................477. Rglage du clavier pour les applications X........................................................................................477.1 Les xterminaux (xterm, nxterm, rxvt...)...........................................................................................487.2 Les applications Motif.....................................................................................................................497.3 Le manuel.........................................................................................................................................497.4 NumLock.........................................................................................................................................497.5 XDM................................................................................................................................................498. Remerciements...................................................................................................................................50

    Le FrancophonesHOWTO : Linux & la langue franaise

    iii

  • Le FrancophonesHOWTO : Linux & la languefranaisecrit par Guylhem Aznar, v3.2.2 ; Dcembre 2001

    Copyright 1997, 1998, 1999, Guylhem Aznar ; librement distribuable selon les termes du GNU FreeDocumentation License, http://www.fsf.org/licenses/fdl.html. Toutes les marques cites appartiennent leurspropritaires respectifs.

    1. Prsentation1.1 Introduction 1.2 Fichiers utiliss dans ce HOWTO 1.3 Les Franais ne sont pas les seuls francophones ! 1.4 Attention

    2. Les problmes2.1 Prsentation 2.2 Solutions 2.3 Aider

    3. Le vocabulaire : petit lexique3.1 8 bits 3.2 La police de caractres 3.3 Les polices de caractres 3.4 Table de clavier 3.5 Home , End , Page_Up et Page_Down 3.6 Touches mortes 3.7 BackSpace et Delete 3.8 UTC et GMT

    4. Rglage du clavier sous Linux4.1 Introduction 4.2 Attention au stty ! 4.3 Faire de ces modifications les dfauts au dmarrage 4.4 Polices de caractre 4.5 Vieilles versions 4.6 Amliorations spcifiques au clavier franais latin9 4.7 Pour les autres claviers latin9

    Le FrancophonesHOWTO : Linux & la langue franaise 1

  • 4.8 Dans tous les cas

    5. XFree5.1 Introduction 5.2 Mal programmer 5.3 Le clavier en pratique 5.4 latin9 ou latin1 ? 5.5 Table de correspondances 5.6 Les polices ISO 885915 latin 9 sous X

    6. Rglage du clavier pour les applications en mode texte6.1 Tout d'abord 6.2 Une police, des polices... 6.3 Les locales, messages en Franais 6.4 Son linux en franais 6.5 Les variables 6.6 Les caractres 8 bits dans les programmes utilisant readline tels bash ou ncftp... 6.7 zsh 6.8 tcsh 6.9 Pour tous les shells 6.10 L'heure 6.11 vi 6.12 Emacs 6.13 less 6.14 ls 6.15 flex 6.16 elm 6.17 col 6.18 rlogin 6.19 joe 6.20 TeX et LaTeX 6.21 Manuel 6.22 Correcteur orthographique ispell 6.23 Les claviers 105 touches 6.24 PGP 6.25 Impression en mode ascii 6.26 Unicode/latin/cp... je n'ai pas compris ce dernier paragraphe ! 6.27 ncurses 6.28 Perl 6.29 Installer les locales 6.30 Kernel 6.31 Lilo 6.32 Groff (man) 6.33 Divers

    Le FrancophonesHOWTO : Linux & la langue franaise

    5. XFree 2

  • 7. Rglage du clavier pour les applications X7.1 Les xterminaux (xterm, nxterm, rxvt...) 7.2 Les applications Motif 7.3 Le manuel 7.4 NumLock 7.5 XDM

    8. Remerciements

    1. Prsentation

    1.1 IntroductionCe document a t rdig pour aider configurer un ordinateur dot du systme d'exploitation Linux pour desutilisateurs francophones.

    Il y est expliqu par exemple comment configurer priphriques et applications afin de prendre en compte lesparticularits et les spcificits de notre langue...

    Toutefois, ce document ne traite pas de l'installation du systme d'exploitation Linux ; il est implicitementsuppos que vous ayez correctement install une distribution de Linux, RedHat, Debian ou Suse, cette listen'tant pas exhaustive, et que vous vous apprtiez maintenant mieux la configurer ; veuillez donc vousrfrer d'autres HOWTOs pour l'installation.

    Les adresses lectroniques ont t volontairement supprimes ou modifies en remplaant les a enrouls par des () afin d'viter les publipostages trs gnants.

    Si quelque terme employ vous semble un peu obscur, je vous invite vous reporter au lexique (Vocabulaire : un petit lexique ), expliquant certains mots tels 8 bits, AZERTY ou QWERTY, qui sontemploys tout au long de ce document.

    1.2 Fichiers utiliss dans ce HOWTOTous les fichiers cits dans ce HOWTO, sont disponibles sous licence GPL sur ma page

    Je vous recommande de tlcharger tous ces fichiers pour les utiliser selon les exemples proposs.

    1.3 Les Franais ne sont pas les seuls francophones !a) Diffrentes versionsPour chaque manipulation dpendant du pays concern, un certain nombre de versions peuvent tre proposes:

    une canadienne normalise (cn)

    Le FrancophonesHOWTO : Linux & la langue franaise

    7. Rglage du clavier pour les applications X 3

  • une belge wallonne (be) une franaise (fr) une qubcoise (qc) une suisse romande (sf) une tatsunienne internationale (usx)

    b) Les tatsuniens : raccourcis claviersLa version tatsunienne internationale permet tous les francophones utilisant un clavier 7 bits aussinomm QWERTY de bnficier de l'tendue des caractres 8 bits.

    Est disponible aussi une version pour ceux qui utilisent un clavier Happy Hacking .

    c) Le Luxembourg : comme la FranceLe Grand Duch du Luxembourg utilisant les conventions franaises, j'invite les lecteurs luxembourgeois sereporter aux exemples franais.

    d) Le Canada : 3 claviersIl est classique de parler des claviers canadien international , surtout destins aux anglophones (qui leurprfrent toutefois les claviers QWERTY standard) et les claviers canadien franais , aux lettresaccentues.

    Mais, de nouveaux claviers dits canadiens normaliss ont fait leur apparition rcemment pour fusionnerles modles canadien international , non concern par le cadre du Francophones HOWTO, et canadienfranais .

    Ces nouveaux claviers rpondent aux normes CAN/CSA Z243.20092 et ISO 99957 ; ils sont prvus pourtre utiliss dans n'importe quelle langue, en remplaant par exemple les intituls des touches par despictogrammes : Del , en anglais, qui se traduisait par Suppr en franais devient ainsi trois barresobliques fines orientes sudouest/nordest.

    Plus d'explications sont disponibles sur le site de l'Office de la Langue Franaise.

    Toutefois je n'ai pas pu russir me procurer un tel clavier ; mes fichiers de configuration sont doncuniquement bass sur les ( illustrations) et les normes thoriques, et non les normes pratiques.

    Par exemple, si j'ai compris que la touche Control de droite est utilise comme une AltGr mais sert obtenir encore d'autres caractres, je n'ai aucune ide du comportement de ces touches lorsque seule l'autre aune srigraphie prvue...

    Si on peut m'envoyer un tel clavier, et surtout son pilote, je promets de mettre les fichiers de configuration jour :)

    1.4 Attention

    Le FrancophonesHOWTO : Linux & la langue franaise

    b) Les tatsuniens : raccourcis claviers 4

  • a) ROOTCertaines manipulations recommandes par ce document ne peuvent tre effectues que sous le compteprivilgi root ; la plus grande prudence est alors de rigueur car toute action inadquate peut mettre enpril le contenu des disques.

    Sauvegarder les fichiers existants, par exemple en les copiant sous le mme nom suivi du prfixe .old, avantde les modifier ou remplacer.

    b) CHERCHERLe paquetage GNU nomm "find" offre un programme appel locate, grce auquel l'utilisateur peutretrouver le nom complet, chemin de rpertoires, d'un fichier dont il ne connat que le nom.

    Certaines distributions Linux fournissent cela en /usr/bin/locate.

    En tant que root, lancer updatedb invoque un find / sur les disques monts et place les noms de tous lesfichiers sous forme hash dans /usr/lib/locate/find.codes (ou /var/lib/slocate/slocate.db pour slocate, utilisdans les distributions modernes.)

    locate permet ensuite de localiser l'un d'eux :

    (guylhem@victis:guylhem)$ locate noms_des_fichiers__retrouver

    2. Les problmes

    2.1 PrsentationLe problme de tout utilisateur francophone aprs l'installation de Linux est de lui faire comprendre qu'ilutilise des normes diffrentes des standards par dfaut tatsuniens..

    Cela a des consquences sur :

    la police de caractres donc les caractres spciaux que l'on utilise, accentus comme oubien ligaturs comme , voire e dans l'o qui vient d'apparatre sous Linux grce la normeISO885915 aussi nomme latin9

    la correspondance entre la srigraphie des cabochons ou touches du clavier sur lesquelles vousappuyez, et les codes que Linux renvoie, celuici supposant un clavier QWERTY tatsunien pardfaut

    le format de page pris en charge par les programmes que vous utilisez pour imprimer, diffrent entreles tatsUnis; (148,5 pouces pour du papier dit lgal) et l'Europe (29,721 cm pour des feuilles a4)

    le format des dates et de l'heure, la position des jours et des mois tant variable selon les rgions de lafrancophonie

    le format de la monnaie, aussi variable selon les francophones la langue utilise pour les messages d'erreur

    Le FrancophonesHOWTO : Linux & la langue franaise

    a) ROOT 5

  • 2.2 SolutionsTout est prconfigur pour un tatsunien : bien que ceuxci ne reprsentent pas la majorit de la populationmondiale, ils ont t prcurseurs en informatique.

    Il faut donc se faire reconnatre comme une exception par les diffrents programmes, par des options oudes variables exporter voire dans les pires des cas une modification du code source suivie d'unerecompilation.

    Heureusement, la philosophie GNU de Linux rend le systme trs ouvert des modifications de toutes sorteset comme vous allez le dcouvrir au fil de ce document, et il est assez simple d'obtenir un rsultat trs correct.

    2.3 AiderPour le moment, le futur de l'internationalisation de Linux porte sur la traduction des messages d'erreur, desprogrammes comme KDE ou GNOME, des pages de manuel et de la documentation, alors si vous voussentez l'me d'un traducteur, n'hsitez pas contacter l'quipe de traduction des HOWTOs ; pour cela,adressezvous ric Dumas ou .

    3. Le vocabulaire : petit lexiqueTout d'abord, un mot sur le vocabulaire employ :

    3.1 8 bitsDes caractres sont dits 8 bits s'ils correspondent des accents ou des signes spciaux comme , noninclus dans le standard ASCII 7 bits .

    Ce standard, sans accents ni caractres spciaux, correspond aux 128 (2^7) premiers caractres des 256 (2^8),de 0 255.

    Pour des raisons historiques (place disponible, inutilit pour les tats uniens) seuls les 128 (2^7) premierscaractres ont t normaliss par l'ASCII : par exemple le A qui est le 65e caractre de la table ASCII s'crit0100 0001 en notation binaire.

    Pour les caractres situs hors de la norme ASCII, diffrentes normes ou standards incompatibles,comme l'Unicode, l'iso8859, le latin, le cp (...) fixent ces correspondances.

    Par exemple, dans le standard ASCII tendu par l'iso88591, le 224me caractre quivalent not eb enhexadcimal correspond .

    3.2 La police de caractresUne police de caractres est une correspondance entre des codes informatiques et des caractres(alphanumriques...) affichables par l'ordinateur.

    La police de caractres est l'ensemble des reprsentations graphiques des caractres d'un standard.

    Le FrancophonesHOWTO : Linux & la langue franaise

    2.2 Solutions 6

  • 3.3 Les polices de caractresIl existe plusieurs polices de caractres 8 bits pouvant rpondre au besoins des francophones.

    Je vous recommande de lire ce sujet l'excellent site de Roman Czyborra qui a fait une thse sur ce sujet etqui vous donnera une explication fort dtaille

    Pour rsumer, il est ncessaire de choisir une police de caractres pour que tous les caractres franais soientdisponibles.

    Voici la liste des polices dites ISO 8859 , mais attention, il existe leurs quivalents en code page pourwindows (comme cp1252).

    ISO 88591 : latin 1 : langues d'Europe de l'ouest, Afrikaans, Swahili. Le Swahili, n'utilise aucuncaractre accentu (comme l'Anglais, le Malais et l'Indonsien), donc n'importe quel version faitl'affaire. Pour l'Afrikaans, je ne sais plus exactement quel tait le choix initial (c'estdire o avaitt rang le 'n au dpart), mais il ne me semble pas que ce soit dans Latin 1. Dans la pratique, biensr, les Afrikaaner utilisent Latin 1 ; la mme chose se passe pour un certain nombre des cas quisuivent.

    ISO 88592 : latin 2 : langues d'Europe centrale et orientale. Dans les faits : Polonais, Tchque,Slovaque, Slovne, Croate, Hongrois, Roumain, probablement aussi le Sorbe ou Sorabe (Wende enallemand). Officiellement, je crois que l'Albanais s'crit aussi en Latin2, mais comme dans les faitsc'est identique au Latin 1... Il y a un problme pour le Roumain, car le Latin 2 contient formellementles caractres avec une cdille, quand en roumain on utilise une virgule souscrite.

    ISO 88593 : latin 3 : Espranto et Maltais. Initialement, c'tait prvu pour les langues d'Europe duSud, y compris le Turc, les langues d'Espagne (donc Catalan, Basque), le Franais. Mais dans lapratique, c'est limit ces deux langues.

    ISO 88594 : latin 4 : langues baltes (incomplet). Pas utilis dans la pratique, remplac par Latin 7(iso885913), ou plutt en pratique la codepage 1257 Windows. Pour l'Este ou Estonien, on peutaussi utiliser Latin 9.

    ISO 88599 : latin 5 (comme latin 1, moins l'Islandais, plus le Turc). Usage : le Turc et peuttrel'Azri, mais il manque le schwa, un e renvers. Codage officiel aux PaysBas du fait des Turcsqui y habitent.

    ISO 885910 : latin 6 : langues nordiques, sauf le Lapon Skolt. Pas utilis dans la pratique : neservirait que pour les langues sames (ou lapones), mais il manque des caractres, et le publicconcern est de toute manire assez limit.

    ISO 885911 : Thai. Pas encore officiellement adopt. ISO 885912 : Indien (n'existe pas encore). Prvu pour le devanagari, pour crire l'Hindi, la langueprincipale de l'Inde, et aussi un grand nombre d'autres langues indiennes, dont le Sanskrit.

    ISO 885913 : latin 7 : langues baltes. Plus exactement : couvre les langues du pourtour de la merBaltique, donc aussi le Polonais, l'Allemand et les langues de scandinavie. Mais dans la pratique il estrduit en utilisation aux langues baltes et l'Este ou Estonien.

    ISO 885914 : latin 8 : langues celtes. Pour le Breton, le Galique et les dialectes parles au Pays deGalles et en Irlande.

    ISO 885915 : latin 9 : comme latin 1, en y comblant quelques manques. Pour le Franais, le Finnois(en concurrence avec Latin 1) et l'Este ou Estonien (en concurrence avec Latin 7).

    De cette longue liste, il convient de ne retenir que :

    Le FrancophonesHOWTO : Linux & la langue franaise

    3.3 Les polices de caractres 7

  • ISO 88591 latin 1 : police ouesteuropenne utilise par la majorit des systmes UNIX, ellepermet de disposer de tous les caractres Franais sauf les o e lis , l'euro et l'y trma majuscule

    cp850 : quivalent sous DOS de cette police, mais incompatible : il faut utiliser un outil de traductionde fichiers tel GNU recode.

    ISO 885915 latin 9 : police de l'union europenne, il s'agit d'une version rvise de l'ISO 88591latin 1 pour inclure tous les caractres des pays europens ; ainsi on y retrouve les caractres Franaismanquant, l'euro, et des caractres finlandais manquants.

    latin 0 : l'ISO 885915 latin 9 est souvent incorrectement abrge en latin0, qui correspondait au nomdu projet, de par son ambition remplacer le latin 1 un jour. Je vous renvoie au site de l'ISO et ladocumentation complte de ce standard

    cp1252 : quivalent sous Windows de cette police, aussi incompatible, qui apporte les mmescaractres manquants, du fait d'une rvision rcente de cette norme.

    ISO 88599 latin 5 : police officielle en Turquie et en Hollande, o les caractres Islandais peuutiliss ont t remplacs par les caractres turcs.

    cp1254 : quivalent sous Windows de cette police, aussi incompatible, qui apporte les caractresmanquant au Franais prcdemment cits et remplace les caractres Islandais peu utiliss par lescaractres turcs.

    Les choix de polices de caractres sont souvent des questions ou la raison se heurte aux habitudes.

    Pour ma part, si vous hsitez, je vous recommande l'ISO 885915 latin 9, pour diverses raisons :

    Il supporte l'intgralit des caractres utiliss en Franais de manire standard sur les UNIX, pour leschanges de fichiers entre Solaris et Linux par exemple

    Il s'agit de la police 8 bits choisie par l'union europenne si l'Unicode, volution du 8 bits, n'est pasdisponible

    Il permet d'crire des textes avec l'intgralit des caractres utiliss dans l'union Il est en train de devenir le nouveau standard dans la messagerie lectronique au sens large,supplantant progressivement l'ISO 88591 latin 1

    Le Francophones HOWTO utilise donc le latin 9 dans tous les exemples, car il y a de grandes chances quevotre systme ne soit pas encore compatible latin 9... autant donc vous proposer des manipulations et destravaux pratiques utiles :)

    Toutefois, si vous ne pouvez utiliser l'ISO 885915 latin 9 et dcidez d'en choisir une autre, je vousrecommande d'viter les cp propres au monde DOS/Windows et de vous rabattre sur l'ISO 88591 latin 1 quiest encore un standard fort rpandu : dans chaque exemple je vous invite alors remplacer les latin9 pardes latin1

    3.4 Table de clavierUne table de clavier est un fichier permettant de faire correspondre l'empreinte physique des cabochons, touches du clavier, au rsultat obtenu sur l'cran de l'ordinateur.

    Pour linux, ces fichiers sont dans /usr/lib/kbd/keytables/ ou /usr/share/kbd/keytables/

    Par exemple, les claviers franais AZERTY ont une table de clavier diffrente des claviers suisse romandsQWERTZ, ou des claviers du reste du monde, QWERTY.

    Le FrancophonesHOWTO : Linux & la langue franaise

    3.4 Table de clavier 8

  • Cela ne concerne que l'apparence du clavier, l'empreinte des cabochons, donc disposition relative descaractres sur le clavier, et non son lectronique interne ; si votre clavier ne vous convient pas, il vous suffitdonc d'utiliser des autocollants pour le transformer en un autre clavier francophone.

    3.5 Home , End , Page_Up et Page_Down Les touches Home , End , Page_Up et Page_Down dont les noms varient selon les claviers sontles touches permettant respectivement d'aller en dbut/fin de ligne et de monter/descendre d'une page.

    Les codes affectes ces touches sont respectivement 102 et 107 pour Home et End en mode terminal.

    Dans les pictogrammes des claviers ISO 99957, ces touches sont reprsents par des flches aux traitsappuys.

    Lorsqu'on presse une touche, le clavier met un code, qui est intercept par la table de clavier.

    La table de clavier, si elle reconnait le code, renvoie la chaine associe la touche, en l'occurence "\e[4 pour End .

    Lorsque bash ou un autre programme reoit cette chaine, il ne la connait pas !

    Donc il faut lui dire, dans le .inputrc que "\e[4 " signifie "aller la fin de la ligne"

    Donc pour que ces touches fonctionnent dans le shell bash, on ajoutera donc dans le fichier .inputrc (dansvotre / ou dans /etc/inputrc) les lignes:

    set metaflag onset convertmeta offset inputmeta onset outputmeta onset bellstyle visible

    "\e[1~":beginningofline"\e[3~":deletechar"\e[4~":endofline"\e\Ch": backwardkillword"\e\e[3~": killword

    Les premires lignes permettent d'afficher les caractres 8 bits, et de remplacer le bip en cas d'erreur parun clair blanc l'cran.

    3.6 Touches mortesLes touches mortes sont des touches qui ne produisent pas de caractres en ellesmmes, mais qui modifientla faon dont la frappe suivante va tre interprte, par exemple, le trma ou l'accent circonflexe sont engnral des touches mortes.

    Une touche morte est une touche qui doit donc tre suivie d'un espace pour obtenir l'accent seul, ou dans lecas o elle est suivie d'une voyelle y positionne un accent, par exemple :

    ^ puis e donne ^ puis espace donne ^

    Le FrancophonesHOWTO : Linux & la langue franaise

    3.5 Home , End , Page_Up et Page_Down 9

  • Les touches mortes sont :

    be et fr: l'accent aigu en AltGr de 1 pour les Franais et en AltGr de pour les Belges, l'accent graveen AltGr de 7 pour les franais & en AltGr de carr/cube pour les Belges, le trma et l'accentcirconflexe tous deux ct du P

    sf et usx: les accent aigus, graves, circonflexes, les trmas et la tilde qc: les accent graves, circonflexes, les trmas et la cdille

    3.7 BackSpace et Delete En raison d'une erreur volontaire et historique sous Linux, pour muler le fonctionnement d'un clavier deconsole VT, ces 2 touches sont frquemments mlanges, au mieux fonctionnant l'identique, au pire nefonctionnant pas du tout.

    Commenons donc par bien les dfinir :

    BackSpace : touche place en haut droite du pav principal, au dessus d' Entre , au cabochonmarqu d'une flche vers la gauche.

    Delete : touche du pav curseur au cabochon marqu Suppr ou Del , gauche de Fin ; enISO 99957 elle correspond trois barres obliques fines orientes sudouest/nordest.

    Le pav numrique offre une touche au marquage identique et effet identique lorsque Verr Num ou Num Lock est dsactiv.

    Ces deux touches correspondent chacune un de ces codes :

    BS : caractre ASCII 0x08, ou controlh. DEL : caractre ASCII 0x7F, ou control? ^D : caractre ASCII 0x04, ou controld.

    Ceci dans le but d'effacer gauche du curseur avec BackSpace, droite du curseur avec Delete.

    3.8 UTC et GMT Chaque partie du monde a sa propre norme horaire, base sur des fuseaux.

    La France se trouve en zone MET, heure moyenne europenne soit GMT+1 ; la zone MET DST correspond l'heure d't active soit GMT+2.

    GMT est l'heure solaire moyenne de Greenwich. L'heure est compte partir de midi et est doncdcale de 12 h par rapport au temps universel. GMT est base sur la rotation de la terre, ce n'estdonc pas un temps rgulier. En effet, la vitesse de rotation de la Terre subit des variations faiblesmais assez chaotiques, en plus elle diminue sur le long terme.

    UTC, temps universel coordonn , est compt partir de minuit toujours par rapport au mridienzro. Il est bas sur des talons atomiques, mais des secondes intercalaires sont ajoutesoccasionnellement pour faire en sorte qu'il ne s'carte jamais de plus de une seconde de l'heuresolaire moyenne. Le site de l'opdaf et le lexique donnent plus de renseignements.

    C'est le temps UTC, dfini Paris, qui sert de rfrence aux diffrentes heures lgales.

    Le FrancophonesHOWTO : Linux & la langue franaise

    3.7 BackSpace et Delete 10

  • L'acronyme GMT est employ 99% du temps pour dsigner UTC, mais c'est une erreur ou un abus delangage.

    Enfin, titre purement indicatif, il existe l'heure astronomique, aussi compte sur des talons atomiques maisdcale de 4 minutes par jour de l'heure terrestre car se basant sur la position de la terre dans l'espace parrapport aux toiles.

    4. Rglage du clavier sous Linux

    4.1 IntroductionIl existe deux programmes pour configurer votre clavier : un pour la console : loadkeys et un pour XFree :xkbd.

    Pour installer un clavier franais sous Linux, tapez selon votre clavier une des lignes suivantes :

    loadkeys tablesclavier/fr/frlatin9.map loadkeys tablesclavier/qc/qclatin1.map loadkeys tablesclavier/cn/cnlatin1.map loadkeys tablesclavier/be/belatin9.map loadkeys tablesclavier/sf/sflatin1.map loadkeys tablesclavier/usx/usxlatin1.map loadkeys tablesclavier/usx/usxhappyhackinglatin9.map

    4.2 Attention au stty !Avec les tables latin 9 recommandes dans ce HOWTO, pour linuxconsole aussi bien que pour X window,N'UTILISEZ PLUS :

    stty erase ^H

    ou :

    stty erase ^?

    stty erase ne sert en effet qu' tablir une correspondance entre le code que renvoie une touche et lafonction erase pour effacer le caractre.

    Les tables ici fournies fonctionnent correctement et ne ncessitent donc pas de stty erase qui risqueraitsurtout de perturber leur bon fonctionnement !

    Supprimezdonc ces lignes de vos fichiers d'initialisation de l'interprteur de commandes shell , comme.bashrc, .bash_profile ou .tcshrc .

    4.3 Faire de ces modifications les dfauts au dmarrageD'habitude, loadkeys est excut par des scripts au dmarrage ; par exemple dans/etc/rc.d/init.d/keytable ou /etc/rc.d/rc.local, init.d/keytable ou rc.keymap.

    Le FrancophonesHOWTO : Linux & la langue franaise

    4. Rglage du clavier sous Linux 11

  • La commande :

    find /etc/rc.d type f | xargs grep loadkeys

    vous fournira le nom exact du fichier lanant loadkeys ; il vous suffit alors de l'diter pour que vosmodifications soient dsormais prise en en compte chaque dmarrage.

    Les distributions RedHat et Debian constituent des exceptions : la table de clavier par dfaut tant dfiniedans /etc/sysconfig/keyboard pour la RedHat et /etc/kbd/config pour les Debian.

    Remplacer donc dans le fichier propre votre distribution la table de clavier en question par la bonne tablecomme frlatin9.map (selon votre modle de clavier)

    Vous devrez mettre une copie de la table que vous utilisez dans le rpertoire o votre distribution va chercherles tables de clavier ; en gnral /usr/lib/kbd/keymaps/i386/azerty/ pour une RedHat et/usr/share/kbd/keymaps/i386/azerty/ pour une Debian.

    Allez donc sur tlechargez l'archive, enregistrezla dans votre rpertoire /, puis dtarrezla avec lacommande:

    tar xzvf francophoneshowto.tgz

    Cela cre un rpertoire /french : placezvous dans ce rpertoire puis tapez :

    cp tablesclavier/linuxconsole/frlatin9.map /usr/lib/kbd/keytables/i386/azerty/

    Pour afficher les caractres latin9, vous devrez excuter les instructions de la section polices de caractre .

    4.4 Polices de caractreSi vous utilisez consoletools1998.08.11.tar.gz, vous pourrez remplacer setfont par consolechars :ces programmes servent charger une police sous linux console.

    setfont /usr/lib/kbd/consolefonts/xxxENN.psf.gz

    Je vous conseille pour des raisons dveloppes plus bas :

    setfont /usr/lib/kbd/consolefonts/lat916u.psf.gz

    Je ne vous conseille pas les fichiers lat1 , qui ne supportent pas l'euro ni les autres caractres franais.

    Vous trouverez aussi des fichiers .uni qui ne sont utiles que pour crer des polices ou pour ceux quiutilisent l'unicode : ils fixent des correspondances entre les dessins des caractres dans la police et lescodes des dits caractres, un mme dessin pouvant correspondre plusieurs codes dans l'example ded'unicode.

    Pour les polices toutes faites, vous pouvez forcer cette correspondace avec l'option u fichier.uni .

    Si vous tenez les installer, copiez de la mme manire tous les fichiers commenant par lat9 et seterminant par .uni dans le rpertoire /usr/lib/kbd/consoletrans avec la commande:

    Le FrancophonesHOWTO : Linux & la langue franaise

    4.4 Polices de caractre 12

  • cp lat9*.uni /usr/lib/kbd/consoletrans

    D'habitude, setfont est excut par des scripts au dmarrage ; par exemple dans/etc/rc.d/init.d/keytable ou /etc/rc.d/rc.local, init.d/keytable ou rc.keymap.

    La commande :

    find /etc/rc.d type f | xargs grep setfont

    vous fournira sur le nom exact du fichier lanant setfont ; il vous suffit alors de l'diter pour que vosmodifications soient dsormais prise en en compte chaque dmarrage...

    Les distributions RedHat et Debian constituent des exceptions : la police par dfaut tant dfinie dans/etc/sysconfig/i18n pour la RedHat et /etc/kbd/config pour les Debian.

    Dans /etc/sysconfig/i18n rajouter une ligne de la forme : SYSFONT=xxxENN.psf

    xxx reprsente le type de police ; il doit s'agir d'une lat pour les francophones ce qui signifie ISO8859 ou latin. Sans cela il n'y a plus de caractres tendus comme les voyelles accentus,symboles de ponctuation comme paragraphe...

    E reprsente l'encodage latin, par exemple 1 pour latin1, 0 ou 9 pour latin9 NNN reprsente la taille individuelle de chaque caractre ; 08 est presque illisible mais 16 est un peugros... rgler selon les gots de chacun.

    Je vous conseille la police lat916u.psf ou son quivalent lat016.psf installe par dfaut sur la plupart desdistributions, trs souvent compresse donc avec le suffixe .gz .

    [ rajouter une explication sur comment installer la police ]

    La section une police, des polices vous donnera plus de dtails sur les polices disponibles.

    4.5 Vieilles versionsSi lors du chargement de la table de clavier vous rencontrez un message d'erreur similaire au suivant :

    (guylhem@victis:guylhem)$ loadkeys frlatin9.map Loading /usr/lib/kbd/keytables/frlatin9.map unknown keysym 'dead_cedilla' /usr/lib/kbd/keytables/frlatin9.map:67: parse error syntax error in map file key bindings not changed

    Cela signifie que votre version de kbd dont le programme loadkeys dpend est trop vieille : il faut vousprocurer une version plus rcente du programme.

    Il existait et existe encore des versions des tables de clavier pour ceux ne voulant ni touches mortes niaccents, mais cellesci tombent actuellement en dsutude puisque la grande majorit des programmesprennent dsormais en charge ces fameuses touches mortes et les caractres accentus.

    Le FrancophonesHOWTO : Linux & la langue franaise

    4.5 Vieilles versions 13

  • De plus, les tables fournies avec ce HOWTO permettent de se servir des touches mortes ou de s'en passer siun programme les refuse, les deux cas ayant t prvus :

    4.6 Amliorations spcifiques au clavier franais latin9a y est, vous pouvez taper du texte latin 9 sous Linux en mode console !

    Seules 2 touches ont t modifies :

    a) carr/cubeElle sert maintenant oe/OE lis ; en AltGr on y trouve les guillemets franais.

    Le carr & le cube restent respectivement accessibles en AltGr () et Alt Gr(*), les guillemets tant aussidirectement accessibles avec AltGr (w) et AltGr (x), selon la norme ISO 9995 part 3 applique la normeAZERTY franaise.

    En rsum :

    AltGr (oe) : AltGr + Shift (oe) : AltGr (w) : AltGr (x) : AltGr (m) : AltGr () : AltGr (*) :

    b) dollar / livre / symbole montaire internationaltant donn que le symbole montaire international n'est plus disponible dans la norme d'encodage ISO885915, il a t remplac par la division centsimale de l'euro : le cent, disponible donc en AltGr ($).

    Dans les prcdentes versions, le dollar & la livre, des monnaies trangres, avaient t dplacs pour laisserla place l'euro et au cent, notre monnaie.

    De telles modifications taient permises par les recommandations officielles de l'EURO WORKSHOP maisallaient l'encontre de la norme AZERTY : si la position AltGr (e) est dj occupe sur un clavier, la positionde l'euro est laisse au libre choix des programmeurs.

    AltGr (e) sert faire depuis 1992 sous Linux, mais devant les protestations lgitimes d'utilisateursdisposant d'un clavier o l'euro est srigraphi en AltGr (e), j'ai du dplacer le en AltGr + Shift ($).

    Dsol d'avoir rompu la tradition linuxienne pour conserver la compatibilit la norme AZERTY & auxrecommandations officielles de l'EURO WORKSHOP !

    En rsum :

    AltGr (e) : euro AltGr ($) : cent AltGr + Shift ($) :

    Le FrancophonesHOWTO : Linux & la langue franaise

    4.6 Amliorations spcifiques au clavier franais latin9 14

  • 4.7 Pour les autres claviers latin9L'euro & les cents ont t rajouts respectivement en AltGr (e) & en AltGr (c).

    La touche AltGr a donc t rajoute ; pour utiliser ces fonctions avec toute table de clavier, il suffit de chargerotherlatin9.map aprs votre table nationale.

    La plupart des amliorations du clavier franais ont t transposes aux claviers nationaux par des auteursexternes.

    Toutefois, je ne possde pas chaque modle de clavier et ne peut expliquer en dtail toutes ces modifications ;des sections spcifiques seront donc rajoutes par la suite par d'autres auteurs.

    4.8 Dans tous les cas Home , End , Delete et BackSpace ont t corriges & les touches Windows ont tcorrectement dfinies, pour passer d'une console virtuelle l'autre.

    Des Composes , squences prfixer par la touche compose ( Imprcran ou Print Screen pardfaut) ont t rajoutes, mais cela reste transparent pour l'utilisateur.

    Par exemple:

    COMPOSE ^ suivi d'une des lettres (s,S,z,Z) sert obtenir les lettres finlandaises rajoutes COMPOSE " suivi d'une des lettres (y,Y) sert obtenir les y trmas franconerlandais rajouts COMPOSE suivi d'une des lettres (e,c,l,y) sert obtenir l'euro, le cent, la livre, le yen

    5. XFree

    5.1 IntroductionIl y a quelques annes, xmodmap servait changer les tables de clavier sous XFree, un fichier deconfiguration d'ordinaire nomm /usr/X11/lib/X11/xinit/.Xmodmap tant pris en charge grce votre.xinitrc ou /etc/X11/xinit/xinitrc

    Pour convertir une table console correcte, on utilisait mk_modmap livr avec l'archive kbd etgnralement install en /usr/lib/kbd/keytables

    Les utilisateurs dsirant personnaliser leur table xmodmap employaient le programme xkeycaps .

    Puis XFree 2.1 et les version ultrieures ont reconnu la disposition des touches du clavier gre par loadkeys , rendant thoriquement xmodmap inutile.

    Mais la gestion de la touche COMPOSE assure par XFree 3.1 laissait un peu dsirer, la table hrite de loadkeys ne servant gure.

    Il fallait donc continuer employer xmodmap, l'utilitaire logiciel standard permettant d'obliger le serveur X

    Le FrancophonesHOWTO : Linux & la langue franaise

    4.7 Pour les autres claviers latin9 15

  • associer les vnements souris/clavier des caractres.

    Sous XFree version 3.2 et postrieures, xkb rendit xmodmap dfinitivement obsolte.

    Mais ne voiltil pas les rumeurs qui voulaient que les prochaines versions de XFree ne supporte plus lestouches mortes se sont confirmes !!!

    Dans la distribution X11 du X Consortium, donc XFree86, qui en est directement issu, il n'existe plus demcanisme gnral de gestion des touches mortes, ou des solutions approximatives obligeant supprimeraussi xkb ou modifier des bibliothques de programmes !

    5.2 Mal programmer chaque programme de bien grer les touches mortes au lieu de faire confiance X pour cette tche.

    En ralit, il n'est pas compliqu de grer des touches mortes, il suffit d'utiliser la bonne fonction,XmbLookupString() dans les programmes Motif, au lieu de XLookupString().

    5.3 Le clavier en pratiqueQuelle histoire complique !

    De ce fait, elles ne fonctionnent que pour les clients X internationaliss , c'estdire qui grenteuxmmes les problmes lis aux mthodes d'entre de donnes des diffrentes langues nationales.

    Ceci est trs gnant lorsqu'on veut pouvoir saisir du texte comportant des lettres accentues, alors que leclient utilis n'est pas internationalis !

    a) Solution utilisant xmodmapTaper :

    cp frlatin9.xmod /usr/X11R6/lib/X11/xinit/Xmodmap cp frlatin9.xmod ~/.Xmodmap

    b) Solution utilisant xkb (recommande)Taper :

    cp frlatin9 /usr/X11R6/lib/X11/xkb/symbols

    Puis diter votre XF86Config pour y rajouter dans la section Keyboard les lignes xkb idoines : Section "Keyboard"Protocol "Standard"AutoRepeat 500 30LeftAlt MetaRightAlt ModeShift # Important pour Altgr, mais dans les # versions rcentes de XFree, AltGr et # RightAlt sont synonymes.

    Le FrancophonesHOWTO : Linux & la langue franaise

    5.2 Mal programmer 16

  • ScrollLock Compose # Pour faire des caractres spciaux. # Utiliser sinon une des 3 touches des # nouveaux claviers 105 touches...

    RightCtl Control # Garder la touche normale

    XkbKeycodes "xfree86"XkbRules "xfree86"XkbTypes "default"XkbCompat "default"XkbSymbols "frlatin9(pc105)"XkbGeometry "pc(pc105)"XkbModel "pc105"

    EndSection

    Pour cette partie Xkb, certains prfrent :

    XkbKeymap "xfree86(frlatin9)" XkbKeycodes "xfree86" XkbSymbols "en_US(pc101)+frlatin9" XkbGeometry "pc(pc101)"

    Bien sur, remplacer fr par cn , be , ch ou usx selon votre clavier...

    c) Solution du composeUne autre mthode pour obtenir des caractres 8 bits :

    Dans /usr/X11R6/lib/X11/locale/iso88591/Compose se trouve une table de correspondance entre deux caractres et un rsultat ; les deux caractres sont mlangs lors de l'appui surla touche Compose : par exemple;

    COMPOSE suivi de e puis ^

    a toutes les chances de vous donner , y compris dans l'ordre oppos ( ^ puis e )

    Mais pour utiliser la touche Compose, vous devez l'affecter une touche !

    Le paramtrage prconis, rgl dans XF86Config, la fait correspondre la touche Arrt Dfil inutilesous X, par la commande :

    ScrollLock Compose

    dans la section Keyboard.

    Attention, sous Linux en mode console, cette touche est utile (pour bloquer temporairement la consolevirtuelle) et c'est Impr cran ou Print Screen qui, ne servant rien, est affecte Compose .

    d) Solution modifiant la libX11Thomas Quinot vous propose donc sa libX11 modifie, qui gre lestouches mortes de manire transparente pour tous les clients.

    Le FrancophonesHOWTO : Linux & la langue franaise

    c) Solution du compose 17

  • Elle permet galement de traiter les squences composes inconnues comme des paires de caractres, parexemple :

    ~ + / = ~/

    Pour l'utiliser :

    Rcuprez libX11XF3.3.1.tar.gz ; Extrayez le fichier libX11.so.6.1 ; Placezle dans /usr/X11R6/lib/ ; Excutez ldconfig ; Dsactivez l'extension XKB en utilisant l'option XkbDisable dans la section Keyboard de votreXF86Config.

    e) Estce ncessaire ?Personnellement, je vous recommande de ne pas toucher la libX11, d'oublier xmodmap et de l'alternativexkb + fichiers latin9 en attendant un autre changement de la politique du X Consortium envers les touchesmortes (ou en rajoutant les options d'internationalisation au code source de vos programmes.)

    Actuellement, si vous n'avez pas de rpertoire /usr/X11R6/lib/X11/xkb/symbols/ cela signifieque vous n'utilisez pas xkb : procurezvous donc une version plus rcente de X window !

    Sans xkb, XFree se rabattra par dfaut sur votre configuration de clavier pour Linux avec loadkeys.

    Toutefois, la translation n'est pas parfaite et je vous recommanderais plutt d'viter cette option, aussi bienque l'ancien gestionnaire de clavier Xmodmap.

    Il se peut aussi que sans aucune commande pour xkb, XFree vous considre comme utilisateur d'un clavier 7bits !

    Il convient donc d'utiliser une table adapte avec xkb.

    5.4 latin9 ou latin1 ?Je vous conseille de choisir les tables latin9 que je maintiens jour, plus rcentes que les versionslatin1, permettant d'utiliser de multiples amliorations, dtailles dans la section clavier souslinuxconsole, pour disposer du plus de confort possible et plus adaptes car maintenu par des francophones.

    Les nombreuses amliorations dont elles bnficient permettent de pallier au dficiences de nombreuxprogrammes.

    Par exemple, certains programmes en Motif comme Netscape (tm) ne savent pas encore grer les touchesmortes ... donc impossible de taper par exemple des ou des sur les claviers des Belges et Franais, puisquela touche morte accent circonflexe est le seul moyen d'obtenir ces caractres !

    frlatin9 rpond ce problme en proposant une solution de remplacement : AltGr (voyelle) permetd'obtenir la voyelle avec un accent grave, AltGr+Shift (voyelle) permet d'obtenir la voyelle avec un trma !

    Le FrancophonesHOWTO : Linux & la langue franaise

    e) Estce ncessaire ? 18

  • 5.5 Table de correspondancesAltGr (voyelle) : voyelle accent grave AltGr + Shift (voyelle) : voyelle trma AltGr (touche au dessous de la voyelle) : voyelle majuscule accent grave AltGr + Shift (touche au dessous de la voyelle) : voyelle majuscule trma AltGr + Shift (minuscule accentue) : majuscule accentue

    Par exemple :

    AltGr (a) : AltGr (q) : AltGr + Shift () :

    L'astuce marche aussi pour le c cdille :

    AltGr + Shift () :

    Donc mme dans les pires conditions, si aucune touche morte ne fonctionne, on peut quand mme accder toutes les voyelles accentues, majuscules et minuscules !

    Vous y trouverez en plus les guillemets franais ( ), les symboles employs en physique (, , delta, phi ...),des signes de monnaies (yen, cent) ou de copyright (tm, ) ainsi que des lettres d'autres langues (, ...).

    Tous ces signes s'obtiennent grce AltGr (lettre), par exemple AltGr (b) donne , AltGr (r) donne tm, AltGr(y) donne yen...

    Pour vous rapeller simplement de tout cel, tapez par exemple :

    more /usr/lib/kbd/keytables/i386/azerty/frlatin9.map

    Pour ce qui est du choix entre latin1 et latin9... vous de voir !

    Un conseil : essayez l'un puis l'autre si vous avez le temps.

    5.6 Les polices ISO 885915 latin 9 sous XIl est bien d'avoir une table de clavier compatible latin 9, mais sans police adapte jamais vous ne verrez lescaractres rajouts dans cette norme.

    Il faut donc utiliser l'utilitaire de conversion bdftopcf qui en quelque sorte permet de compiler les policesde caractres fournies.

    Placezvous dans le rpertoire de l'archive que vous avez rcupr puis sous root, taper par exemple pourXlat910x20.bdf ou un autre bdf :

    bdftopcf Xlat910x20.bdf > Xlat910x20lat9.pcf gzip Xlat910x20lat9.pcf mv Xlat910x20lat9.pcf.gz /usr/X11R6/lib/X11/fonts/misc mkfontdir /usr/X11R6/lib/X11/fonts/misc

    Le FrancophonesHOWTO : Linux & la langue franaise

    5.5 Table de correspondances 19

  • Cel cre un fichier Xlat910x20lat9.pcf qu'il faut compresser avec gzip, on obtient alors le fichier Xlat910x20lat9.pcf.gz qui doit tre mis dans le rpertoire adquat, pour lequel l'index des polices decaractres sera mis jour.

    Alors, ajoutez la table de composition latin9 aux compositions par dfaut de X, spcifiques l'iso 88591 : cat XComposelat9 >> /usr/X11R6/lib/X11/locale/iso88591/Compose

    Nous faisons un cat vers l'ISO 88591, car X ne reconnat pas l'ISO 885915 latin9.

    De l, redmarrer X ou taper sous son compte d'utilisateur normal :

    xset +fp /usr/X11R6/lib/X11/fonts/misc

    Si vous utilisez xmodmap, lancez :

    xmodmap ~/.Xmodmap

    Pour choisir les polices latin9, lancer xfontsel et chercher les encodages iso885915.

    Ou plus simplement, taper :

    grep Xlat910x20.pcf /usr/X11R6/lib/X11/fonts/misc/*

    Puis utiliser le second paramtre comme nom de police, par exemple avec rxvt, xiterm, aterm ou wterm:

    aterm fn miscfixedmediumrnormal202007575c100iso885915

    Cela lance un terminal X utilisant une des polices latin9.

    6. Rglage du clavier pour les applications en mode texte

    6.1 Tout d'abordLe huitime bit doit survivre l'entre du noyau, assurezvousen donc avec :

    stty cs8 istrip parenb

    Ensuite, il convient de s'assurer que l'application est apte supporter les caractres 8 bits : par exemple, ispelln'est pas compil pour des caractres 8 bits par dfaut : il faut le recompiler sans l'option :

    NO8BIT

    6.2 Une police, des polices...Avant d'aborder cette section, je vous conseille de lire l'introduction sur les polices pour apprhender un peumieux le vocabulaire de base et les diffrentes normes de polices.

    Le FrancophonesHOWTO : Linux & la langue franaise

    6. Rglage du clavier pour les applications en mode texte 20

  • a) Historique des policesDe l'ASCII l'Unicode, en passant par l'ISO 8859, le latin et le cp, on peut rsumer l'histoire des polices engrandes tapes :

    Au dbut tait l'ASCII, qui codait ses caractres sur 7 bits.

    Prvu pour des tatsuniens, il tait impossible d'incorporer des caractres accentus la norme dj prsentede 127 caractres.

    Ainsi vint le 8 bits qui tendit le nombre de caractres 255 et les normes ISO 8859, latin et cp, pour les plusconnues, qui vinrent pallier cette dficience du fait des 128 positions supplmentaires disponibles enencodant les caractres sur 8 bits.

    Mais plusieurs de ces normes taient ncessaire du fait de l'impossibilit de faire tenir les caractres de toutesles langues du monde sur 8 bits.

    La norme ISO 88591 latin 1, la plus utilise, se destine par exemple au langues d'Europe de l'ouest, du nord,d'Amrique, la norme ISO 88592 latin 2 est prvue pour l'Europe de l'est...

    L'Unicode est l'un de ces standard, destin terme remplacer les diffrentes volutions de l'ASCII ; commele passage du 7 bits au 8 bits il correspond une extension de la place disponible, tout en reprenant l'anciennepartie comme ASCII et ISO 88591 latin 1 pour rester compatible avec la majorit du parc install.

    L'Unicode offre l'avantage de proposer les caractres ncessaires toutes les langues du monde, mais resteencore peu utilis ou implment.

    En effet, il est impossible de l'utiliser en pratique sous linuxconsole, la mmoire exige de la carte vido nepermettant pas de stocker tous les caractres de l'Unicode, et sous X la gestion actuelle des polices rendraitson utilisation trop inconfortable.

    Attendons un peu que les polices True Type se rpandent sous X, grce des outils comme freetype, xfstt(...) et le trs attendu XFree 4 qui devrait les supporter en natif.

    Actuellement, la nouvelle norme europenne ISO 885915 latin 9 est cense permettre la transition versl'Unicode en apportant l'ancien ISO 88591 latin 1 les caractres qu'il manquait actuellement.

    Toutefois elle est partiellement incompatible avec l'Unicode puisque l'ISO 88591 latin 1 avait t choisicomme base pour l'Unicode, mais que cette police veut complter les failles de l'ISO 88591 latin 1 en yrajoutant des caractres dj prsents dans l'Unicode...

    Quelle complexit pour de simple lettres !

    b) ISO 885915 latin 9De nous jours, il vaut mieux installer par dfaut la nouvelle norme ISO 885915 latin 9, destine remplacerl'ensemble des polices europennes par une seule.

    Son but est voisin de l'Unicode, mais elle a l'avantage d'tre plus lgre que celuici et d'tre applicable toutde suite.

    Le FrancophonesHOWTO : Linux & la langue franaise

    a) Historique des polices 21

  • Elle apporte notamment des caractres qui manquaient beaucoup pour les Franais et les Finlandais :

    e dans l'o en majuscule et minuscule pour les Franais, par exemple pour les mots oeuf, coeur,boeuf, oeil ...

    s chapeau invers en majuscule et minuscule pour les Finlandais z chapeau invers en majuscule et minuscule pour les Finlandais l'EURO pour tous les pays europens

    Cette nouvelle norme, ISO 885915 latin 9 aussi connue sous le nom gnrique latin0, reste cependantencore trs peu rpandue par rapport la norme actuelle ISO 88591 latin 1.

    c) Utiliser les polices ISO 885915 latin 9Vous n'avez besoin que d'une seule police !

    Or il en existe plusieurs types rpondant diffremment la mme norme iso885915 latin9 latin0 souslinux :

    par tradition l'opposition latN/latNu selon l'inclusion ou non d'une table de correspondance Unicode. en ralit les diffrences vont bien plus loin, de l'ordre dans lequel sont les caractres de la police, cequi joue sur l'aspect des applications semi graphique, les correspondances avec des caractres latin1 latin9 Unicode ce qui a un rle dans la compatibilit croise ou exclusive, par exemple purementUnicode...

    J'ai donc complt par 2 types de ma cration pour rpondre au mieux aux diffrents besoins.

    | Encodage dans | Inclusion d'une | Compatibilit | Compatibilit | l'ordre iso | table Unicode | exclusive | croise

    lat9 | oui | non | non | lat1 + lat9

    lat9u | non | oui | non | lat1 + lat9

    lat9v | oui | oui | Unicode | non

    lat9w | oui | oui | non |lat1+lat9+Unicode

    Voici plus d'explications :

    les lat9 tout court ne contiennent pas de table de correspondance Unicode, ce qui fait que tous lessymboles montaires internationaux apparatront comme des euro, ce qui peut poser des problmespour les fichiers issus d'un ordinateur sous windows ; le cp1252 ou le latin1 sont incompatibles avec le latin9, mais ce dernier a l'avantage de fonctionner tout de suite sous linux. Dans les versionsrcentes du noyau, selon le site de Yann Dirson, il semble donc que toutes les polices devraientcontenir une table de correspondance Unicode...

    des lat9u encodes dans un ordre non standard, mais identique celui des polices latXu de kbd, parrapport aux polices prcdentes, en amenant les mmes problmes avec le cp1252 et le latin1 mais enincluant une table de correspondance Unicode, ce qui permet d'avoir de jolis caractres semigraphiques sous Yast, mc, ou d'autres programmes bass sur ncurses ou dialog.

    des lat9v encodes dans l'ordre officiel iso comme les lat9 mais avec une table Unicode complte : laucun symbole montaire international ne sera remplac par l'euro ! Ces polices sont utiles pour

    Le FrancophonesHOWTO : Linux & la langue franaise

    c) Utiliser les polices ISO 885915 latin 9 22

  • viter les problmes d'export, grce l'Unicode *pur*, avec une table de clavier Unicode adapte :tous les caractres latin9 sont remplacs par des caractres Unicodes et affichs ainsi, ce qui a lemrite d'tre compatible avec le latin9, l'Unicode, d'tre lgant techniquement mais inutilisable normalement sous linuxconsole. Presque aucun systme n'est entirement prt pour l'Unicode !

    Donc n'utilisez les polices lat9, lat9u ou lat9v que si vous savez ce que vous faites, je vous recommande pourma part le meilleur compromis : les polices lat9w qui permettent de passer au latin9 immdiatement, enposant quelques problmes pour les caractres latin1 qui seront remplacs par leurs quivalents latin9, maissans rendre l'Unicode obligatoire comme les lat9U, sans emmler les caractres graphiques comme les lat9, eten permettant aussi d'afficher les caractres spcifiques au latin9 en Unicode *pur*, l'exception descaractres spcifiques au latin1 donc...

    Je vous rassure, vous n'tes pas obligs de comprendre tout ce qui suit pour passer l'euro , sieffectivement vous ne savez toujours pas de quelle police vous avez besoin, un conseil : utiliser les lat9w.

    Pour utiliser la police lat916.psf ou un autre lat9 .psf, vous devez pallier l'absence d'une table Unicode en enchargeant une.

    loadunimap fonts/linuxconsole/lat9.uni setfont fonts/linuxconsole/lat916.psf

    Pour utiliser la police lat9w16.psf ou une autre lat9u, lat9v ou lat9w :

    setfont /fonts/linuxconsole/lat9w16.psf

    d) UnicodeUne alternative est l'Unicode, mais les programmes l'utilisant sont encore trop peu nombreux pour qu'elle soitvalable.

    Citons quand mme yuedit et le projet 9 (9term, 9wm... rien voir avec l'oprateur tlcom franais dumme nom) qui utilisent l'Unicode sous X, avec plus ou moins de succs.

    En revanche, sous linuxconsole, tout programme peut utiliser l'Unicode.

    Mais, hlas!, aussi grande que soit la mmoire des cartes vidos actuelles, elle ne peut charger l'intgralit descaractres d'une police Unicode.

    Il existe donc des jeux de caractres limits mais bien utiles pour les langues baltiques, asiatiques,estafricaines...

    e) Utiliser les possibilits UnicodeEssayez par exemple ce fichier unicodelance pour passer en mode Unicode:

    #!/bin/shecho e '\033%8'kbd_mode uloadkeys frunicode.mapsetfont lat9u16.psf

    et ce fichier latinretourne pour revenir en mode latin normal:

    Le FrancophonesHOWTO : Linux & la langue franaise

    d) Unicode 23

  • #!/bin/shecho e '\033%@'kbd_mode aloadkeys frlatin9.mapsetfont lat9w16.psf

    Essayez par exemple de lire le fichier unicode.txt, encod en Unicode, une foisunicodelance activ.

    Vous ne verrez sinon qu'un texte mal encod, sans caractres 8 bits, comme cet exemple :

    Ceci est un essai de texte en UNICODE !

    On constate que les btas (~_) et autres lettres 8 bits ne sortent pas biensi l'on regarde ce fichier en mode latin !Les accents | non plus d'ailleurs...Enfin, heureusement que l'on ne marche pas sur des ~RUFS, enfin, ~Sufs !~Ga marche moyennement disons !

    6.3 Les locales, messages en FranaisLinux en 'version franaise' existe... mais ne semble pas facile obtenir.

    La librairie locale(7) [cf aussi perllocale, setlocale, getlocale] utilise par la librairie C se sert de variablesd'environnement pour dfinir les prfrences linguistiques et nationales.

    Pablo Saratxaga rpondait ainsi Pascal Rigaux en prenant l'exemple de sort :

    PR> J'ai dcouvert aujourd'hui la variable d'environnement LANG. C'est assez PR> surprenant de se retrouver avec de l'aide en franais (mme si elle n'est pas PR> toujours aussi prcise que la version anglaise) quand on fait ls help.

    C'est agrable n'estce pas ?

    PR> Par contre je ne comprend pas pourquoi un programme comme sort(1) n'utilise pas PR> cette information pour obtenir un tri acceptable pour les accents (du genre ne PR> pas mettre tre aprs zen ). Il devrait au moins proposer une option de PR> ce genre.

    Il faudrait regarder les sources de sort...La fonction utiliser est strcoll() :

    ****

    STRCOLL(3) Manuel du programmeur Linux STRCOLL(3)

    NOM strcoll Comparaison de deux chanes suivant la localisa tion en cours.

    SYNOPSIS #include

    int strcoll (const char *s1, const char *s2);

    DESCRIPTION La fonction strcoll() compare les deux chanes s1 et s2.

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.3 Les locales, messages en Franais 24

  • Elle renvoie un entier infrieur, gal ou suprieur a zro si s1 est respectivement infrieure, gale, ou suprieure a s2. La comparaison est effectue en se basant sur la localisation en cours pour la catgorie LC_COLLATE. (Voir setlocale(3)).

    ****

    qui est donc l'quivalent de strcmp() mais qui tiens compte des locales.Il faudra s'crire un strcasecoll() aussi pour bien faire, en utilisanttoupper()/tolower() qui d'aprs la page de manuel supporte les locales.

    Qui s'y colle ? a devrait tre assez simple raliser sur un systme GNUen tout cas.

    Il existe diffrente variables exporter, avec chacune une fonction spcifique ; le format standardis est:

    langue[_PAYS[.CHARSET]][@variante]

    Les crochets dnotent l'optionalit, par exemple: 'fr', 'fr_BE', 'fr_CH.ISO885915', no@bokmaal,no@nynorsk,...

    Les fonctions de la libc, celle de GNU en tout cas, iront chercher dans l'ordre dcroissant si on peut dire;par exemple si on spcifie 'fr_CH.ISO885915' elles chercheront d'abord avec cette valeur, puis avec'fr_CH' puis avec 'fr'.

    LC_COLLATE dfinit les quivalences de caractres pour les comparaisons ( peut tre quivalent ae), pour les ligatures et pour les csures.

    LC_CTYPE dfinit les caractres affichables LC_MONETARY dfinit le format et le symbole de la monnaie utilise LC_NUMERIC dfinit le format numrique : regroupement, marqueur dcimal... LC_MESSAGES dfinit la langue des messages LC_TIME dfinit le format de la date, les noms des jours et des mois LC_ALL valeur par dfaut des variables prcdentes : si une LC_ n'est pas dfinie, LC_ALL estprise en compte, sinon la libc se rabat sur LANG.

    LANG diffrent des variables prcdentes, contient le code langue au format iso : fr,en,de... LANGUAGE liste des locales par ordre de prfrence spares par deux points (fr:es:dk:en), c'estune particularit GNU, fort utile si un document n'existe que dans une langue comme certaines pagesde manuel

    Les valeurs utilisables pour les francophones sont:

    fr franais gnrique fr_FR franais de France fr_BE franais de Belgique fr_CH franais de Suisse fr_LU franais du Luxembourg fr_CA franais du Canada

    Par exemple, si vous tre un Franais de France, il suffit d'indiquer sous bash :

    export LANGUAGE=fr_FR

    Exemple :

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.3 Les locales, messages en Franais 25

  • bash# export LANGUAGE=es_ES bash# ls fichier_n_existant_pas ls: fichier_n_existant_pas: No existe el fichero o el directorio bash# export LANGUAGE=de_DE bash# ls fichier_n_existant_pas ls: fichier_n_existant_pas: Datei oder Verzeichnis nicht gefunden bash# export LANGUAGE=en_US bash# ls fichier_n_existant_pas ls: fichier_n_existant_pas: No such file or directory bash# export LANGUAGE=fr_FR bash# ls fichier_n_existant_pas ls: fichier_n_existant_pas: Aucun fichier ou rpertoire de ce type

    Toutefois, avec le passage l'euro, ces locales ne sont plus adaptes.

    Je vous conseille donc d'utiliser dans les pays de l'union passant l'euro le suffixe @euro :

    export LC_ALL="fr_FR@euro"

    Pour cela, installer les nouveaux fichiers sources de locales dans /usr/share/i18n/ en lanant :

    cp charmaps/ISO885915 /usr/share/i18n/charmaps/ISO885915 cp locales/* /usr/share/i18n/locales/

    Alors, rgnrer les locales binaires de /usr/share/locales, par exemple :

    localedef i fr_FR@euro f ISO885915 fr_FR@euro

    fr_FR@euro inclus les caractres latin 9, c'est utile pour l'utilisation de LC_COLLATE et LC_CTYPE enfait, et la nouvelle monnaie unique.

    Pour le moment, le Franc Franais (FRF) est toujours la monnaie officielle en France par exemple, maislorsque ce sera l'euro, il suffira de remplacer la locale fr_FR par fr_FR@euro.

    cd /usr/lib/locales rm fr fr_FR mv fr_FR@euro fr_FR

    La solution @euro est supporte par les autres UNIX comme Solaris.

    Pour les shell scripts, il peut tre utile de rajouter LC_TIME=C pour empcher la date d'tre localis,embtant pour les grep et autres qui cherchent Mon Tue ... et non Lun , Mar ...

    Les donnes correspondantes aux prfrences se trouvent gnralement dans /usr/share/locale. S'ilsmanquent, vous pouvez rcuprer leur source

    Concernant les autres fichiers abords dans cet article, vous les trouverez avec les autres fichiers de cetHOWTO sur ma page.

    6.4 Son linux en franaisPour se faire SON linux en franais il faut en pratique disposer des sources de la libc et d'un minimum decomptences en langage C ; ces manipulations sont inutiles pour l'utilisateur standard de Linux qui secontentera d'utiliser les locales de la section prcdente.

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.4 Son linux en franais 26

  • Mais voici donc, pour la bonne bouche, quelques renseignements collects...

    Laurent Chemla nous pilote :

    Si j'ai suivi, il y a deux trucs qui font la mme chose, d'o embrouille, leslocales et un truc appel nls.

    Les locales, sous Linux, a va par dfaut dans /usr/lib/locale,et a contient de quoi prciser entre autres le format desnombres (LC_NUMERIC), les retours des fonctions ctype (isalpha etc) (LC_CTYPE),le format des sommes d'argent (LC_MONETARY), le format des dates (LC_TIME) etencore d'autres dtails. Sur certains Unix, il y a aussi LC_MESSAGES,qui contient les messages de l'OS dans la langue choisie par la variabled'environnement LC_MESSAGES. Pas sous Linux. Sous Linux, c'est nls qui faita, et de fait, nls gre un fichier qui est dans /etc/locale/.(NDG : De nos jours, ils se trouvent plutt dans /usr/lib/locale)D'o l'embrouille. Ils auraient mis a dans /usr/lib/nls, commetout le monde, a aurait vite la confusion. Mais bon.

    Donc, si l'on veut se tenir jour d'nls, il suffit d'aller dans lessources de libc/nls, faire make french et copier libc.dat dans/etc/locale/C/libc.dat et toc, tous les messages sont en franais. Y comprisceux des programmes qui n'utilisent pas setlocale(): c'est perror() qui fait leboulot (du moins je suppose).

    Si l'on veut en plus que les programmes qui utilisent setlocale() utilisent nosrgles franaises, l il faut aller dans les sources delibc/locale et dans chacun des sousrpertoires jeter un oeil sur lefichier exemple, le modifier pour le franais (c'est des tout petitsfichiers), et faire make , avant de copier le rsultat dans/usr/lib/local/fr/ et de faire un export LC_ALL=fr .

    Autre astuce pour mnager les vieux logiciels :

    cd /usr/libln sf /usr/share/locale .

    Ne pas oublier de tlcharger sur le site du lip6 :

    Les pages de manuel en franais, archive manfr*, adaptes par C. Blaess. Il suffit d'extraire lecontenu de l'archive dans le rpertoire /usr/man/fr.

    Une intressante documentation technique : locale.fr, par P. D'Cruze, adapte par . Dumas

    Pour en apprendre davantage lire la page de manuel de locale : bibliothque de pages de manuel 5 ou 7 :

    bash# man 5 locale bash# man 7 locale

    6.5 Les variablesCes variables doivent tre exportes chaque login : mettez les donc dans .bashrc et .bash_login,.tcshrc ou /etc/profile :

    # pour tcsh, utiliser setenv au lieu de export, par exemple setenv LANG fr

    # Les localesLC_CTYPE=ISO88591

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.5 Les variables 27

  • LANGUAGE=frLC_MESSAGES=frLC_ALL=frLANG=frLESSCHARSET=latin1export LC_CTYPE LANGUAGE LC_MESSAGES LC_ALL LANG LESSCHARSET

    # Les raccourcis : sans ll ou d, impossible de voir les fichiers comprenant des# caractres 8 bits ...alias q="cd .."alias ll="ls color=auto a N l"alias d="ls color=auto a N"alias indent="indent kr"alias netscape="export LC_ALL=en_EN ; netscape $* ; LC_ALL=fr_FR"

    # Au cas o Del/BackSpace ne fonctionne pas, essayez l'un des deux :#stty erase ^?#stty erase ^H

    N'oubliez pas : tous les fichiers ici cits dont le nom commence par . doivent se trouver dans votrerpertoire maison /

    6.6 Les caractres 8 bits dans les programmes utilisantreadline tels bash ou ncftp...Readline est une librairie de saisie de caractres avec historique et compltion ; elle est utilise par denombreux programmes comme bash, ncftp, gnuplot...

    Par dfaut, le 8e bit sert coder la touche Meta.

    Elle est utilise pour coder certaines commandes mais la touche Escape ou chap peut la remplacer.

    Si vous souhaitez voir et saisir des accents avec les applications compiles avec readline, comme bash pourles versions suprieures 1.13, ajoutez ceci dans votre fichier $INPUTRC, par dfaut ~/.inputrc) :

    # Permettre de rentrer & recevoir des caractres accentusset metaflag onset convertmeta offset inputmeta onset outputmeta on

    # Pas de bip audible mais visible# set bellstyle visible

    # Pour faire marcher Home, End, Delete, Esc + Delete & Esc + BackSpace"\e[1~":beginningofline"\e[3~":deletechar"\e[4~":endofline"\e\Ch": backwardkillword"\e\e[3~": killword

    Cela vous permettra d'effacer des caractres vers l'avant avec Delete et vers l'arrire avec BackSpace ,ceci n'tant pas prvu sur les tables de clavier par dfaut mimant le comportement d'un clavier de consoleVT100 .

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.6 Les caractres 8 bits dans les programmes utilisant readline tels bash ou ncftp... 28

  • Les deux dernires options vous permettront d'utiliser Home et End pour aller au dbut et la fin de laligne en cours d'dition.

    Pour pouvoir employer une touche il suffit d'obtenir son code et l'associer une fonction grce ce fichier ;pour obtenir le code d'une touche invoquer cat puis appuyer sur la touche : son code apparat.

    Le code physique :

    ^[

    correspond la squence d'chappement.

    Par exemple, si le code de Home est ^[[7 il suffit d'ajouter une ligne : "\e[7~": beginningofline

    au .inputrc.

    Plus de documentation est disponible sur la page de manuel de bash, section READLINE.

    On peut aussi, grce la variable d'environnement INPUTRC, utiliser un fichier commun tous lesutilisateurs.

    Enfin, je vous recommande d'utiliser ce fichier .bashrc placer dans votre rpertoire maison : # ~/.bashrc : excut par bash(1) pour les shells lancs aprs le login.

    # Le pathPATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin:/usr/local/bin"

    # Le promptPS1="(\u@\h:\W)$ "

    # L'utilisateurENV=$HOME/.bashrcUSERNAME="votre nom"

    # Les locales_CTYPE=ISO88591LANGUAGE=frLC_MESSAGES=frLC_ALL=frLANG=frLESSCHARSET=latin1export LC_CTYPE LANGUAGE LC_MESSAGES LC_ALL LANG LESSCHARSET

    # Les raccourcisalias q="cd .."alias ll="ls color=auto a N l"alias d="ls color=auto a N"alias indent="indent kr"alias elmbox="elm f ~/Mail/Inbox"alias netscape="export LC_ALL=en_EN ; netscape $* ; LC_ALL=fr_FR"

    # Au cas o Del/BackSpace ne fonctionne pas, essayez l'un des deux :#stty erase #stty erase ^H

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.6 Les caractres 8 bits dans les programmes utilisant readline tels bash ou ncftp... 29

  • # Refuser le talk & le write#mesg n

    # Permettre les coredumps#ulimit c nombre_max_de_Ko

    #Fixer le masque de cration de fichiers#umask 022

    Le fichier .bash_profile ou .bash_login, excut par bash(1) lors des logins, y est strictement identique maispeut, si vous le voulez, prsenter des diffrences pour afficher par exemple une citation en laant leprogramme fortune .

    6.7 zshCeluici devrait se contenter d'un stty pass8.

    Si cela ne suffisait pas, rajouter dans le .zshrc ou dans /etc/zshrc: bindkey "\e[2~" yank bindkey "\e[3~" deletechar bindkey "\e[1~" beginningofline bindkey "\e[4~" endofline bindkey "\e[5~" uplineorhistory bindkey "\e[6~" downlineorhistory

    6.8 tcshPour tcsh, placer, dans le fichier /etc/csh.login ou dans les fichiers .tcshrc des utilisateursconcerns, les variables indiques plus haut en remplaant export par setenv:

    setenv LC_CTYPE=ISO88591 setenv LANGUAGE=fr setenv LC_MESSAGES=fr setenv LC_ALL=fr setenv LANG=fr setenv LESSCHARSET=latin1

    6.9 Pour tous les shellsRemplacer 'iso_8859_1' par 'iso88591' si cela ne fonctionne pas, voire french.iso88591.fr_FR ou fr_BR,fr_CA, fr_CH, fr_LU...

    propos de LANG, il vaut mieux viter fr_FR et lui prfrer fr car certains programmes ne passent pasvraiment par la resolution de locales mais lisent LANG directement...

    Si nls est install, les routines correspondantes sont utilises, sinon tcsh agit en iso_8859_1, quelle que soitles valeurs donnes LANG et LC_CTYPE : cf. la section NATIVE LANGUAGE SYSTEM de tcsh(1).

    Selon le DanishHOWTO, utiliser :

    (guylhem@victis:tcsh)# setenv LC_CTYPE ISO88591

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.7 zsh 30

  • (guylhem@victis:tcsh)# stty pass8

    6.10 L'heureRien n'est plus facile que de laisser Linux le soin de passer de l'heure d't l'heure d'hiver etrciproquement...

    a) D'abord, quelle heure estil :) ?

    Aprs avoir regard sur la pendule la plus proche de vous, tapez :

    clock

    puis

    date

    La premire heure est celle du bios, la seconde celle calcule par Linux partir de /etc/zoneconfig.

    Pour peu que vous ayez install timezone, votre machine peut jongler aisment entre les diffrents fuseauxhoraires... ce que les DOS ou Windows ne permettent pas !

    b) L'heure du choix !

    De l, deux possibilites : soit vous dcidez de laisser l'heure systme l'heure locale, peu pratique, exceptsi vous hbergez aussi sur votre disque dur ces systmes d'exploitation peu volu, ne sachant mme pasexploiter les fuseaux horaires, soit vous passez l'heure de Greenwich, Linux se chargeant de l'adapter votre fuseau horaire.

    Dans ce cas, les grands voyages l'tranger avec un portable tout neuf quip de Linux se feront en toutesimplicit : le dernier paragraphe vous expliquera comment changer de fuseau horaire facilement...

    c) Le rglage

    Pour procder, regardez d'abord si l'heure systme retourne par clock est l'heure locale ou l'heure deGreenwich.

    Vous avez bien regard une pendule comme je vous le conseille plus haut, n'estce pas ?

    Si clock vous retourne l'heure locale, il va falloir jongler un peu avec les fuseaux horaires, sinon passezdirectement l'tape rglage du fuseau .

    Pour les franais, belges wallons et suisses romands :

    Vous tes normalement dans une zone horaire MET (Medium European Time, soit GMT+1).

    La zone MET DST correspond elle l'heure d't active (GMT + 2).

    Selon les dcisions futures de la cour europenne, l'heure d't daylight savings risque d'tre abandonn...ce qui compliquera cette explication !

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.10 L'heure 31

  • Pour les canadiens franais :

    Vous tes dans une zone horaire GMT4 si vous habitez autour de Montral .

    Pour les autres provinces, consulter un dictionnaire !

    Premirement, effacez le fichier /etc/localtime ou /usr/lib/zoneinfo/localtime (l'emplacement varie selon lesdistributions ; si vous avez les deux fichiers, effacez /etc/localtime : l'autre fichier doit certainement tre unlien vers /etc/localtime).

    Ds lors, clock et date doivent vous retourner la mme heure...

    Pour les canadiens franais : utilisez GMT+4

    Pour les franais, belges wallons et suisses romands :

    Si vous lisez ce document en t, le dcalage de l'heure locale par rapport l'heure de Greenwich est de deuxheures, on va donc mettre temporairement le fuseau en GMT2, soit vous lisez ce document en hiver et ilconvient de remplacer tous les 2 par des 1 dans les exemples suivants...

    GMT2 ?!!? Alors que le fuseau est GMT+2 ?

    Ceci va vous retourner l'heure de Greenwich dont on a besoin pour rgler le systme : tapez :

    ln sf /usr/lib/zoneinfo/Etc/GMT2 /etc/zoneconfig

    clock

    date

    L'heure calcule correspond donc l'heure de Greenwich, l'heure systme l'heure locale... soit l'inverse dece que l'on veut.

    Un simple : clock w

    Va alors mettre l'heure du systme en heure de Greenwich, utilisant pour cela l'heure locale inversevolontairement avec l'heure systme.

    d) Rgler le fuseau horaire :

    Tapez alors : ln sf /usr/lib/zoneinfo/Europe/Votreville /etc/zoneconfig

    Et voil ! Le systme est l'heure de Greenwich, la conversion vers le fuseau horaire local et l'heure d't sefaisant automatiquement.

    Si vous habitez hors Europe, procdez de mme en remplaant les 2 par X , X reprsentant l'opposde votre dcalage horaire (par exemple 4 au Qubec, donc X=+4...)

    e) Modifier le fuseau horaire :

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.10 L'heure 32

  • Si vous partez l'tranger, il est alors simple de modifier l'heure locale de votre portable : par exemple sivous partez pour Moscou :

    ln sf /usr/lib/zoneinfo/Europe/Moscow /etc/zoneconfig

    Trs simple et trs utile : plus besoin de se souvenir du dcalage horaire (plus ou moins X heures) puisqueLinux se charge dsormais de tout !

    6.11 viNormalement, aucune modification n'est ncessaire part l'utilisation de loadkeys (dtaille plus haut).

    Ce fichier .vimrc pourrait toutefois vous tre utile si vous utilisez vim au lieu d'elvis :

    " Les guillemets anglais " signifient mis en commentaire

    " viter un avertissement version incorrecte :version 4.0

    " Utiliser les dfauts de vim, bien mieuxset nocompatible

    " Autoriser le BackSpace sur tout :set bs=2

    " Police utiliser sous X11 :"set guifont=miscfixedmediumrnormal141307575c70iso88591

    " Fixer la csure automatique de la ligne N caractres :set tw=72

    " Faire apparatre les tabulations et les espacesset list

    " Changer les dfauts pour voir les espaces inutiles et les tabulationsset listchars=tab:,trail:hi nontext ctermfg=redhi nontext ctermbg=blue

    " Indentation (pour les programmeurs) :" set cindent

    " Rglages souris :"set mouse=a

    " Ligneset nowrapscan

    " Montrer les correspondances :set showmatch

    " Montrer le modeset showmode

    " Indentation intelligente (pour les programmeurs) :" set uc=0

    " Faire fonctionner BackSpace :

    Le FrancophonesHOWTO : Linux & la langue franaise

    6.11 vi 33

  • set t_kD=^?

    " Doit se trouver aprsmap ^H X

    " Faire fonctionner Delete :map \e[3~ x

    " Cacher la souris lorsqu'on tape :set mousehide

    " Faire voir les correspondances lors de recherches :" set hlsearch

    " Colorer l'intrieur des commentaires en C :let c_comment_strings=1

    " Couleur pour xiterm, rxvt, nxterm, colorxterm :if has("terminfo") set t_Co=8 set t_Sf=\e[3%p1%dm set t_Sb=\e[4%p1%dm else set t_Co=8 set t_Sf=\e[3%dm set t_Sb=\e[4%dmendif

    " Coloration syntaxique :if ett_Co > 1 syntax onendif

    " Autoriser l'dition de fichiers gzipps

    augroup gzip " Supprimer toutes les autocommandes au! autocmd BufReadPre,FileReadPre *.gz set bin autocmd BufReadPost,FileReadPost *.gz '[,']!gunzip autocmd BufReadPost,FileReadPost *.gz set nobin autocmd BufReadPost,FileReadPost *.gz execute ":doautocmd BufReadPost " . expand("%:r")

    autocmd BufWritePost,FileWritePost *.gz !mv :r autocmd BufWritePost,FileWritePost *.gz !gzip :r

    autocmd FileAppe