Aide mémoire pour XƎTeX & LaTeX
Avertissement : Je ne suis pas un professionnel de LaTeX, je ne prétends pas être exhaustif, ni exact dans ce que je décris ici. Ce document est à la base un aide mémoire à usage personnel, je le publie au cas où il peut répondre à vos questions, mais je ne prétends pas pouvoir vous apporter une solution qui fonctionne pour vous.
N'attendez pas non plus ici une introduction ou une explication de ce qu'est LaTeX, il existe déjà de nombreux ouvrages qui le font mieux que moi :
- Une courte (?) introduction à LaTeX
- Joli manuel pour LaTeX, par Benjamin Bayart
- Tout ce que vous avez toujours voulu savoir sur LaTeX sans jamais oser le demander, par Framabook
- The LaTeX Guide, sur Wikibooks
- The Beauty of LaTeX
Quelle distribution utiliser ?
Personnellement, j'ai opté pour XƎTeX dont la gestion des fontes de caractères et de l'encodage UTF8 me semble plus simple. Cela ne m'a pas empêché d'appliquer la plupart des instructions pour LaTeX à XƎTeX, donc je pense que ce n'est pas trop d'ennuis d'essayer directement XƎTeX si vous débutez comme moi. Sur les distributions Debian et Ubuntu, l'installation de XƎTeX se fait par
sudo apt-get install texlive-xetex
Je vous recommande vivement d'installer également
sudo apt-get install texlive-extra-utils gedit-latex-plugin
Pour compiler un document .tex en PDF, la commande est $ xelatex xela.tex
Utiliser une fonte installée sur le système
Avec XƎTeX, vous pouvez utiliser n'importe quelle fonte installée sur votre système, pas seulement les fontes LaTeX. Néanmoins je vous conseille de bien choisir la fonte que vous voulez utiliser, il serait dommage de ne pas profiter des possibilités offertes par XƎTeX en la matière. Donc je pense qu'il vaut mieux choisir des fontes dans des formats plus modernes, comme OpenType. Procéder ainsi dans l'entête du document :
%font
\usepackage{xltxtra}
\defaultfontfeatures{Scale=MatchLowercase}
\setromanfont[Mapping=tex-text]{DejaVu Serif}
\setsansfont[Mapping=tex-text]{DejaVu Sans}
\setmonofont[Mapping=tex−text,Scale=0.8]{DejaVu Mono}Cela utilisera la fonte DejaVu L'option defaultfontfeatures impose des options pour toutes les polices, mais vous pouvez aussi spécifier pour chaque fonte, par exemple si vous trouvez la fonte monospace trop grande:
\setmonofont[Scale=0.8]{DejaVu Mono}Sinon, il y a une fonte que j'aime beaucoup, Linux Libertine. Il s'agit d'une fonte sérif sous licence libre. Elle vient avec une fonte pour les petites capitales et de multiples fonctionnalités. La documentation officiellevous en dira plus. Dans l'entête, pour avoir les ligatures et utiliser les chiffres en mode « old-style » et d'autres options cool :
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text, Fractions=On}
\setromanfont [Ligatures={Common}, Numbers={OldStyle}, Variant=02]{Linux Libertine O}
%\setsansfont{Linux Biolinum O}
%%% remplace & par beaucoup plus fashion!
\chardef\&="E050Enfin parmi les fontes que j'aime beaucoup, il y a aussi Gentium, une fonte sérif à l'ancienne très sympa. (et puis, ça coûte moins cher que Garamond !)
Avoir les guillemets français1
C'est un truc très con, mais il m'a fallu longtemps2 avant de trouver une solution impeccable au niveau du rendu, avec les espaces insécables et les bons écarts entre les caractères, tout en ayant un document qui ne soit pas trop lourd… par exemple avant j'utiliser \og et \fg pour mettre des guillemets « » !! C'était vraiment pas pratique. Avec cette solution, vous n'aurez qu'à écrire "texte" pour obtenir un « texte » impeccable (certainement bien meilleur que le rendu HTML qu'on a ici). Insérer dans l'entête :
\usepackage[frenchb]{babel}
\usepackage[babel,french=guillemets*]{csquotes}
\MakeOuterQuote{"}
\frenchspacingPour que cela fonctionne il faut avoir le paquet csquotes installé, je pense que c'est inclus dans le paquet que je recommande d'installer un peu plus haut, texlive-extra-utils. Si votre document est en anglais remplacez guillemets par quotes et french par english (retirez le frenchspacing bien entendu).
Écrire un passage dans une autre langue
Pour cela, n'oubliez pas d'ajouter l'option dans l'entête avec babel
%% dans l'entête
\usepackage[english,frenchb]{babel}
%si votre texte est principalement en français
%% dans votre texte
Le texte en français, \selectlanguage{english}{la partie du texte en anglais} et la suite du texte en français.Si votre partie en anglais comporte une citation, vous verrez que les guillemets seront automatiquement selon les règles anglaises. En revanche si vous voulez citer une phrase en anglais, les guillemets généraux doivent être en français, par exemple ainsi
Comme disait Frank Zappa, "\selectlanguage{english}{Anything, Any Time, Anywhere--for No Reason at All}".Une solution alternative, pour plusieurs pararaphes par exemple, ou bien pour toute une partie du document,
\begin{otherlanguage}{english}Votre texte en anglais\end{otherlanguage}
% ou bien pour toute la partie du document après,
\selectlanguage{frenchb}%francaisDivers
| Objectif [?] | Exemple | Résultat (si possible) |
| Texte en exposant [?] | 3\up{e}, M\up{me} |
3e, Mme |
| Texte en rotation à 5° | \rotatebox{5}{Texte de biais} |
|
| Remplir tout l'espace vertical disponible | \vfill |
Exemple de document-type
Voici le modèle que j’utilise pour des textes en français.
% use 'xelatex' to compile
\documentclass[12pt,a4paper,oneside]{article}
%\usepackage[utf8]{inputenc}
\usepackage[english,frenchb]{babel}
\usepackage[babel,french=guillemets*]{csquotes}
\MakeOuterQuote{"}
\frenchspacing
\FrenchFootnotes
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text, Fractions=On}
\setromanfont [Ligatures={Common}, Numbers={OldStyle}, Variant=02]{Linux Libertine O}
%\setsansfont{Linux Biolinum O}
%%% remplace & par beaucoup plus fashion!
\chardef\&="E050
\usepackage{ifpdf}
\usepackage[colorlinks,filecolor=blue,linkcolor=blue,citecolor=blue,urlcolor=blue,breaklinks]{hyperref}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{wrapfig}
\usepackage[usenames,dvipsnames]{color}
% taking care of orphans/widows
\widowpenalty=10000
\clubpenalty=10000
\raggedbottom
\sloppy
\hypersetup{
pdftitle={},
pdfsubject={},
pdfkeywords={},
pdfauthor={Hugo Roy}
}
\title{}
\author{ \bsc{}}
\date{}
\begin{document}\selectlanguage{frenchb}%francais
\maketitle
\end{document}Comment obtenir les logos LaTeX & XƎTeX en HTML+CSS
<span class="latex">L<sup>a</sup>T<sub>e</sub>X</span> <span class="xetex">X<sub>Ǝ</sub>T<sub>e</sub>X</span>
.latex sub {
vertical-align: -0.3ex;
margin-left: -0.1667em;
margin-right: -0.025em;
}
.xetex sub {
vertical-align: -0.3ex;
margin-left: -0.1667em;
margin-right: -0.125em;
}
.latex sub, .latex sup, .xetex sub {
font-size: 0.9em;
text-transform:uppercase;
}
.latex sup {
font-size: 0.85em;
vertical-align: 0.15em;
margin-left: -0.26em;
margin-right: -0.05em;
}Remarques, suggestions ?
N'hésitez pas à m'envoyer un email
Merci à Philippe Combot, erreur sur le code HTML corrigée :-)