Nomenklatur

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


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

Nomenklatur

Beitrag 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?

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Beitrag 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

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

Beitrag 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.

Besserwisser

Beitrag 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.

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

Beitrag von b.sa325 »

Super hat geklappt Danke :D

Besserwisser

Beitrag 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.

Sportiee
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 9. Jul 2014, 15:22
Wohnort: Hamburg

Nomenklatur mit MikTeX

Beitrag 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:

Besserwisser

Beitrag 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.

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4300
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Also laut makeindex ist nichts in der nlo-Datei: (0 entries accepted, 0 rejected).

Sportiee
Forum-Newbie
Forum-Newbie
Beiträge: 6
Registriert: Mi 9. Jul 2014, 15:22
Wohnort: Hamburg

Beitrag 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?

Antworten