Commit aa125805 authored by Alexandre Morlet's avatar Alexandre Morlet
Browse files

Relecture de 'Construire son préambule'

parent d02b3c41
......@@ -23,7 +23,7 @@ Code :
2. LaTeX : Guide de survie
* [/] Structure d’un fichier source : les bases
* [/] Quelques notions sur la syntaxe LaTeX
* [V] Construire son préambule
* [/] Construire son préambule
* [V] L’environnement document et sa structure
* [...] Formater le texte
* [V] Les listes
......
......@@ -426,77 +426,73 @@ L'utilisation de ce groupe vide est illustrée ci-dessous. Dans le premier cas,
\section{Construire son préambule}
\label{sec:preambule}
Le préambule d'un document~\LaTeX~est l'ensemble des instructions situées avant le \textbackslash begin\{document\}. Cela comprend le \emph{documentclass}, les chargement de bibliothèques, les configurations globales et les métadonnées. La construction du préambule est donc une étape cruciale dans l'écriture d'un document~\LaTeX. Cette section vise a vous donner suffisement d'éléments pour comprendre leur construction et vous présentera un préambule d'exemple que vous pourrez utiliser comme base dans vos documents.
Le préambule d'un document \LaTeX{} est l'ensemble des instructions situées avant le \verb|\begin{document}|. Cela comprend le \texttt{documentclass}, les chargement d'extensions, les configurations globales et les métadonnées. La construction du préambule est donc une étape cruciale dans l'écriture d'un document \LaTeX{}. Cette section vise à vous donner suffisamment d'éléments pour comprendre leur construction et vous présentera un préambule d'exemple que vous pourrez utiliser comme base dans vos documents.
\subsection{Le documentclass}
\subsection{Le \texttt{documentclass}}
L'instruction \verb=\documentclass[options]{classe}= doit toujours être la première ligne de votre document~\LaTeX, elle précise au compilateur quel type de document vous rédigez.
L'instruction \verb=\documentclass[<options>]{<classe>}= doit toujours être la première ligne de votre document \LaTeX{} ; elle précise au compilateur quel type de document vous rédigez.
\subsubsection{Les classes :} Les principales valeurs possibles pour l'argument de \verb=\documentclass= sont :
\subsubsection{Les classes}
Les principales valeurs possibles pour l'argument de \verb=\documentclass= sont :
\begin{itemize}
\item \textit{article}, la classe la plus utile pour un document simple (c'est celle utilisée pour celui que vous êtes en train de lire). Abstract disponible.
\item \textit{book}, en plus d'\textit{article}, utilise une page séparée pour le titre, des marges moins étroites et inclus l'utilisation de chapitres. En revanche il n'inclut pas l'environnement asbtract.
\item \textit{report}, comme \textit{book} mais le chapitres ne commencent pas en belle page et certaines commandes de \textit{book} ne sont pas disponibles. Abstract disponible.
\item \textit{lettre}, permet d'écrire un courier au format français dans les règles de l'art
\item \textit{beamer}, utilisée pour faire des présentation de diapositives. Elle sera présentée en partie \ref{sec:beamer}
\item \texttt{article}, la classe la plus utile pour un document simple (c'est celle utilisée pour celui que vous êtes en train de lire).
\item \texttt{book}, qui, en plus d'\texttt{article}, utilise une page séparée pour le titre, des marges moins étroites et inclus l'utilisation de chapitres.
\item \texttt{report}, qui est semblable à \texttt{book}, mais les chapitres ne commencent pas en belle page et certaines commandes de \texttt{book} ne sont pas disponibles. \starttouille Aurélien, tu peux reformuler stp ? \verb|^^| \closetouille
\item \texttt{lettre}, permettant d'écrire un courrier au format français dans les règles de l'art.
\item \texttt{beamer}, utilisée pour faire des présentation (à l'aide de diapositives plutôt que de pages). Elle sera présentée en partie \ref{sec:beamer}
\end{itemize}
\subsubsection{Les options :} Voici enfin les options les plus utiles de la commande avec les valeurs possibles.\\
Remarquez qu'ici vous n'avez pas à écrire $[option=valeur]$ mais que la valeur seule suffit.
L'environnement \texttt{abstract} est disponible dans les classes \texttt{article} et \texttt{report}.
\subsubsection{Les options}
Voici les options les plus utiles de la commande \verb|\documentclass| avec les valeurs possibles.\\
Remarquez qu'ici vous n'avez pas à écrire \verb|[option=valeur]| mais que la valeur seule suffit.
\begin{center}
\renewcommand{\arraystretch}{1.15}
\begin{tabular}{|c|c|}
\hline
Option & Valeurs possibles \\
\hline
Taille de police par défaut & \textbf{10pt} (defaut), \textbf{11pt} ou \textbf{12pt} \\
Taille de police par défaut & \textbf{10pt} (défaut), \textbf{11pt} ou \textbf{12pt} \\
\hline
Format de papier & \textbf{a4paper} (defaut), \textbf{letterpaper} (defaut pour la classe \textit{lettre}), \\
Format de papier & \textbf{a4paper} (défaut), \textbf{letterpaper} (défaut pour la classe \texttt{lettre}), \\
& \textbf{a5paper}, \textbf{b5paper}, \textbf{executivepaper}, \textbf{legalpaper}\\
\hline
Mode brouillon (ne charge pas & \textbf{draft} (si aucune option n'est précisé le mode brouillon est inactif) \\
les images et autres inclusions) & \\
\hline
Colonnes multiples & \textbf{onecolumn} (defaut) et \textbf{twocolumn} \\
Colonnes multiples & \textbf{onecolumn} (défaut) et \textbf{twocolumn} \\
& (le format classique d'un article scientifique) \\
\hline
Différence (ou pas) entre les marges & \textbf{oneside} (defaut pour \textit{article}) \\
intérieures et extérieures& et \textbf{twoside} (defaut pour \textit{book} et \textit{report})\\
Différence (ou pas) entre les marges & \textbf{oneside} (défaut pour \texttt{article}) \\
intérieures et extérieures& et \textbf{twoside} (défaut pour \texttt{book} et \texttt{report})\\
\hline
Page réservée pour le titre & \textbf{notitlepage} (defaut pour \textit{article}) \\
& et \textbf{titlepage} (defaut pour \textit{book} et \textit{report})\\
Page réservée pour le titre & \textbf{notitlepage} (défaut pour \texttt{article}) \\
& et \textbf{titlepage} (défaut pour \texttt{book} et \texttt{report})\\
\hline
\end{tabular}
\renewcommand{\arraystretch}{1.0}
\end{center}
Ces valeurs sont les seules supportées nativement par~\LaTeX, si vous voulez une personnalisation plus importante (une autre taille de police par exemple) cela se fera par l'utilisation d'une bibliothèque.
\starttouille Ce sera magnifique si la parenthèse après `draft' pouvait être sur la ligne en dessous, des idées ?\closetouille
Ces valeurs sont les seules supportées nativement par~\LaTeX, si vous voulez une personnalisation plus importante (une autre taille de police par exemple) cela se fera par l'utilisation d'une extension.
\subsection{Le chargement d'extensions}
En \LaTeX{}, on désigne par \og extension \fg{} (de l'anglais \emph{package}) les fichiers qui ajoutent des fonctionnalités non disponibles nativement.\\
Toute la force de \LaTeX{} réside dans sa communauté très active et les innombrables extensions qui en découlent. De nombreuses commandes que nous présentons dans ce document ne sont pas disponibles nativement et requièrent le chargement de l'extension appropriée, signalée à chaque fois que nécessaire.
\starttouille
Il faut charger \verb=href= en dernier, il redéfinit pas mal de commandes et peut entrer en conflit facilement avec d'autres paquets.\\
BTW, ils disent librairies en français ? (library = bibliothèque)\closetouille\\
\startaurel Oui bon d'accord mea culpa, c'est corrigé !\closeaurel
\startenteo\\Si vous parlez des \emph{packages}, la traduction française adéquate est \emph{extension}\closeenteo
En~\LaTeX~les mots \textit{bibliothèques}, \textit{extensions}, \textit{paquets} et \textit{librairies} désignent tous la même chose : un ajout de fonctionnalités non disponibles nativement.\\
En effet selon leur affinité plus ou moins grande avec la langue de Shakespeare les gens utilisent un mot ou un autre. Donc même si la traduction française de \textit{package} est bien \textit{extension} ne soyez pas surpris de rencontrer tous ces mots, y compris dans ce document (qui a été rédigé par plusieurs personnes). \startaurel Ca devrait contenter tout le monde :) \closeaurel
\starttouille \\ Je suis contre encourager l'utilisation du mot "librairie" qui est un faux-ami contre lequel se battent des générations de profs d'anglais ! En vrai, si on veut que ce document soit béton, il faudrait se limiter à la traduction correcte qui est donc \textit{extension} d'après William, même si j'avoue que j'aimerais conserver \textit{paquet} ; après, en y réfléchissant deux secondes, ce sont bien des extensions au programme original que l'on charge.
\noindent Par contre, je continuerai d'utiliser l'anglicisme \textit{backslash}, mais je suis ouvert à être convaincu du contraire. Enfin, peut-être.\closetouille
Une extension se charge avec la commande \verb=\usepackage[<options>]{<extension>}=. Il faut les charger dans le préambule -- il est d'usage de le faire juste après le \verb|\documentclass|, pour rédiger le reste du préambule avec la bonne version des différentes commandes. Là où certaines extensions créent de nouvelles commandes, d'autres en redéfinissent des existantes, ce qui peut mener à des conflits ; ainsi, l'ordre d'appel est important (le compilateur va vous demander de charger \texttt{natbib} avant \texttt{babel} par exemple, ou on chargera \texttt{href} en dernier car il impacte beaucoup de commandes déjà existantes).
La parenthèse étant fermée, passons au concret. Toute la force de~\LaTeX~réside dans sa communauté très active et les innombrables extensions qui en découlent. De nombreuses commandes que nous présentons dans ce document ne sont pas disponibles nativement et requièrent le chargement de l'extension appropriée, soyez donc attentifs aux extensions requises.
Dans la suite, nous allons voir quelques extensions indispensables à la rédaction de tout document en français.
Une extension se charge avec la commande \verb=\usepackage[options]{extension}=. Et pour éviter tout problème de commande non définie l'idéal est de placer tous les chargements d'extensions juste après le \verb=\documentclass=\footnote{Il est nécessaire de charger l'extension \verb=href= en dernière, pour éviter certains conflits}.\\
Je vais maintenant vous présenter les quelques extensions indispensables à la rédaction de tout document en français.
\subsubsection{L'encodage d'entrée}
Pour saisir la notion d'encodage d'entrée, il est important de comprendre que le fichier source (le fichier \texttt{.tex}) est d'abord sauvegardé et encodé sur votre disque dur avant d'être envoyé au compilateur\footnote{Et ce peu importe que vous utilisiez un éditeur de texte non formaté et le compilateur séparément ou que vous utilisiez un \emph{IDE}.}.\\
L'encodage réel du fichier \texttt{.tex}, c'est la façon dont les caractères employés dans votre fichier source seront écrits sous forme d'octets sur votre disque dur ; c'est donc une caractéristique de votre éditeur de texte ! Vous devriez pouvoir le sélectionner dans ses options.\\
L'encodage d'entrée du compilateur, c'est la façon dont ce dernier va lire les octets présents dans votre fichier source pour les interpréter sous forme de commandes. Vous l'aurez donc deviné : il faut que cet encodage d'entrée corresponde à l'encodage réel du fichier.\\
Pour charger un encodage d'entrée il faut utiliser la commande \verb=\usepackage[<encodage>]{inputenc}=.\\
La langue française, avec ses accents, peut être encodée facilement en \texttt{latin1} ou en \texttt{utf8}. Ce dernier est néanmoins à préférer, car si le \texttt{latin1} est un bon encodage pour les langues occidentales, l'\texttt{utf8} a une portée internationale\footnote{C'est l'encodage le plus utilisé sur le Web.}.
\subsubsection{L'encodage d'entrée} Pour saisir la notion d'encodage d'entrée il faut bien comprendre une chose : peu importe que vous utilisiez l'éditeur de texte non formaté et le compilateur séparéments ou que vous utilisiez un \emph{IDE}, le fichier source \texttt{.tex} est d'abord sauvegardé et encodé sur votre disque dur avant d'être envoyé au compilateur.\\
L'encodage réel du \texttt{.tex}, c'est la façon dont les caractères employés dans votre fichier source seront écrits sous forme d'octet sur votre disque dur, c'est donc une caractéristique de votre éditeur de texte ! Vous devriez pouvoir le sélectionner dans les options.\\
L'encodage d'entrée du compilateur, c'est la façon dont celui-ci va lire les octets présents dans votre fichier source pour les interpréter sous forme de commandes. Vous aurez donc deviné : il faut que cet encodage d'entrée corresponde à l'encodage réel du fichier.\\
Pour charger un encodage d'entrée il faut utiliser la commande \verb=\usepackage[encodage]{inputenc}=\\
La langue française avec ses fameux accents peut être encodée facilement en \texttt{latin1} et en \texttt{utf8}. Ce dernier est néanmoins à préférer, car si le \texttt{latin1} est un bon encodage pour les langues occidentales, l'\texttt{utf8} a une portée internationale\footnote{C'est l'encodage le plus utilisé sur le web}.
\starttouille Et comment on fait un å en \LaTeX{} chef ? \closetouille
\startenteo Eh bien en \texttt{utf8} on peut simplement faire \texttt{COMPOSE,O,A}, on encore insérer le point de code \texttt{U+005E},
......@@ -504,35 +500,34 @@ on alors utiliser la commande \verb|\aa| !\closeenteo
\subsubsection{Encodage de sortie}
Cet encodage correspond à celui qui va être utilisé pour écrire le document compilé (un \texttt{.pdf} le plus souvent). Pour écrire en langue française(toujours cette histoire d'accents) il est nécessaire de charger l'encodage \texttt{T1} avec \verb=\usepackage[T1]{fontenc}=.
Cet encodage correspond à celui qui va être utilisé pour écrire le document compilé (un \texttt{.pdf} le plus souvent). Pour écrire en langue française (toujours cette histoire d'accents) il est nécessaire de charger l'encodage \texttt{T1} avec \verb=\usepackage[T1]{fontenc}=.
\subsubsection{La typographie française}
Il existe un paquet linguistique appelé \texttt{babel} qui formate le texte de sorte à respecter les règles typographiques de la langue dans laquelle vous écrivez (par exemple en français les fameux "espaces fines insécables" avant et après les ponctuations). Pour l'utiliser il faut charger le paquet avec l'option \texttt{frenchb} : \\\verb=\usepackage[frenchb]{babel}=\footnote{L'option \texttt{francais} est obsolète depuis la version 3.6 de babel}.
Il existe une extension linguistique appelée \texttt{babel} qui formate le texte de sorte à respecter les règles typographiques de la langue dans laquelle vous écrivez (par exemple, l'ajout d'espaces fines insécables avant certains éléments de ponctuation en français). Pour l'utiliser, il faut charger la charger avec l'option \texttt{frenchb} : \\\verb=\usepackage[frenchb]{babel}=\footnote{L'option \texttt{francais} est obsolète depuis la version 3.6 de \texttt{babel}.}.
\subsection{Les métadonnées}
Le mot \textit{métadonnées} désigne "les données concernant les données", concernant un article ou un livre il s'agit donc de son titre, son auteur et sa date de création.\\
Dans un document~\LaTeX, ces données doivent être précisées dans le préambule à l'aide des commandes \verb=title{}=, \verb=author{}= et \verb=\date{}=\footnote{A savoir que si vous n'utilisez pas \verb=\date= le compilateur prendra par défaut la date de la compilation. Si vous ne souhaitez pas préciser la date sur le document final il faut appeler la commande \verb=\date{}= sans option}.\\
Pour écrire titre auteur et date dans le corps du document, il suffit alors d'utiliser la commande \verb=\maketitle=
Le mot \textit{métadonnées} désigne \og les données concernant les données \fg{}. À propos d'un article ou un livre, il s'agit donc de son titre, son auteur et sa date de publication.\\
Dans un document \LaTeX{}, ces données doivent être précisées dans le préambule à l'aide des commandes \verb=title{}=, \verb=author{}= et \verb=\date{}=\footnote{À savoir que si vous n'utilisez pas \verb=\date=, le compilateur prendra par défaut la date de la compilation. Si vous ne souhaitez pas préciser la date sur le document final il faut appeler la commande \verb=\date{}= sans option}.\\
Pour écrire titre, auteur et date dans le corps du document, il suffit alors d'utiliser la commande \verb=\maketitle=
\subsection{Pour résumer : un modèle de préambule pour un article en français}
\starttouille J'approuve grandement ce genre de résumé avec des solutions clé en main pour ceux qui auraient du mal à se plonger dedans ! \closetouille
\begin{lstlisting}
%premiere chose a faire : definir le type de document !
% Première chose à faire : définir le type de document !
\documentclass[a4paper]{article}
%ensuite on charge les extensions pour la langue francaise
% On charge ensuite les extensions pour la langue française
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}
%puis on définit les metadonnées
% Puis on définit les metadonnées
\title{Mon premier document}
\author{Un débutant en~\LaTeX}
\author{Un débutant en \LaTeX{}}
\date{}
%et on arrive enfin au corps du document
% Et on arrive enfin au corps du document
\begin{document}
\maketitle
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment