Que sont les classes et extensions LaTeX?
vise à être un traitement de texte le plus général possible. Toutefois, les concepteurs de ont choisi de structurer les documents pour faciliter son utilisation, quitte à le limiter quelque peu au premier abord (et à éviter à l'utilisateur de recourir aux primitives de bas niveau de ).
Les classes
propose de concevoir des documents par le biais d'une abstraction du type du document : la classe. Celle-ci décrit un ensemble de règles de mises en forme (cela laisse cependant des possibilités pour des variations entre documents d'une même classe).
Par défaut, propose quatre classes générales (book, report, article et letter) et quelques classes un plus spécialisées telles que slides et ltnews. Pour chaque classe, fournit un fichier de classe que l'utilisateur va utiliser via la commande \documentclass
en haut du document. Ainsi, un document commençant par \documentclass{article}
composera un article.
Si le principe est bon, il a un défaut flagrant : les conceptions typographiques réelles fournies par les classes ne sont pas forcément unanimement appréciées. La solution consiste alors à affiner la classe. Dans ce cas, un programmeur peut écrire un nouveau fichier de classe qui charge une classe existante, puis la modifie pour obtenir sa propre mise en page du document.
Les extensions
Ceci dit, plutôt que de modifier directement un fichier de classe, l'utilisateur peut aussi adapter une classe en chargeant une ou plusieurs extensions (package, en anglais) :
- certaines vont affiner le comportement d'une classe, comme l'extension babel qui modifie des réglages typographiques selon la langue souhaitée pour le document ;
La distribution , elle-même, fournit assez peu d'extensions, mais il y en a beaucoup, développées par une grande variété d'auteurs, déposées sur le site du CTAN ou dans les distributions de TeX. D'un point de vue pratique, les fichiers de classe et d'extension ne sont différents que par l'extension de leur nom :
- les fichiers de classe finissent par
.cls
. La classe standard LaTeX article est définie par un fichier appeléarticle.cls
; - les fichiers d'extension finissent par
.sty
. L'extension hyperref est représentée sur le disque par un fichier appeléhyperref.sty
.
Source : What are LaTeX classes and packages?