Votre question montre que vous avez confondu **package** et **environnement**. Y répondre revient à décrire la différence qu'il y a entre les deux.
**Comment fonctionne LaTeX ?**
Lorsqu'on écrit `\usepackage{nom}` dans le préambule, LaTeX cherche un fichier d'extension `.sty` ayant la même dénomination, ici `nom.sty`.
Le message d'erreur que vous avez eu indique que le fichier`itemize.sty` n'a pas été trouvé par LaTeX. C'est donc que vous avez appelé `itemize` comme s'il s'agissait d'un `package` en écrivant `\usepackage{itemize}`.
LaTeX a fait ce que vous lui demandez, n'a pas trouvé ce package et vous l'indique par ce message d'erreur.
Devant une erreur de ce type, il y a deux possibilités :
- soit le fichier manque et on peut l'ajouter en mettant à jour sa distribution `Texlive` ou `MikTeX` ;
- soit le fichier n'existe vraiment pas du tout et il y a donc une erreur dans votre code (*ce qui est le cas ici*).
En cherchant sur un moteur de recherche du net le nom de ce fichier `itemize.sty`, la première réponse du moteur de recherche le plus utilisé donne ce résultat dirigeant vers le CTAN :
![itemize.sty résultat de la recherche][1]
À aucun moment, il n'est question du fichier `itemize.sty`, le moteur de recherche parle de `l'environnement enumerate` en renvoyant vers la page du `package enumerate` du CTAN. Tiens donc, enumerate est en même temps un package et un environnement ! Mais pourquoi donc rien n'est dit sur itemize ?
**Qu'est-ce que le CTAN ?**
Le CTAN est l'acronyme de **Comprehensive TeX Archive Network**, c'est un site qui archive **l'ensemble des packages** distribués par Texlive ou MikTeX. Auparavant, les packages étaient disséminés un peu partout et chacun installait manuellement chaque package, ce qui était assez peu pratique (*le CTAN a donc été une grande avancée pour LaTeX*).
La page du CTAN décrit le package en anglais et donne les caractéristiques du package dans un encadré grisé :
![CTAN package enumerate][2]
Puisque cette première page de résultat du moteur de recherche ne donne aucun résultat pour le fichier itemize.sty, c'est qu'il n'existe pas !
Si vous cherchez sur ce même moteur de recherche **LaTeX enumerate itemize**, du CTAN `itemize`, vous apprendrez que obtiendrez le résultat suivant qui indique qu'il n'existe pas de document appelé itemize est lui, un `environnement`, mais lui, sans être un `package` !
sur le CTAN. En clair, il n'existe pas de package nommé itemize archivé : ![CTAN recherche itemize][3]
**Qu'est-ce qu'un package ?**
Les fichiers d'extensions `.sty` sont les fichiers qui définissent les `packages` (*appelés aussi extensions ou modules en français*).
Les `packages` contiennent un ensemble de `macros`, `commandes` ou `d'environnements` qui permettent d'effectuer une série d'instructions plus ou moins complexes en un seule commande. Les commandes permettent de simplifier le codage en donnant un nom unique en lieu et place d'une série d'instructions en langage LaTeX.
Une commande (*ou macro*) définit ainsi ce que l'on appelle une **surcouche** du langage LaTeX. C'est à dire que le langage devient plus facile à comprendre pour un humain.
Les langages étant dit :
- de **bas niveau** lorsqu'ils sont plus proche du langage machine (*du langage compris par le processeur*).
- et de **haut niveau** lorsqu'ils sont plus faciles à comprendre par un humain.
Ainsi, comme les packages facilitent l'usage de LaTeX aux humains, ils forment ce que l'on appelle une couche supérieure de LaTeX, plus facile à comprendre pour nous humains !
**Qu'est-ce qu'un environnement ?**
Pour comprendre ce qu'est un environnement, il faut comprendre que LaTeX a une structure de **langage de balisage** tout comme HTML, CSS, XML et bien d'autres encore.
Les **balises** sont comme des panneaux de signalisation, elles apparaissent toujours par paires : la première pour indiquer **le début** de la zone balisée, la deuxième pour indiquer **sa fin**. De même sur une route, il y a un panneau qui indique que vous entrez dans un village et un panneau qui indique que vous en sortez, ce qui modifie les limitations de vitesse. Les balises permettent de définir des zones dans lesquelles une règlementation spécifique s'applique.
Pour un fichier LaTeX d'extension `.tex`, les balises permettent de diviser la page en zones dans lesquelles le texte écrit aura un formatage particulier (figure, texte en gras, paragraphe, titre, etc).
LaTeX permet de définir un environnement de deux façons :
- Un environnement peut commencer par une accolade ouvrante `{` , il se termine alors par une accolade fermante `}`. Les balises sont ici représentées par des accolades (*ouvrantes et fermantes*). Par exemple, la phrase `\textbf{Ici j'écris en gras} mais pas là` n'écrira en gras que ce qui est situé entre les deux accolades (*l'intérieur des accolades est un environnement*). La commande `\textbf{}` n'agit qu'au sein même de l'environnement (*c'est à dire des accolades*), mais pas en dehors !
- Un environnement peut aussi commencer par `\begin{...}`, il se termine alors par `\end{...}`. Par exemple, la phrase `\begin{center} Je suis au centre \end{center}` sera centrée.
**Les listes à puces natives de LaTeX**
L'environnement itemize est un des trois environnements natif de LaTeX permettant d'écrire des listes à puces :
- l'environnement `enumerate` permet d'écrire des listes numérotées;
- l'environnement `itemize` permet d'écrire des listes non numérotées (*non ordonnées*);
- l'environnement `description` permet de créer une série de définitions (*comme dans un dictionnaire*).
L'environnement itemize commence avec `\begin{itemize}` et se termine avec `\end{itemize}`. Dans cet environnement, les commandes `\item` définissent les puces (symboles qui marquent le début de chaque énumération).
Ces trois environnement étant **natifs de LaTeX**, il n'est **pas besoin** de charger un quelconque package pour pouvoir les utiliser. Ils sont définis par LaTeX lui-même sans avoir besoin d'ajouter quoi que ce soit d'autre.
**Une homonymie malheureuse ?**
Nativement, dans l'environnement enumerate, les puces de chaque niveau de numérotation sont définies par LaTeX de la façon suivante :
- le premier niveau d'énumération commence par des chiffres arabes suivi d'un point : 1. 2. 3. etc ;
- le deuxième niveau est numéroté par des minuscules romaines entre parenthèses : (a) (b) (c) etc ;
- le troisième niveau par des chiffres romains en minuscule : i, ii, iii, iv, etc.
- le quatrième et dernier niveau par des majuscules romaines suivies d'un point : A. B. etc.
Mais nativement LaTeX ne permet pas la modification des puces d'énumération. La numérotation reste toujours selon ce schéma prédéfini.
Afin de permettre la personnalisation des puces de l'environnement enumerate, David Carlisle a créé un package qu'il a appelé du même nom que l'environnement qu'il modifie, c'est à dire enumerate.
Il y a donc un environnement natif de LaTeX qui s'appelle enumerate, mais aussi un package du même nom !
Ce package permet de modifier très simplement l'énumération des puces par l'écriture d'un exemple générique (*il suffit d'écrire la première occurrence pour que les autres s'ensuivent*).
Pour les néophytes, cette homonymie s'avère malheureuse car elle est source d'erreur. En effet, en toute logique, on pourrait penser que s'il y a un package qui s'appelle enumerate, il en est de même avec itemize. Mais ce n'est pas le cas car personne n'a encore écrit de package nommé itemize.
[1]: http://texnique.fr:80/osqa/upfiles/itemize.sty-resultat-echerche.png
[2]: http://texnique.fr:80/osqa/upfiles/CTAN__package_enumerate.pnghttp://texnique.fr:80/osqa/upfiles/CTAN__package_enumerate.png
[3]: http://texnique.fr:80/osqa/upfiles/CTAN_search_itemize_BRJHYHT.png