Seite 1 von 2

Nomenklatur

Verfasst: Mo 18. Nov 2013, 10:46
von b.sa325
Hi ich wollte ne Nomenklatur erstellen und es ging zwischen durch und dann wieder nicht, obwohl ich da nichts geändert habe...wenn ich eine neue Datei erzeuge will es auch nicht...zum Durchdrehen


Hab folgendes befolgt:


1.Schritt: Makeindex konfigurieren
Reiter Befehle: Makeindex: makeindex.exe %.nlo -s nomencl.ist -o %.nls
2. Schritt: Makeindex beim kompilieren ausführen
Reiter Erzeugen: Standardkompiler (rechts auf Schraubenschlüssel): makeindex zufügen


Dann folgenden Code genommen:

\documentclass{scrreprt} 

\usepackage[utf8]{inputenc} 
\usepackage[ngerman]{babel} 
\usepackage[intoc]{nomencl} 

\makenomenclature 

 
\begin{document} 

\nomenclature{a}{b}

\printnomenclature 

\end{document}



Resultat nach Durchlaufen:




Prozess gestartet: makeindex.exe "asfdasf".nlo -s nomencl.ist -o "asfdasf".nls

This is makeindex.exe, version 2.15 [MiKTeX 2.9 64-bit] (kpathsea + Thai support). Scanning style file C:/Program Files/MiKTeX 2.9/makeindex/nomencl/nomencl.ist..........done (10 attributes redefined, 3 ignored). Scanning input file asfdasf.nlo...done (0 entries accepted, 0 rejected). Nothing written in asfdasf.nls. Transcript written in asfdasf.ilg.

Prozess endete normal



In der .ilg datei stand folgendes:


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

In die .nls Datei wird einfach nix reingeschrieben.
Keine Ahnung was ich machen soll....jemand ne ahnung?

Verfasst: Mo 18. Nov 2013, 12:57
von Stefan Kottwitz
Hast Du mehrmals durchlaufen lassen? In einem Lauf wird geschrieben, was im nächsten Lauf eingelesen werden kann.

Was steht in asfdasf.nlo?

Stefan

Verfasst: Mo 18. Nov 2013, 13:24
von b.sa325
Ja, habs mehrmals durchlaufen lassen. In der .nlo Datei steht garnichts drin. Es sieht so aus als ob er den Eintrag aus der .tex Datei erst gar nicht übernimmt.

Verfasst: Mo 18. Nov 2013, 16:01
von Besserwisser
Dass die nlo-Datei leer ist, liegt schlicht daran, dass bei Deiner Testdatei nichts ausgegeben wird. Die \nomenclature-Anweisung schreibt nämlich nicht unmittelbar, sondern erst, wenn die Seite, auf der sie steht, ausgegeben wird. Bei Deinem Testdokument gibt es aber keine Seite, solange es keine Nomenklatur gibt. Also wird auch keine nlo-Datei geschrieben. Ändere das Beispiel zu
\documentclass{scrreprt}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[intoc]{nomencl}

\makenomenclature

 
\begin{document}

\chapter{Test}
\nomenclature{a}{b}

\printnomenclature

\end{document}
und schon hast Du in der nlo-Datei:
\nomenclatureentry{aa@[{a}]\begingroup b\nomeqref {1.0}|nompageref}{1}
und in der daraus erzeugten nls-Datei:
\begin{thenomenclature} 

 \nomgroup{A}

  \item [{a}]\begingroup b\nomeqref {1.0}\nompageref{1}

\end{thenomenclature}
und beim nächsten LaTeX-Lauf eine Nomenklatur auf Seite 2.

Merke: Index und jede Art von Glossar gibt es nur, wenn die entsprechenden Anweisungen auf Seiten stehen, die auch ausgegeben werden.

Verfasst: Mo 18. Nov 2013, 18:17
von b.sa325
Super hat geklappt Danke :D

Verfasst: Mo 18. Nov 2013, 18:32
von Besserwisser
Wer ordentlich fragt, bekommt auch ordentliche Antworten – oder hat zumindest die Chance, dass er eine solche bekommt. :wink:

Falls die Frage beantwortet ist, solltest Du allerdings auch noch den Status anpassen. Siehe hierzu auch die allgemeinen, wichtigen Hinweise und Vorabhilfen.

Nomenklatur mit MikTeX

Verfasst: Mi 9. Jul 2014, 18:34
von Sportiee
Hey,

ich habe den Code von Besserwisser genommen und trotzdem funktioniert meine Nomenklatur nicht.
% Das ist mein LaTeX-Dokument.
\documentclass{scrreprt}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[intoc]{nomencl}

\makenomenclature

 
\begin{document}

\chapter{Test}
\nomenclature{a}{b}

\printnomenclature

\end{document}
% Ende des Dokumentes
Dann steht in meiner .nlo-Datei:
\nomenclatureentry{aa@[{a}]\begingroup b\nomeqref {1.0}|nompageref}{1}
in der .ilg-Datei
This is makeindex, version 2.15 [MiKTeX 2.9] (kpathsea + Thai support).
Scanning style file C:/Program Files/MikTex/makeindex/nomencl/nomencl.ist.......
** Input style error (file = C:/Program Files/MikTex/makeindex/nomencl/nomencl.ist, line = 70):
   -- Unknown specifier lethead_prefix.
** Input style error (file = C:/Program Files/MikTex/makeindex/nomencl/nomencl.ist, line = 71):
   -- Unknown specifier lethead_suffix.
** Input style error (file = C:/Program Files/MikTex/makeindex/nomencl/nomencl.ist, line = 72):
   -- Unknown specifier lethead_flag.
...done (10 attributes redefined, 3 ignored).
Scanning input file document.nlo...done (0 entries accepted, 0 rejected).
Nothing written in document.nls.
Transcript written in document.ilg.
und die .nls-Datei ist leer.

Zu dem lautet mein Makeindex:
%input -s nomencl.ist -o %output
Dabei steht %input für den NamenderDatei.nlo und %output für den NamenderDatei.nls.

Kann mir jemand Helfen? :cry:

Verfasst: Mi 9. Jul 2014, 18:44
von Besserwisser
Laut ilg-Datei ist deine nlg-Datei aber leer. Mehr kann ich so nicht sagen. Ich weiß ja nicht einmal, ob die TeX-Datei bei dir wirklich document.tex und die nlg-Datei wirklich document.nlg heißt. Ich weiß auch nicht, wie du makeindex genau aufrufst, also ob von der Konsole oder aus irgend einem Editor heraus und wie du das gemacht hast.

Verfasst: Mi 9. Jul 2014, 18:46
von u_fischer
Also laut makeindex ist nichts in der nlo-Datei: (0 entries accepted, 0 rejected).

Verfasst: Mi 9. Jul 2014, 19:22
von Sportiee
Ich hab festgestellt sobald ich manuell zu begin einen zweiten \ einfüge, dann funktioniert es beim darauf folgenden mal.
alt:
\nomenclatureentry{aa@[{a}]\begingroup b\nomeqref {1.0}|nompageref}{1}
neu:
\\nomenclatureentry{aa@[{a}]\begingroup b\nomeqref {1.0}|nompageref}{1}
Kann ich das irgendwie automatisieren oder weiß jemand wie ich das programmieren kann. Vielleicht hilft es mir auch schon, wenn ich weiß welche Datei in die .nls-Datei rein schreibt? Dann könnte ich diese vielleicht verändern?