LaTeX

De Disposition de clavier francophone et ergonomique bépo

(Redirigé depuis Latex)

La disposition bépo permet d'écrire de très nombreux caractères et s'intègre très bien dans un contexte d'utilisation « UTF-8. » LaTeX fait partie des logiciels de composition les plus aboutis de ce point de vue, mais il n'est pas toujours facile de s'y retrouver, car les options en rapport avec Unicode sont nombreuses et les indications disponibles, potentiellement contradictoires. Le but de cette page est de vous permettre de mettre sur pied un environnement LaTeX adapté à la composition de texte en français et en UTF-8.

Support d'UTF-8

Support standard

Il existe de nombreuses distributions TeX supportant l’UTF-8 (la distribution standard TexLive, disponible sur presque toutes les plateformes (sur Mac, c’est sous le nom MacTeX, mais c’est la même), la distribution MiKTeX, pour Windows seulement, etc.). Toutefois, LaTeX dispose également d'un certain nombre de macros générant des caractères qui n’ont pas forcément exactement la même apparence visuelle que leur correspondants UTF-8 (selon les polices utilisées). Ce problème tend à se régler et dans une approche standard, si votre distribution Latex est connue pour offrir un support d'UTF-8, les déclarations suivantes devraient vous convenir :

% dans le préambule du document
 
\usepackage[utf8]{inputenc}    % assure que la rédaction du document .tex supporte l'UTF-8
 
\usepackage[french]{babel}     % prend en charge les spécificités du français
 
\usepackage[cyr]{aeguill}      % autorise les polices adobe pour les sorties PDF,
                               % assure la gestion des guillemets
                               % cette option n'est plus vraiment utile avec les
                               % versions récentes des distributions TeX
 
\usepackage[T1]{fontenc}       % essentiellemet pour les sorties PDF. Par défaut,
                               % charge les polices ComputerModern appropriées
                               % désormais, elles sont souvent remplacées par les
                               % LatinModern avec la déclaration suivante
 
\usepackage{lmodern}           % charge les polices LatinModern appropriées pour un rendu PDF

Évidemment, l'installation des paquets mentionnés est un pré-requis. Ils font partie des distributions courantes (Tex-Live, MiKTeX), auquel cas il n'y a rien à installer en plus.

Caractères au cas par cas

Certains frontends LaTeX récents gèrent nativement l’utf-8, vous pouvez donc y taper « normalement » au clavier la plupart des caractères de texte : par exemple dans TeXShop (sur Mac), TeXWorks (clone de TeXShop, multi-plateformes), la plupart des éditeurs de texte récents, et d’autres sans doute… Deux connditions néanmoins :

  • que votre distribution TeX gère bien l’utf-8 (cf. ci-dessus, c’est le cas de toutes les distributions standard récentes : TeXLive, MikTeX, etc.) ;
  • que les caractères voulus existent dans la police utilisée, bien sûr !)

Néanmoins, si ça ne suffit pas : par souci de cohérence et afin de réaliser une présentation soignée, il est possible d'ajouter une couche d'UTF-8 en assurant la conversion automatique des caractères UTF-8 en leur homologues Latex, « à la volée. »

L’idée est ici de fournir quelques lignes à copier/coller pour supporter au moins tout ce qui peut être entré avec un clavier bépo, pas de supporter tout UTF-8 ! Les instructions qui suivent sont également à placer dans le préambule du document. Vous y trouverez les caractères grecs ainsi que quelques symboles mathématiques. Cette liste pourrait idéalement être complétée pour prendre en charge l’intégralité des caractères supportés par le bépo…

Sous l'éditeur Lyx, il suffit de copier-coller les lignes ci-dessous dans Document / Paramètres / Préambule LaTeX.

\DeclareUnicodeCharacter{0391}{\ensuremath{\Alpha}}
\DeclareUnicodeCharacter{03B1}{\ensuremath{\alpha}}
\DeclareUnicodeCharacter{0392}{\ensuremath{\Beta}}
\DeclareUnicodeCharacter{03B2}{\ensuremath{\beta}}
\DeclareUnicodeCharacter{0393}{\ensuremath{\Gamma}}
\DeclareUnicodeCharacter{03B3}{\ensuremath{\gamma}}
\DeclareUnicodeCharacter{0394}{\ensuremath{\Delta}}
\DeclareUnicodeCharacter{03B4}{\ensuremath{\delta}}
\DeclareUnicodeCharacter{0395}{\ensuremath{\Epsilon}}
\DeclareUnicodeCharacter{03B5}{\ensuremath{\epsilon}}
\DeclareUnicodeCharacter{0396}{\ensuremath{\Zeta}}
\DeclareUnicodeCharacter{03B6}{\ensuremath{\zeta}}
\DeclareUnicodeCharacter{0397}{\ensuremath{\Eta}}
\DeclareUnicodeCharacter{03B7}{\ensuremath{\eta}}
\DeclareUnicodeCharacter{0398}{\ensuremath{\Theta}}
\DeclareUnicodeCharacter{03B8}{\ensuremath{\theta}}
\DeclareUnicodeCharacter{0399}{\ensuremath{\Iota}}
\DeclareUnicodeCharacter{03B9}{\ensuremath{\iota}}
\DeclareUnicodeCharacter{039A}{\ensuremath{\Kappa}}
\DeclareUnicodeCharacter{03BA}{\ensuremath{\kappa}}
\DeclareUnicodeCharacter{039B}{\ensuremath{\Lambda}}
\DeclareUnicodeCharacter{03BB}{\ensuremath{\lambda}}
\DeclareUnicodeCharacter{039C}{\ensuremath{\Mu}}
\DeclareUnicodeCharacter{03BC}{\ensuremath{\mu}}
\DeclareUnicodeCharacter{039D}{\ensuremath{\Nu}}
\DeclareUnicodeCharacter{03BD}{\ensuremath{\nu}}
\DeclareUnicodeCharacter{039E}{\ensuremath{\Xi}}
\DeclareUnicodeCharacter{03BE}{\ensuremath{\xi}}
\DeclareUnicodeCharacter{039F}{\ensuremath{\Omicron}}
\DeclareUnicodeCharacter{03BF}{\ensuremath{\omicron}}
\DeclareUnicodeCharacter{03A0}{\ensuremath{\Pi}}
\DeclareUnicodeCharacter{03C0}{\ensuremath{\pi}}
\DeclareUnicodeCharacter{03A1}{\ensuremath{\Rho}}
\DeclareUnicodeCharacter{03C1}{\ensuremath{\rho}}
\DeclareUnicodeCharacter{03A3}{\ensuremath{\Sigma}}
\DeclareUnicodeCharacter{03C3}{\ensuremath{\sigma}}
\DeclareUnicodeCharacter{03A4}{\ensuremath{\Tau}}
\DeclareUnicodeCharacter{03C4}{\ensuremath{\tau}}
\DeclareUnicodeCharacter{03A5}{\ensuremath{\Upsilon}}
\DeclareUnicodeCharacter{03C5}{\ensuremath{\upsilon}}
\DeclareUnicodeCharacter{03A6}{\ensuremath{\Phi}}
\DeclareUnicodeCharacter{03C6}{\ensuremath{\varphi}}
\DeclareUnicodeCharacter{03A7}{\ensuremath{\Chi}}
\DeclareUnicodeCharacter{03C7}{\ensuremath{\chi}}
\DeclareUnicodeCharacter{03A8}{\ensuremath{\Psi}}
\DeclareUnicodeCharacter{03C8}{\ensuremath{\psi}}
\DeclareUnicodeCharacter{03A9}{\ensuremath{\Omega}}
\DeclareUnicodeCharacter{03C9}{\ensuremath{\omega}}
\DeclareUnicodeCharacter{00A0}{~}
\DeclareUnicodeCharacter{00AC}{\ensuremath{\neg}}
\DeclareUnicodeCharacter{00B1}{\ensuremath{\pm}}
\DeclareUnicodeCharacter{00D7}{\ensuremath{\times}}
\DeclareUnicodeCharacter{00F7}{\ensuremath{\div}}
\DeclareUnicodeCharacter{2026}{\ldots}
\DeclareUnicodeCharacter{207A}{\ensuremath{^{+}}}
\DeclareUnicodeCharacter{207B}{\ensuremath{^{-}}}
\DeclareUnicodeCharacter{2020}{\ensuremath{\dagger}}
\DeclareUnicodeCharacter{2021}{\ensuremath{\ddagger}}
\DeclareUnicodeCharacter{2212}{\ensuremath{-}}

Concernant l'usage du plugin vim-latex

Le plugin vim-latex remplace à la volée, en mode insertion, un certain nombre de successions de touches. Par exemple, la succession de touche ^a, au lieu de donner « â » est remplacée par « \mathbf{}. »

Pour l'installer, vous pouvez taper dans un terminal :

apt-get install vim-latexsuite


Si vous souhaitez rétablir le comportement par défaut, permettant de composer l'utile lettre « â », vous pouvez rajouter la ligne suivante au fichier imaps.vim[1] (locate imaps.vim dans le terminal pour trouver le répertoire où se trouve ce fichier) ou plus simplement dans ~/.vimrc :

" enlève le raccourci qui transforme ^a en \mathbf{}
" et crée un raccourci <Alt-B> qui écrit \mathbf{}
imap <Alt-B> <Plug>Tex_MathBF

Une autre astuce, pour tex.vim (en général situé dans ~/.vim/after/ftplugin/), qui évite que la succession de lettres majuscules « ENO » soit remplacée par « \begin{note} \end{note} » :

call IMAP('ENO', 'ENO', 'tex')

Astuces utilisateurs

  • Utilisateur:Jd/LaTeX : j'ai créé mon propre package modulaire, ce qui peut intéresser certains d'entre vous, même si ça n'a pas de rapport direct avec le bépo à part la composition en français.

Références

  1. Documentation de latex-suite à ce sujet