![]() |
|
|||||||
| LaTeX-Forum LaTeX, LyX, BibteX, PDF & Co |
![]() |
|
|
Themen-Optionen | Thema bewerten | Ansicht |
|
|
#1 |
|
Registrierter Benutzer
|
Tip: Glossaries Paket - was oft falsch läuft
Hallo zusammen,
sehr oft wird das glossaries Paket empfohlen um ein Abkürzungsverzeichnis, Symbolverzeichnis, Nomenklaturverzeichnis usw. zu erstellen. Dabei kommt es immer wieder zu den gleichen Fragen. Deshalb habe ich im folgenden Versucht bekannte Fragen die ich immer wieder beantworte in einem Thema zusammenzufassen:
1. Ich kenne das "glossaries" Paket noch gar nicht, was muss ich tun? Teste einfach mal folgendes Minimalbeispiel. In diesem wird ein Verzeichnis erstellt das nur einen Begriff enthält. Code:
\documentclass{article}
%Laden des Paketes
\usepackage{glossaries}
\makeglossaries
%Unser Testeintrag
\newglossaryentry{wbrot}{name=Wurstbrot,
description={Lecker gebackener Hefeteig mit verwurstetem Tier}}
\begin{document}
%den Begriff im Text verwenden
\gls{wbrot}
%Ausgabe des Verzeicnisses
\printglossary[title=Unser Testglossar]
\end{document}
Die Ausgabe ist in nachfolgendem Screenshot zu sehen "Stop" wirst Du jetzt sagen, "bei mir gibt es noch gar kein Verzeinis!?". Damit sind wir schon beim größten Problem, lies einfach weiter in Abschnitt 2. 2. Ich glaube ich habe den Code richtig, aber es wird kein Verzeichnis erstellt? Du kompilierst obiges Beispiel oder Dein eigenes und es werden keine Fehler angezeigt aber trotzdem siehst Du kein Verzeichnis? - makeindex ist Dein Problem. makeindex ist ein kleines Programm das schon bei Dir installiert ist (in jeder LaTex Distrubution), leider stimmen die Argumente die an makeindex übergeben werden noch nicht. Das glossaries Paket kommt automatisch mit einem tollen Perl Skript um uns davon zu erlösen am makeindex Aufruf herumzupfuschen. Linux User sind hier fein, raus sie können Perl-Skripte ausführen. Windows Nutzer müssen sich zusätzlich einen Perl-interpreter installieren. Bist Du Windows Nutzer, dann installiere dir Active Perl (kostenlose Software) http://www.activestate.com/activeperl/downloads (Active Perl Community Edition) Nach der Installation kannst jetzt auch Du Perl-Skripte aufrufen (olé). Öffne jetzt die Eingabeauffoderung/Kommandozeile mit Windowstaste + R (ich beschreibe das hier für Windows, Linux User haben sehr ähnliche Befehle, im Zweilfel sind die Befehle zu er-googeln) CMD eingeben In dem sich öffnenden Fesnter in das Verzeichnis navigieren in dem sich die Tex-Datei befindet. Meine ist in C:\Tex_Dokumente\testprojekt2\glossaries. cd\ bringt uns in die Oberste Dateiebende cd.. Wechselt zum nächt höheren Ordner cd Ordnername bringt uns in den Ordner Tab hilft uns Wörter zu vervollstängen die wir angefangen haben zu schreiben(Schreibersparnis). Jetzt bleibt uns nur doch das Skript aufzurufen. Meine Hauptdatei heißt LaTex1.tex. Also muss ich makeglossaries LaTeX1 eingeben (ohne Dateiendung). Das Skript wird ausgeführt und gibt ein Protokoll aus. Du siehst das ein Eintrag akzeptiert wurde und null Einträge abgewiesen wurden. Perfekt. Jetzt noch einmal das Dokument kompilieren und das Verzeichnis ist da! Ist Dir das zu kompliziert, dann schaue dir Abschnitt 4 an. Bedenke aber, dass diese Methode sehr praktisch ist, vor allem bei mehreren Verzeichnissen. Natürlich lässt sich der ganze Aufruf auch von einem Skript erledigen, das würde aber den Rahmen hier sprengen. 3. Ich möchte mehr als ein Verzeichnis haben, wie geht das? glossaries hat einen Vordefinierten Verzeichnistyp 'main' und per Option kann man einen weiteren ('Acronym') hinzufügen. Ein Symbolverzeichnis könnte man z.B. so erstellen Code:
%Allgemeine definition
%\newglossary[⟨log-ext⟩]{⟨name⟩}{⟨in-ext⟩}{⟨out-ext⟩}{⟨title⟩}[⟨counter⟩]
%Unsere Definition für ein Symbolverzeichnis
\newglossary[svl]{symbols}{svi}{svo}{Symbolverzeichnis}
svi ist die Datei die vom makeglossaries Skript gelesen wird svo ist die Datei die dann für dieAusgabe gelesen wird Symbolverzeichnis ist der Standardname unseres Verzeichnis Das Beispiel aus Abschnitt 1 könnte man dann so erweitern Code:
\documentclass{article}
\usepackage[ngerman]{babel}
%Laden des Paketes
\usepackage{glossaries}
\newglossary[svl]{symbols}{svi}{svo}{Symbolverzeichnis}
\makeglossaries
%Unser Testeintrag
\newglossaryentry{wbrot}{name=Wurstbrot,
description={Lecker gebackener Hefeteig mit verwurstetem Tier}}
%Unser Testeintrag Symbolverzeichnis
\newglossaryentry{Dichte}{type=symbols,name={$\rho$},
sort=rho,description={Dichte von irgendwas}}
\begin{document}
%den Begriff im Text verwenden
\gls{wbrot}, \gls{Dichte}
%Ausgabe des Verzeicnisses
\printglossary[title=Unser Testglossar]
\printglossary[title=Unser Testsymbolverzeichnis,type=symbols]
\end{document}
Natürlich muss das makeglossaries Skript wieder aufgerufen werden. Es erkennt jetzt automatisch unser neues Verzeichnis! Wie toll ist das denn? ![]() Die Entsprechende Ausgabe ist dann hier zu sehen ![]() 4. Ich habe was von " 'makeindex aufruf' anpassen" gelesen, was bedeutet das? makeindex ist das Programm das die Einträge sortiert. Es ist in jeder LateX Distubution bereits enthalten. Wenn man es mit dem glossaries Paket verwendet muss man makeindex ein paar Argumente mitgeben. Das muss man entweder in der Eingabeaufforderung machen (siehe Abschnitt 2) oder man richtet eine Prozedur im Editor ein. Da es viele Editoren gibt kann ich hier nicht beschreiben wie man das im Einzelfall macht. Ich empfehle jedem die Verwendung des makeglossaries Perl-Skripts, wie in Abschnitt 2 beschrieben. Generell würde man das Verzeichnis so aufrufen Code:
makeindex -s myDoc.ist -t myDoc.glg -o myDoc.gls myDoc.glo Code:
makeindex -s LaTex1.ist -t LaTex1.svl -o LaTex1.svi LaTex1.svo ![]() Bitte hier nicht Deine Probleme posten, öffne ein neues, individuelles Thema Ich hoffe das hilft dem ein oder anderen. Bitte schaut auch in die Dokumentation zu diesem Paket. Es kann noch so viel mehr... Gruss
__________________
Mein Ball ist umgefallen Geändert von bobmalaria (01-08-2010 um 13:19 Uhr) |
|
|
|
|
|
#2 |
|
Registrierter Benutzer
Registriert seit: 21.07.2010
Beiträge: 55
|
Gigantisch!!
Das hat bestimmt viel Arbeit gemacht! Ich bin Dir sehr dankbar dafür und ich bin sicherlich nicht alleine. Dieser Beitrag sollte IMHO irgendwie "sticky" gemacht werden. |
|
|
|
|
|
#3 | |
|
Registrierter Benutzer
Registriert seit: 03.04.2007
Ort: Wieren
Beiträge: 258
|
Glossaries
Zitat:
dem schließe ich mich an, danke für die Mühe. Gruß Martin
__________________
Poesie ist zur Rarität verpflichtet, Sachlichkeit kann sich Wiederholungen leisten. Novalis
|
|
|
|
|
|
|
#4 |
|
Registrierter Benutzer
|
Hi,
ich habe jetzt noch ein paar Bilder hinzugefügt. Diese musste ich leider auf Flickr hochladen da hier im Forum nur 5 Anhänge möglich sind. Ich denke aber das der Link permanent sein sollte. Gruss
__________________
Mein Ball ist umgefallen |
|
|
|
|
|
#5 |
|
Registrierter Benutzer
Registriert seit: 01.11.2006
Ort: Braunschweig
Beiträge: 3.053
|
Von der Autorin des Pakets selbst
__________________
¹ Es tut mir leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen. ² Systeme: openSUSE 11.3, TeX Live 2009, TeXworks 0.3 | Windows XP Pro (SP3), MiKTeX 2.8, TeXworks 0.3 ³ Lernt gerade TeX. |
|
|
|
![]() |
| Lesezeichen |
| Stichworte |
| abkürzungsverzeichnis, glossaries, nomenklatur, problem, symbolverzeichnis |
| Themen-Optionen | |
| Ansicht | Thema bewerten |
|
|