Für die Realisierung eines Abkürzungsverzeichnisses ist die Verwendung eines Indexes (vgl. Index-, Namens- oder sonstige Verzeichnisse) eher ungeeigenet, da im Abkürzungsverzeichnis nicht die Seite, auf der das Akronym verwendet wird von Interesse ist, sondern vielmehr dessen Bedeutung (wofür stehen die Buchstaben). Für ein solches Verzeichnis eignet sich die Glossarfunktion zusammen mit dem nomencl-Paket von Bernd Schandl ganz gut. Untenstehender Dokumentauszug zeigt exemplarisch die Verwendung der Makros (eine detailierte Dokumentation ist in dem Paket selbst enthalten).

\documentclass[a4paper]{article}
\usepackage[german]{babel}
\usepackage[latin1]{inputenc}
\usepackage{nomencl}
  \let\abbrev\nomenclature
  \renewcommand{\nomname}{Abkürzungsverzeichnis}
  \setlength{\nomlabelwidth}{.25\hsize}
  \renewcommand{\nomlabel}[1]{#1 \dotfill}
  \setlength{\nomitemsep}{-\parsep}
  \makeglossary

\usepackage[normalem]{ulem}
  \newcommand{\markup}[1]{\uline{#1}}

\begin{document}
    ...
  \printglossary
    ...
  \abbrev{XML}{e\markup{x}tensible \markup{m}arkup \markup{l}anguage}
    ...
\end{document}
          

Für eine bessere semantische Zuordnung wurde für den Befehl \nomenclature das Synonym \abbrev definiert, welches dann auch stellvertretend im Dokument verwendet wird. Desweiteren habe ich das Paket an das von mir üblicherweise verwendete Abkürzungsverzeichnis-Layout angepasst: deutsche Überschrift, eine breitere Spalte für das Akronym sowie eine gepunktete Linie vor der Erklärung. Bei der Verringerung des vertikalen Abstandes zwischen den einzelnen Einträgen (ich möchte eigentlich keinen Abstand) habe ich mich eines kleinen Tricks bedient: Das Paket sieht zwar explizit vor, diesen Abstand mittels des Längenregisters \nomitemsep zu steuern, allerdings wird dabei nicht die ebenfalls zwischen zwei Listeneinträgen eingefügte Länge \parsep berücksichtigt. Daher füge ich diese Länge einfach negiert hinzu, was letztendlich zu einem effektiven Abstand von 0pt führt.
Desweiteren habe ich den Befehl \markup definiert, mit dem ich unter Zuhilfenahme des ulem-Paketes die jeweiligen, das Akronym bildenden Buchstaben in der Erklärung unterstreiche. Durch die Verwendung eines Makros kann im Dokument ganz leicht – je nach Vorgabe oder Belieben – die Auszeichnung von unterstrichen auf beispielsweise kursiv gewechselt werden, wodurch der Grad der Wiederverwendung von Dokumenten (und Makros) erhöht wird (im Gegensatz zur direkten Codierung der Schriftauszeichnung).

Zur Erzeugung des Verzeichnisses werden zwei Übersetzungen sowie der Aufruf von MakeIndex benötigt. Im ersten Lauf werden alle Glossareinträge in der GLO-Datei gesammelt. Dann erfolgt der MakeIndex-Aufruf (es wird von einem Dokument mit dem Namen test.tex ausgegangen):

> makeindex test.glo -s nomencl.ist -o test.gls

Das Programm erzeugt die GLS-Datei, welche die sortierten und formatierten Eitnräge des Glossars (unseres Abkürzungsverzeichnisses) enthält. Für dessen Einbindung benötigt es eine weitere LaTeX-Übersetzung.