Aller au menu - Aller au contenu

Icône Les packages

Mise à jour : 15/10/2010
Difficulté : Facile Facile Durée d'étude : 1 heure Creative Commons BY-NC-SA
20 808 visites depuis 7 jours, dont 835 sur ce chapitre classé 16/786
Votre apprentissage des mécanismes élémentaires de LaTeX est terminé. Vous avez appris à ouvrir et rédiger des fichiers sources.tex et à les compiler de façon à obtenir des documents aux formats pdf, postscript et dvi.

Nous avons pu aussi constater que pour expliquer à LaTeX ce que nous attendons de lui, nous utilisons des commandes et des lignes de code. Ces différentes commandes et leurs applications pratiques seront étudiées dans les parties 2 et 3.

Ce chapitre est le dernier chapitre théorique. Nous allons ici répondre à la question suivante : si LaTeX ne sait pas faire quelque chose (par exemple mettre du texte en couleur) comment rendre possible un changement de couleur de mon texte ?

Nous allons répondre à cette question et introduire la notion de « package », notion centrale et omniprésente dans l’univers LaTeX.

Ce court chapitre est le dernier de la partie 1. La suite du cours sera essentiellement pratique.
Sommaire du chapitre :
Icône du chapitre
Chapitre précédent Sommaire Chapitre suivant

La philosophie des packages

Les habitués du monde informatique connaissent assez bien la signification des mots « extensions », « packages » ou « plugins ». Ces éléments sont présents dans de nombreux programmes et nous allons tenter de développer le concept de « package » pour ceux à qui il n’est pas familier dans cette sous-partie.

Imaginons votre installation LaTeX comme une cuisine équipée. Vous pouvez cuire des choses, poser des objets sur le plan de travail, etc… En bref, cette pièce peut vous rendre certains services tout comme LaTeX nativement vous permet d’écrire du texte simple (comme nous avons pu le voir dans le chapitre précédent).

Vous vous préparez un plat et avez besoin d’un couteau pour le cuisiner, et ce couteau ne fait pas parti des outils fournis par la personne qui a conçu votre cuisine. C'est un problème. Il est nécessaire pour vous d'aller chercher quelque part cet outil afin de l’amener dans votre cuisine pour vous permettre d’atteindre votre but de départ : découper ce que vous vouliez découper.

Dans le cas de LaTeX, des outils ont été créés dans le but de pallier certains manques et d’implanter de nouvelles fonctions, de telle sorte que, grâce à leur création, l’univers LaTeX permet de réaliser chaque jour de nouvelles choses. Ces outils sont appelés « packages » et tout un chacun peut en créer et en diffuser un.

Si jamais un package vient à manquer, vous irez le chercher sur internet et l'utiliserez ensuite (gardez la métaphore sur le couteau en tête, quand un outil manque, il suffit d'aller le chercher).

Pour vous en tant qu’utilisateur de LaTex, vous serez amené fréquemment à utiliser des packages. En résumé : deux possibilités s’offrent lorsque que vous souhaiterez en manipuler un :
  • le package est déjà présent dans votre installation LaTeX et il ne vous reste plus qu’à vous en servir (comme si votre couteau était dans un des tiroirs de votre cuisine)
  • il est absent de votre installation LaTeX et vous devrez aller le chercher et l’installer.

Ces tâches sont très simples et nous allons apprendre dans la suite de ce chapitre à installer et à utiliser les packages de LaTeX.

Comment s'en servir?

Bien que nous allons ici apprendre à installer des packages, ce n’est pas le point central de ce chapitre. Des millions d’utilisateurs avant vous ont conçu des documents sous LaTeX et rendu certains packages incontournables. C'est la raison pour laquelle ils sont aujourd’hui souvent installés par défaut avec votre distribution LaTeX (de la même manière que vous ne vous installeriez pas dans un bureau sans table, les utilisateurs de LaTeX préfèrent installer dès le début les éléments leur permettant de travailler confortablement).

Cette sous-partie va vous apprendre à utiliser les packages.

Pour utiliser un package sous LaTeX nous procéderons en deux étapes. Dans un premier temps nous dirons à LaTeX, via une commande, que nous utiliserons tel ou tel package, dans un second temps nous pourrons les utiliser dans nos publications.

La commande permettant d’appeler un package est la commande \usepackage[option]{type} . Elle se place juste après la ligne dédiée à la commande \documentclass . Regardez l’exemple ci-dessous, que nous commenterons ensemble.
Code : TeX
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
\documentclass{report}

\usepackage[latin1]{inputenc} % un package
\usepackage[T1]{fontenc}      % un second package
\usepackage[francais]{babel}  % un troisième package

\begin{document}

J'écris mon 3\up{ième} document avec \og LaTeX \fg. LaTeX est un langage créé par Leslie \bsc{Lamport}.


\end{document}


Ici, nous constatons que les annotations dans le code se font avec la syntaxe % suivi d’un commentaire . Dans la suite du cours je me servirai des commentaires pour annoter des morceaux de code et vous aider à vous repérer.

N’hésitez pas à utiliser les commentaires dans votre travail pour mieux vous y retrouver.


Trois packages ont été utilisés dans l'exemple ci-dessus :

  • babel est utilisé pour spécifier à LaTeX que vous écrivez en français
  • fontenc et inputenc vous permettent d'utiliser tous les caractères de votre clavier.


Petit test pour nos amis linuxiens. Créez avec votre bloc note un fichier contenant la phrase «j’aime latex» avant de l’enregistrer sous le nom amour.txt et de taper dans votre console la ligne suivante : file amour.txt. Si la console inscrit Iso-8859 tout va bien. Si elle inscrit utf-8 vous devrez taper \usepackage[utf8]{inputenc} à la place de \usepackage[latin1]{inputenc} dans vos prochains documents.

Utilisateur sous mac : il est important que vous enregistriez vos documents en latin 1. TeXShop vous proposera dans le menu Préférences>Document>Encodage de choisir l’encodage par défaut. Choisissez le suivant : Occidental Latin 1.

Utf-8 et iso-8859 désignent des processus d’encodage de caractère, c'est-à-dire la manière dont votre machine va coder les lettres. Bien que nous ne puissions pas voir la différence à l’œil, se tromper entre utf8 et latin1 peut tout faire planter.


\up{} , \og et \fg sont-elles des nouvelles commandes ?


Effectivement, ces commandes sont nouvelles. Le package babel (lorsqu’il est utilisé pour le français) permet l’utilisation de commandes propres à la langue choisie. Entre autres les guillemets français et les petites majuscules en ce qui concerne le français. Ce package permet donc à LaTeX d’exécuter de nouvelles tâches et d’être plus efficace pour écrire en langue française.

Ci-dessous, un tableau vous permettant de voir les commandes introduites par le package babel. Essayez les et entrainez vous avec.

Package babel
« \og
» \fg
Exposant \up{}
Petites Majuscules \bsc{Lamport}
1er 1\ier
2e 2\ieme
\primo
\secundo
\tertio
\quarto
8° (ou n'importe quel autre chiffre) \FrenchEnumerate{8}
no \no
No \No
nos \nos
Nos \Nos
40° (le caractère degré) 40\degres


Des centaines de packages existent et chacun rend LaTeX plus performant et vous permet d’ajouter, à la carte, des fonctions à votre distribution. Souvent, lorsque vous aurez envie de faire quelque chose d’original avec LaTeX, quelqu’un aura déjà fabriqué un package adapté et il ne vous restera plus qu’à l’installer ainsi qu'à l’utiliser.

Comment installer un package ?

Votre installation faite, de nombreux packages ont été installés sur votre machine. Il est cependant possible que vous ayez un jour besoin d’installer un package particulier non-présent sur votre machine. Cette sous-partie est là pour vous expliquer comment faire.

Notons que si vous avez installé LaTeX comme il est expliqué dans le chapitre 3, il semble peu probable qu’un package utilisé dans ce cours ne soit pas présent sur votre machine.

Cette sous-partie n’étant utile que si vous tentez d’installer un package non présent dans votre distribution, vous pouvez ne pas la lire et passer au chapitre suivant sans crainte si vous n’en avez pas besoin.


MiKTeX et son installation à la volée


Les utilisateurs de MiKTeX (Windows) ont de la chance en ce qui concerne les packages, car MiKTeX installe tout seul comme un grand les packages appelés lors de vos compilations.

Si jamais vous souhaitez savoir si un package se trouve dans votre installation MiKTeX, rien de plus simple, il vous suffit d’aller dans votre menu démarrer et d’aller chercher le package manager.

Chemin du Package Manager : MiKTeX > Maintenance > Package Manager.

Trouver le package manager dans le menu


Le package manager vous permettra de voir la liste des packages installés dans votre distribution.
package manager

Autres distributions



Il existe plusieurs méthodes d’installation de package sous LaTeX. J’ai sélectionné pour vous les deux plus faciles à mon sens. Elles devraient vous permettre d’utiliser la quasi-totalité des packages.

Deux méthodes sont disponibles suivant que votre package soit sous la forme d’un fichier .dtx ou .sty.

Dans de rares cas, les packages sont fournis sous d’autres formes, mais ils sont alors accompagnés d’un fichier Readme vous guidant dans leur installation.

Les packages en .sty, méthode simple



Si votre package est de la forme nom_de_package.sty, rien de plus simple pour l’utiliser, il suffit de le copier dans le dossier contenant votre source .tex. Lorsque votre distribution compilera votre fichier .tex elle recherchera les fichiers .sty des packages manquant dans votre dossier et le tour sera joué.

Résumons, la commande \usepackage{nom_de_package} demande à LaTeX d’aller utiliser un package installé, et s'il ne l’est pas, d’aller chercher le fichier nom_de_package.sty dans le dossier de travail.

Pas très compliqué, n’est-ce pas ?

Les packages en .ins, méthode en deux temps



Les packages contenus dans un fichiers .ins doivent subir deux étapes. Premièrement, mettez votre fichier nom_de_package.ins dans un répertoire et compilez-le : il enfantera (sans douleur) un fichier nom_de_package.sty.

Ce fichier nom_de_package.sty doit être traité selon le processus développé dans le paragraphe « Les packages en .sty, méthode simple ».

Les méthodes développées ici vous permettent d’installer et d’utiliser pour un document précis des packages. Il existe des méthodes permettant d’installer pour de bon sur votre machine des packages. Ces méthodes bien qu’efficaces ne sont pas évidentes pour les utilisateurs débutants, raison pour laquelle j’ai préféré vous présenter des méthodes plus faciles.

Q.C.M.

LaTeX est-il limité ?
Pouvons-nous utiliser un package sans l'avoir préalablement appelé avant \begin{document} ?
Pouvons-nous utiliser la commande \og sans le package babel ?

Statistiques de réponses au QCM

Vous avez ici eu votre premier contact avec les packages. Ils sont omniprésents dans l’univers LaTeX et très utiles, nous en utiliserons quelques-uns dans la suite du cours.

Nous garderons en mémoire que :
  • il existe des milliers de packages LaTeX
  • installer un package ne prend pas plus de dix minutes
  • la communauté des utilisateurs (dont vous faites maintenant partie) peut ajouter autant de fonction qu'elle le souhaite à LaTeX via la création de package.

Ce chapitre clos la partie 1, partie très théorique qui vous à permis de vous familiariser avec le langage LaTeX et ses logiciels. Les chapitres qui viennent vous permettront de pratiquer et d’apprendre à mettre en page des lettres, des rapports, d’écrire des formules mathématiques…
Chapitre précédent Sommaire Chapitre suivant

Partager

29 commentaires pour "Les packages"
Note moyenne : 3.61 / 4 (536 votes)
Pseudo Commentaire
Hors ligne Laleloulilo # Posté le 09/11/2010 à 18:25:29
Avatar

Avis : Très bon Groupe : Auteurs

Ville : Talence
Pays : France métropolitaine
Études : Université de Bordeaux

Tout simplement changer la langue dans babel. Zieute sur le wikibook donné dans la dernière annexe, il y a un paragraphe entier là dessus. :)

Gwaeron: webzine alternative

Membre du fan club officiel de Poulpy.
 
Hors ligne ontologyfreak # Posté le 01/12/2010 à 23:43:31

Sous mac, pour que les accents soient reconnus, du moins pour le début du tuto, on peut également utiliser:
\usepackage [applemac]{inputenc}
Ce qu'il y a de sûr, c'est que le [latin1] ne marche pas, du moins chez moi.
Super tuto sinon.

Merci
Hors ligne ontologyfreak # Posté le 02/12/2010 à 00:43:18

Pour les blaireaux comme moi qui galèrent pour utiliser sous mac la ligne :

\usepackage[utf8x]{inputenc}

Il faut effectivement modifier les préférences d'encodage. Mais on ne les trouve pas dans Préférences. Pour modifier l'encodage, il faut aller dans Macros puis Encoding, puis choisir utf-8. cela rajoute une ligne de code, en rouge, en haut du fichier :

% !TEX encoding = UTF-8 Unicode

Si vous repassez au MacOsRoman, vous aurez alors cette ligne en haut de votre page :

% !TEX encoding = MacOSRoman

et l'instruction utilisant [utf8x] ne marchera pas. J'ai mis le temps pour trouver.

Sinon, j'ai lu que l'instruction [applemac] n'était pas pratique parce qu'il y a un risque que votre fichier s'ouvre mal sur une machine fonctionnant avec un autre OS ; vous retrouverez les signes étranges.
Voilà voilà. En espérant avoir aidé quelqu'un.

Et encore merci pour le tuto.
Hors ligne yoshi_120 # Posté le 11/11/2011 à 21:13:17
Avatar

Avis : Très bon

Ville : Saint-etienne
Pays : France métropolitaine
Études : Epitech Lyon

Bonjour à tous, Pour commencer je suis sous Windows 7 entreprise et pourtant je doit utiliser utf8 ou lieu de latin1 alors que tu dis que c'est seulement sur Linux qu'il faut vérifier.
Pire lorsque je met ces 3 packages avec utf8 la police change de celle sans package et malheureusement cela donne un rendu pixelisé désagréable.
info : Mixtex 2.9 avec TexWork.
Hors ligne physidef # Posté le 14/03/2012 à 12:12:13

Études : EPFL

Bonjour,
j'ai suivi pas à pas le cours que vous proposer ici ! (qui est super bien expliquer d'ailleur!)
mais j'ai un souci à ce niveau :

\documentclass{report}

\usepackage[latin1]{inputenc} % un package
\usepackage[T1]{fontenc} % un second package
\usepackage[francais]{babel} % un troisième package

\begin{document}

J'écris mon 3\up{ième} document avec \og LaTeX \fg. LaTeX est un langage créé par Leslie \bsc{Lamport}.


\end{document}


---------------------
J'utilise Mac os X et dans Texshop j'ai bien changer et mis occidental latin 1. mais quand j'écris dans Texworks rien a faire il ne veux pas le [francais]{babel}

merci de m'aider! bonne journée

f(optimal)
 

Voir tous les commentaires