Ich nutze LaTeX und den Editor TeXShop.
Derzeit muss ich viele Läufe von Hand durchführen, damit mein Text richtig gesetzt wird:
- LaTeX-Lauf (in TeXShop)
- BibTeX-Lauf (in TeXShop)
- makeindex (von Hand im Terminal (nomencl))
- 3 weitere Latex-Läufe (in TeXShop)
Erst jetzt wird mein Literaturverzeichnis, die Abkürzungen und Zitationen richtig angezeigt.
Schöner wäre es natürlich, wenn man die Prozesse automatisieren könnte. Und nach etwas Lektüre im Internet habe ich folgende Funktionsweise für mich entdeckt:
Man erstelle eine Textdatei mit folgendem Inhalt:
|
Diese Datei speichert man nun unter dem Namen “WASAUCHIMMER.engine” ab. Wichtig ist hier die Endung .engine
Du kannst die Datei auch von hier herunterladen (sie hat dann den Namen AllesMachen.engine).
Diese Datei legt man nun in den Ordner
~/Library/TeXShop/Engines/
Jetzt öffnet man das Programm Terminal und tippt dort ein:
cd ~/Library/TeXShop/Engines/
chmod u+x WASAUCHIMMER.engine
Ersetze hierbei WASAUCHIMMER durch den Dateinamen, den du für die Engine gewählt hast.
Jetzt muss TeXShop neu gestartet werden. Nach dem Neustart kann man rechts neben dem “Setzen”-Knopf die Engine WASAUCHIMMER auswählen. Ist diese ausgewählt, und man drückt auf den “Setzen”-Knopf, wird unsere eigene Engine ausgeführt.
Erklärung zum Script:
Zeile 1: sagt, dass es ein Shell-Script ist
Zeile 2: fängt den Dateinamen ab und entfernt die Endung .tex
Zeile 3: ein LaTeX-Lauf wird durchgeführt (pdflatex)
Zeile 4: ein BibTeX-Lauf wird durchgeführt
Zeile 5: Das Abkürzungsverzeichnis wird erstellt (nomencl)
Zeile 6: ein LaTeX-Lauf wird durchgeführt (pdflatex)
Zeile 7: ein LaTeX-Lauf wird durchgeführt (pdflatex)
Zeile 8: ein LaTeX-Lauf wird durchgeführt (pdflatex)
Das Script macht also all die Läufe, die ich oben erwähnt habe automatisch hintereinander weg durch. Find ich echt super! Natürlich kann das Script an eure individuellen Anforderungen angepasst werden.
Übrigens funktioniert das Script auch mit Kile unter Ubuntu.
10 Comments
Hallo,
ich habe alles was hier ist brav eingesetzt. Ich bekomme schon den Titel “Abkürzungsverzeichnis” in meine PDF Datei angezeigt. Nun wie soll ich jetzt meine Abkürzungen im Text beschriften so dass sie auch wirklich im Abkürzungsverzeichnis erscheinen?
Vielen Dank im Voraus für die Antwort.
MfG
Maggi
Hallo Maggi,
sorry, habe eben erst die Page und deinen Kommentar gesehen. Ich habe es in meiner DA so gelöst.
Folgendes habe ich in meiner setup.tex
%Abkuerzungsverzeichnis
\usepackage{nomencl}
%Neuen Befehl setzen -> \abk
\let\abk\nomenclature
\renewcommand{\nomname}{Abkürzungsverzeichnis}
\setlength{\nomlabelwidth}{.25\hsize}
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\setlength{\nomitemsep}{-\parsep}
\makenomenclature
%Kommando fuer die Initialisierung
\newcommand{\Abkuerzung}{}
Im Dokument musst du dann Abkürzungen so \abk{Abk}{Abkürzung} angeben. dann wird es auch im Abkürzungsverzeichnis als Abk…………..Abkürzung angezeigt.
ciao Roling
Hallo Produnis, Maggi und Roling,
ich bin mit LaTeX noch etwas unbedarft freue mich aber über jeden Schritt den ich weiter komme, nur bei den Verzeichnissen (Glossar und Abk-Verzeichnis) häng ich massiv fest.
Ich habe gerade das Verzeichnis versucht so ein zu bauen, wie ihr es beschrieben habt leider mit bescheidenem Erfolg. Ich erhalte als Meldung nach dem Setzen:
AllesMachen.engine does not have the executable bit set.
Was will mir die Software sagen und wo versteh ich das Prinzip beim erstellen von dem Abk-V noch nicht?
Eine .nlo Datei wird erzeugt mehr leider nicht.
Ich nutze auch TeXShop und pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009)
sowie MacOSx 10.5.8 -falls das hilft.
Schon mal herzlichen Dank an euch.
Gruß nik
Naja, die intereessante Fehlermeldung ist “AllesMachen.engine does not have the executable bit set.” D.h., auf deinem System ist AllesMachen.engine (noch) nicht als ausführbares Programm markiert.
Öffne einTerminal, gehe in den Ordner, in welchem AllesMachen.engine liegt, und setze dann folgenden Befehl ab:
chmod +x AllesMachen.engine
Das ist eine perfekte Lösung mit einer perfekten Erklärung zu einem Problem an dem ich sehr lange gehangen habe!
Tausend DANK!!!!!!!!
Yps
Erstmal danke für die tolle Erklärung produnis!
Eine kleine Erweiterung des Shell Scripts, da ich Probleme beim Compilieren hatte. Das Problem bei mir ist, dass ich \usepackage{auto-pst-pdf} nutze und deshalb immer eine Fehlermeldung erhalten habe. Für diejenigen unter Euch die auch dieses Problem haben, Abhilfe schafft -shell-escape:
#!/bin/sh
bfname=”`basename “$1″ .tex`”
pdflatex -shell-escape “$1″
bibtex “$bfname”
makeindex “$bfname”.nlo -s nomencl.ist -o “$bfname”.nls
pdflatex -shell-escape “$1″
pdflatex -shell-escape “$1″
pdflatex -shell-escape “$1″
Hallo,
ich möchte in \LaTex mit dem Paket multind Verzeichnisse erzeugen. Ich habe dazu die nötigen Befehle in mein Dokument eingefügt und mehrere Läufe mit der Wirkung durchgeführt, dass nun die Verzeichnissüberschriften gesetzt wurden und die Dateien des Typs name.idx erzeugt wurden, die Befehle des Typs \indexentry{name}{seite} enthalten.
Um mein Dokument mit den Verzeichnissen zu setzen, muss ich nun wohl im Terminal die Befehle makeindex name ausführen, diese werden aber leider nicht gefunden.
Ich wüsste gerne, wie sich dieses Problem lösen ließe.
Viele Grüße
Hallo zusammen,
eigentlich passt das hier nicht so ganz her, aber das war die einzige Seite mit aktuellen Kommentaren, die ich zu diesem Thema gefunden habe.
Bisher hatte ich SnowLeopard installiert und meine Nomenklatur konnte ich problemlos mit dem makeindex Befehl (makeindex “$bfname”.nlo -s nomencl.ist -o “$bfname”.nls) erstellen. Jetzt habe ich Lion installiert und wenn ich den makeindex-Befehl im Terminal ausführe, erhalte ich nur die Fehlermeldung: -bash: makeindex: command not found
Woran liegt das und was kann ich da tun?
Grüße Christina
Danke für den hilfreichen Tipp!
Hey super Anleitung. Vielen Dank dafür. Funktioniert perfekt