Nomenklatur in Texmaker

Erstellen von Index, Glossar, Symbolverzeichnis, einer Nomenklatur etc. mit MakeIndex oder Xindy


DonMcDonut
Forum-Anfänger
Forum-Anfänger
Beiträge: 39
Registriert: Fr 17. Feb 2012, 14:19

Beitrag von DonMcDonut »

Hallo,

okay - alle Forenregeln haben sich mir noch nicht erschlossen :-).

Ich bin davon ausgegangen, dass ich über die Funktion Werkzeuge-Aufräumen (bei texmaker) alle übrigen Daten außer der .tex und der .pdf lösche. Aber ihr habt wieder vollkommen Recht: die .nls-Datei bleibt bestehen!!

Jetzt hat es funktioniert: alte .nls-Datei gelöscht und dann bei der Einstellung von 'makeindex' die neue Datei zugewiesen, also

makeindex <Hauptdatei>.nlo -s mynomentbl.ist -o <Hauptdatei>.nls

Dazu noch eine Verständnisfrage: mynomentbl.ist greift doch auf auf meine Datei, in der die Einstellungen und die Einträge für die Nomenklatur stehen, zu. Dann greife ich mit meiner Hauptdatei auf diese Datei wiederum zu.
Warum muss ich dann makeindex neu 'definieren' ?

Gruß
DonMcDonut

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Die »ist« Datei ist eine Index-Stil-Datei. Sie hat nicht direkt mit makeindex (=dem Programm, dass das Sortieren übernimmt) zu tun sondern steuert eher, was makeindex wie in die spezifizierte Output-Datei schreibt. In diesem Fall ist das die »nls« Datei. In diesem konkreten Fall sagt »mynomentbl.ist«:
Wenn \prindext ausgeführt wird beginne erst eine »longtable« Umgebung mit diesen und jenen Spalten und dieser und jener Überschrift. Wenn Du dann fertig bist mit der langen Liste, beende die »longtable« Umgebung
Dass die einzelnen Einträge dazwischen nun Tabellenzeilen ergeben erledigt die Neudefinition von »\@@@nomenclature«.

Der Aufruf
makeindex <filename>.nlo -s mynomentbl.ist -o <filename>.nls
ruft also das Programm makeindex auf, gibt ihm die »nlo« Datei als Input, in dem die Nomenklaturdaten in der Reigenfolge stehen, wie sie im Text aufgetaucht sind, die »ist« Datei zur Formatierung der Ausgabe und sagt noch „verwende sie »nls« Datei zum Schreiben des fertig formatierten Index .. äh .. der Nomenklaturliste.“

Übrigens: wenn man »\makenomenclature« nicht verwendet hat, bleibt die Input-Datei leer => keine Nomenklaturliste.

Grüße
Clemens
Paketauthor

DonMcDonut
Forum-Anfänger
Forum-Anfänger
Beiträge: 39
Registriert: Fr 17. Feb 2012, 14:19

Beitrag von DonMcDonut »

Hallo Clemens,

vielen Dank für die Ausführungen.
Anfangs habe ich deine Sachen nur übernommen, aber gelegentlich sollte man auch verstehen, was man aus welchem Grund macht!

Mit deinem letzten Kommentar setze ich den Status auf 'beantwortet'!

Vielen Dank und bis zum nächsten Mal in nicht allzu weiter Zukunft :-D

Gruß

DonMcDonut
Forum-Anfänger
Forum-Anfänger
Beiträge: 39
Registriert: Fr 17. Feb 2012, 14:19

Beitrag von DonMcDonut »

Hallo Clemens,

nachdem durch deine Hilfe ich vor vier Wochen endlich eine Nomenklatur erstellt habe und diese in der Hauptdatei problemlos die letzten Wochen funktioniert hat, taucht jetzt eine Fehlermeldung auf und die Nomenklatur wird nicht mehr erstellt.
Index style file mynomentbl.ist not found. Usage: makeindex [-ilqrcgl][-s sty][-o ind][-t log][-p num][idx0 idx1 ...]
Process ecited with error(s)
Ich habe keine Änderungen an der Datei Nomenklatur und der dazu gehörigen mcode.sty geändert. Also die Änderungen sind vor Wochen erfolgt und bislang hat es funktioniert.

Kannst du mir da weiterhelfen oder benötigst du wieder ein Beispiel. Allerdings beziehe ich mich ja auf die vorherigen Betrachtungen in dieem Thread.
Gruß
DMD

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Die Fehlermeldung ist ziemlich eindeutig:
Index style file mynomentbl.ist not found
Bearbeitest Du ein neues Dokument in einen neuen Ordner und hast vergessen, die Datei »mynomentbl.ist« in diesen Ordner zu kopieren?

Oder bist Du noch beim gleichen Dokument, hast aber die Datei »mynomentbl.ist« aus Versehen gelöscht?

Oder ...

Grüße
Clemens
Paketauthor

DonMcDonut
Forum-Anfänger
Forum-Anfänger
Beiträge: 39
Registriert: Fr 17. Feb 2012, 14:19

Beitrag von DonMcDonut »

Alter Schwede,

Schreibe erst jetzt´, da ich mich die ganze Zeit nicht einloggen konnte...
Ich habe schon gedacht, ich brauche das ganze Wochenende um den Fehler zu finden. Aber das ging jetzt sehr schnell :-)

Ich kopiere in regelmäßigen Schritten den Ordner und benenne ihn durch das aktuelle Datum, sodass ich auch verschiedene Stände zugreifen kann. Alle Daten, wie die Hauptdatei, die Unterdateien und sowas kopiere ich eigentlich jedes mal mit.

Aber mir ist gerade aufgefallen, dass die Datei mynomentbl.ist nicht in dem aktuellen Ordner war. D.h. irgendwann muss diese "abhanden" gekommen sein und dann habe ich munter den Ordner ohne diese Datei weiter kopiert.

Jetzt funktioniert es wieder.

Herzlichen Dank, cgnieder!! Ihr seid hier alle echt fit darin!!

Gruß
DMD

b.sa325
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Do 10. Okt 2013, 16:02
Wohnort: Berlin

Beitrag von b.sa325 »

Hallo, bin ein Anfänger in Latex...
Der Standardbefehl für die Nomenklatur funktioniert bei mir fehlerfrei, wobei ich für MakeIndex folgendes verwende:

makeindex.exe %.nlo -s nomencl.ist -o %.nls

Nun wollte ich auch diesen code von der ersten Seite für eine Nomenklatur einfach mal ausprobieren und bekomme eine Fehlermeldung auch wenn ich den Code in ein Leeres Dokument kopiere.
\usepackage[ngerman]{babel}
\usepackage[intoc]{nomencl}



\renewcommand*\nomname{Nomenklatur}
\setlength\nomlabelwidth{.25\linewidth}
\setlength\nomitemsep{-\parsep}
\newcommand\nomunit[1]{\def\nomentryend{\hfill#1}}

\renewcommand\nomgroup[1]{%
  \def\makelabel##1{##1}%
  \bigskip
  \ifx#1L\relax
    \item[\textbf{\Large Lateinische Formelzeichen}]%
  \fi
  \ifx#1G\relax
    \item[\textbf{\Large Griechische Formelzeichen}]%
  \fi
  \ifx#1A\relax
    \item[\textbf{\Large Abkürzungen}]%
  \fi
  \medskip
  \let\makelabel\nomlabel
}
\makenomenclature
\begin{document}

\nomenclature[G]{$\alpha$}{Winkel gegenüber Ausgangszustand\nomunit{[$^\circ$]}}
\nomenclature[G]{$\alpha$'}{aktueller Winkel\nomunit{[$^\circ$]}}
\nomenclature[L]{A}{Querschnittsfläche\nomunit{[$mm^2$]}}
\nomenclature[L]{a(t)}{Beschleunigung (abhängig von der Zeit)\nomunit{[s]}}
\nomenclature[L]{a\textsubscript{0}}{Anfangsbeschleunigung (der Maschine)\nomunit{[$\frac{m}{s^2}$]}}
\nomenclature[L]{A\textsubscript{x}}{Axiale Kontaktkraft in Lager A\nomunit{[$N$]}}
\nomenclature[L]{A\textsubscript{y}}{Vertikale Kontaktkraft in Lager A\nomunit{[$N$]}}

\printnomenclature

\end{document}
Fehlermeldung:

This is makeindex.exe, version 2.15 [MiKTeX 2.9] (kpathsea + Thai support).
Scanning style file C:/Users/Bojan/AppData/Roaming/MiKTeX/2.9/makeindex/nomencl/nomencl.ist.......
** Input style error (file = C:/Users/Bojan/AppData/Roaming/MiKTeX/2.9/makeindex/nomencl/nomencl.ist, line = 70):
-- Unknown specifier lethead_prefix.
** Input style error (file = C:/Users/Bojan/AppData/Roaming/MiKTeX/2.9/makeindex/nomencl/nomencl.ist, line = 71):
-- Unknown specifier lethead_suffix.
** Input style error (file = C:/Users/Bojan/AppData/Roaming/MiKTeX/2.9/makeindex/nomencl/nomencl.ist, line = 72):
-- Unknown specifier lethead_flag.
...done (10 attributes redefined, 3 ignored).
Scanning input file Diplomarbeit.nlo...done (0 entries accepted, 0 rejected).
Nothing written in Diplomarbeit.nls.
Transcript written in Diplomarbeit.ilg.

Weiß jemand warum diese Fehlermeldung kommt?

Danke im Voraus

Antworten