Chapter 11 LATEX, le français et les autres langues
Bien que prévu au départ pour la langue de Shakespeare,
TeX/LATEX permet de rédiger facilement dansnotre belle langue
française.
11.1 Comment franciser un document LATEX ?
'babel' version 3.6 disponible sur ftp://ftp.fdn.org/pub/CTAN/macros/latex/required/babel/,
est un package de J. Braams.
babel permet de composer des documents multilingues. Son appel sous
LATEX 2e se fait par
-
\usepackage[langue_1, langue_2, ..., langue_n]{babel}.
Parmi les langues actuellement disponibles, on peut citer english,
german, italian, french, français. Le changement de langue se fait
via la commande
-
Exemple
- :
-
\selectlanguage{spanish}
%%%% fin exemple %%%%
La langue par défaut est la dernière de la liste passée en paramètre
à babel (langue_n dans l'exemple précédent).
Ce package est le plus courant sur le plan international mais il est
souvent contesté en France. On lui préfère alors le package 'french'.
Le package 'french' de B. Gaulle est disponible par ftp sur ftp://ftp.gutenberg.eu.org/pub/gut/french/
ou sur ftp://ftp.loria.fr/pub/ctan/language/french/.
Lors de l'installation, respectez les instructions d'installation
accompagnant french.sty (une FAQ est également disponible). Le fichier
des motifs de césure est désormais unique (frhyph.tex), que l'on travaille
avec le codage de fontes T1 ou OT1 (avec option MlTeX).
Vous pouvez également utiliser la série de commandes suivantes, gentiment
envoyées par Denis Barbier:
-
---------- citation ----------
make -f Makefile.unx ALLTEXPATH=/usr/share/texmf \
install-hyphen install-config install-base install-index texhash
Puis modifier le fichier /usr/share/texmf/web2c/fmtutil.cnf et ajouter la ligne ci-dessous:
frlatex tex language.dat -mltex frlatex.ini
Taper ensuite fmtutil --byfmt frlatex texlinks
La commande pour compiler du LaTeX avec french est alors frlatex.
------------- fin -------------
-
Remarque :
- Dans un fichier source (.tex), il est conseillé de charger
french après tous les autres packages.
french prend notamment en charge la mise en page, la traduction des
balises LATEX visibles dans le document final (Chapitre, Table
des matières, ...), ....
-
ATTENTION :
- ces deux options (french et babel) ne sont pas toujours
parfaitement compatibles (les dernières versions le sont french3,49
et babel 3.6).
AL: A vérifier...
-
\usepackage[francais]{babel} et \usepackage[frenchb]{babel}
font appel à l'option frenchb maintenue par D. Flipo.
- \usepackage[french]{babel} fait appel au package
french de B. Gaulle à condition que french ait été installé (et plus
particulièrement french.ldf)
- les versions de tous ces packages sont très importantes (babel, frenchb,
french) pour une bonne coexistence. Une version 3.6 beta de Babel
est sur CTAN mais il paraît qu'il y avait un pb avec french. Babel
3.5e et french V3.46 collaborent assez bien dans tous les sens.
- les fichiers de césure sont les mêmes pour babel et pour french.
-
ATTENTION :
- dernières distributions de french (V4 et post) ne sont
plus compatibles LATEX 2.09 !
11.2 Comment corriger les coupures de mots accentués ?
Une solution consiste à utiliser MlTeX (multilingual TeX). C'est
le moteur TeX de M. Ferguson. Il permet en particulier de gérer
les coupures de mots accentués. Certaines des idées utilisées dans
ce moteur ont d'ailleurs été reprises par la suite dans TeX V3.
Suivant la fonte avec laquelle on travaille (i.e. suivant qu'elle
dispose des caractères accentués ou non), il peut exister des problèmes
d'interaction entre les lettres accentuées et les règles de coupure
des mots. En effet, l'utilisation d'une fonte 7 bits impose que les
caractères accentués soient fabriqués par la macro \accent
de TeX qui inhibe toute coupure pour la suite du mot.
En LATEX 2e l'utilisation de fontes respectant la norme T1 (codage
de Cork + 8 bits) permet d'éviter ces problèmes. Il faut alors faire
appel au package 'fontenc' :
Ce package nécessite que des fontes encodées T1 (suffisamment récentes)
aient été installées (fontes dc par exemple).
Il faut en outre utiliser des modèles de coupure de mot encodées T1.
Il existe pour cela deux fichiers disponibles sur CTAN. Il s'agit
des fichiers fr8hyph.dc (ou mieux f8hyph, beaucoup plus récent) pour
un codage 8 bits (fonte avec caractères accentués telle que dc) et
fr7hyph (respectivement f7hyph) pour un codage 7 bits (accents TeX).
L'association GUTenberg propose également de tels fichiers (cf. french
paragraphe ??).
Il peut y avoir également un problème de versions, l'algorithme de
coupure des mots a changé entre les versions 2.9 et 3.0. Ainsi si
vous utilisez Tex V.3.0 ou plus, il faut veiller à ce que les fichiers
plain.tex et lplain.tex soient également en version 3.0 ou plus.
11.3 Comment utiliser les lettres accentuées ?
Les accents disponibles sous LATEX sont présentés à la question
??.
Pour éviter ces commandes barbares d'accentuation des caractères,
on peut utiliser une fonte contenant toutes les lettres accentuées
nécessaires (code 8 bits). Si besoin, il faut préciser un codage d'entrée
via l'instruction :
-
\usepackage[codage d'entrée]{inputenc}
L'option est rendue nécessaire par le fait que les codes de caractères
au-delà de 127 sont différents sous Dos, MacOS et Unix... Ainsi, le
codage à preciser est latin1 pour un système Unix ou un PC sous Windows,
applemac sous Mac adapté au français ou encore cp850 pour le code-page
850 sur PC (sous MS-DOS). Il existe également ansinew, cp438, latin2
selon les systèmes.
-
Exemple :
-
-
\usepackage[applemac]{inputenc}
%%%% fin exemple %%%%
-
ATTENTION :
- inputenc.sty « casse » les efforts faits par mlTeX
lorsqu'on utilise les fontes codées OT1 (fontes CMR ou PostScript).
mapcodes de M. Piotrowski autorise également un grand nombre de codages
de caractères (iso8859-1 (latin1), iso8859-2 (latin2), ibm850 ou 852,
hproman8, etc).
11.4 Comment composer du texte en grec moderne ou classique ?
Il suffit d'utiliser l'option greek du package babel disponible sur
CTAN. Son site primaire est ftp://obelix.ee.duth.gr/pub/TeX/.
La version 1.0 fournie avec babel ne supporte pas les accents ni les
marques de respirations par contre la toute nouvelle version 1.1 les
supporte.
On trouvera un fichier de césure de mots dans ftp://obelix.ee.duth.gr/pub/TeX/hyphen.greek.
11.5 Comment composer du texte en hébreu moderne ou classique ?
Il suffit d'utiliser le package ArabTeX 3.05 disponible sur CTAN.
Son site primaire est ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/.
Ce package permet la vocalisation mais pas les marques de cantillation.
-
Exemple :
-
-
\documentclass{article}
\usepackage{arabtex,hebtex}
\setcode{standard}
\sethebrew
\begin{document}
Voici du texte en hébreu
\begin{arabtext}
yOm tOb
\end{arabtex}
Fin du texte en hébreux
\end{document}
%%%% fin exemple %%%%
11.6 Comment composer du texte en arabe ?
Il suffit d'utiliser le package ArabTeX 3.05 disponible sur CTAN.
Son site primaire est ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/.
11.7 Comment définir les césures de groupes de mots conjugués avec un
trait d'union ?
(B. Gaulle) Par défaut, TeX coupe tout mot composé à l'endroit
exact du trait d'union et uniquement à cet endroit. Mais cela peut
se modifier. Dans ce but, j'ai ajouté à french (V4,02) une commande
\allowhyphens qui permet de laisser à TeX le choix
des autres coupures dans le mot.
-
Remarque :
- la commande \hyphenation ne permet
pas d'intégrer un trait d'union car ce caractère sert à indiquer un
point de coupure et uniquement cela.
Voici donc la solution :
-
\showhyphens{{définissez\allowhyphens-le}
donne alors comme points de coupure : dé-fi-nis-sez-le