PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : nomencl funktioniert nicht.



Weihnachtsmann
03-04-2014, 13:51
Guten Tag,

ich versuche gerade nomencl für ein Glossar zu verwenden. Leider wird bei \printnomenclature nichts angezeigt.

Ich verwende Notepad++ mit Folgendem Kompilierbefehl:


cmd /c cd /d "$(CURRENT_DIRECTORY)" && texify --tex-option=-enable-write18 --clean --pdf --run-viewer "$(FILE_NAME)"


Ich habe folgendes Versucht:
Die Datei nomencl.sty in alle verzeichnisse kopiert, auf die makeindex zugreift.
Alles updaten und Refreshen. (Packages, FNDB, Formats)
Statt mit texify direkt mit pdflatex kompiliert:


cmd /c cd /d "$(CURRENT_DIRECTORY)" && pdflatex.exe -shell-escape "$(FILE_NAME)"


Anbei ist ein Minimalbeispiel der Package-Dokumentation.


Vielen Dank für Hilfe!



\documentclass{article}
\usepackage{nomencl}
\makenomenclature
\begin{document}
\section*{Main equations}
\begin{equation}
a=\frac{N}{A}
\end{equation}%
\nomenclature{$a$}{The number of angels per unit area}%
\nomenclature{$N$}{The number of angels per needle point}%
\nomenclature{$A$}{The area of the needle point}%
The equation $\sigma = m a$%
\nomenclature{$\sigma$}{The total mass of angels per unit area}%
\nomenclature{$m$}{The mass of one angel}
follows easily.
\printnomenclature
\end{document}


Ich habe jetzt einen anderen Weg eingeschlagen. Ich verwende glossaries mit \printnoidxglossary[sort=word]. Trotzdem würde ich gerne mein bisheriges Problem lösen.

Magger
03-04-2014, 20:54
Ruf mal makeindex wie im nomencl-Handbuch beschrieben in der Form


makeindex filename.nlo -s nomencl.ist -o filename.nls

auf (filename durch den Namen deiner tex-Datei ersetzen).

rais
03-04-2014, 20:56
ich versuche gerade nomencl für ein Glossar zu verwenden. Leider wird bei \printnomenclature nichts angezeigt.

Ich verwende Notepad++ mit Folgendem Kompilierbefehl:


cmd /c cd /d "$(CURRENT_DIRECTORY)" && texify --tex-option=-enable-write18 --clean --pdf --run-viewer "$(FILE_NAME)"


ich kenne texify nicht (hab ich auch nicht), aber ich würde als erstes die --clean-Option weglassen und wissen wollen,
a) ob eine .ilg (.nlg) Datei erzeugt wird und wenn ja
b) was drin steht.


Ich habe folgendes Versucht:
Die Datei nomencl.sty in alle verzeichnisse kopiert, auf die makeindex zugreift.

Wozu? `nomencl.sty' muss von (pdf)LaTeX gefunden werden können.
Von makeindex muss `nomencl.ist' gefunden werden können -- das kann es aber auch nur, wenn Du/texify makeindex entsprechend aufrufst.


Statt mit texify direkt mit pdflatex kompiliert:


cmd /c cd /d "$(CURRENT_DIRECTORY)" && pdflatex.exe -shell-escape "$(FILE_NAME)"


Hier fehlt definitiv der makeindex-Aufruf.


makeindex foo.nlo -s nomencl.ist -t foo.nlg -o foo.nls

(ersetze alle `foo' durch den Stammnamen Deiner .tex-Datei)
Danach muss dann noch zwei mal (pdf)LaTeX aufgerufen werden.

Evtl. kannst Du es kürzen, wenn Du den notwendigen makeindex-Aufruf in einen \write18-Befehl aufnimmst, etwa


\documentclass{article}
\usepackage{nomencl}
\IfFileExists{\jobname.nlo}{%
\immediate\write18{makeindex \jobname.nlo -s nomencl.ist -t \jobname.nlg -o \jobname.nls}%
}{}
\makenomenclature
\begin{document}
\section*{Main equations}
\begin{equation}
a=\frac{N}{A}
\end{equation}%
\nomenclature{$a$}{The number of angels per unit area}%
\nomenclature{$N$}{The number of angels per needle point}%
\nomenclature{$A$}{The area of the needle point}%
The equation $\sigma = m a$%
\nomenclature{$\sigma$}{The total mass of angels per unit area}%
\nomenclature{$m$}{The mass of one angel}
follows easily.
\printnomenclature
\end{document}

Das Write18-Feature hast Du ja erlaubt (wobei mich etwas stutzig macht, daß Du mal -enable-write18 (texify) und mal -shell-escape (pdflatex) versuchst).

Wohlmöglich tut das sgar mit texify;-)

MfG