PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zwei Verzeichnisse mit Nomenclature



toehroeh
04-01-2006, 09:03
Hallo,
ich bin gerade in der Endphase meiner diplomarbeit und stehe vor einem scheinbar unüberwindbaren Problem. Mein Symbolverzeichnis habe ich mit nomenclature erzeugt, hat wunderbar geklappt. Jetzt brauch ich allerdings noch ein Verzeichnis für meine Abkürzungen und ich habe null Ahnung wie ich mit nomenclature ein zweites Verzeichnis anlege.

Der Vorschlag aus dem Forum mit der Partitionierung der Nomenclature geht bei mir nicht, da beide Verzeichnisse im Inhaltsverzeichnis und auf getrennten Seiten stehen müssen.

Ich wäre euch sehr dankbar, wenn ihr mir helfen könntet.

Gruß,
Martina

rais
04-01-2006, 21:42
Hallo Martina,
Du könntest auf gloss umsteigen, wenn's denn nicht zu viel Arbeit macht - da sind mehrere Dateien zumindest vorgesehen.
Oder Du könntest Dir behelfen, indem Du wie bei dem partitioniertem nomencl vorgehst, d.h. alle Symbole werden z.B. zusätzlich mit [s] ausgestattet, dann könntest Du etwa so:

\documentclass[12pt,a4paper]{scrreprt}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[german]{babel}
\usepackage[intoc]{nomencl}
\usepackage{ifthen}
\makenomenclature
\begin{document}
\renewcommand{\nomname}{Abkürzungsverzeichnis}
\tableofcontents
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} eignet sich \emph{bestens} dazu, anderen eigene Probleme zu übermitteln bzw.\nomenclature{bzw.}{beziehungsweise} eine Lösung zu einem spezifischem Problem im Forum zu posten\dots
Ein Symbol koennte so aussehen: $\eta$\nomenclature[s]{$\eta$}{wieder mal griechisch\dots}

Es bleibt trotzdem ratsam, zunächst die FAQ\nomenclature{FAQ}{Frequently Asked (\& answered) Questions} zu konsultieren.
\nomenclature[r]{}{\protect\chapter*{\protect\hspace*{-\nomlabelwidth}Symbolverzeichnis}\protect\markboth {Symbolverzeichnis}{Symbolverzeichnis}\protect\add contentsline{toc}{chapter}{Symbolverzeichnis}}\pri ntnomenclature
\end{document}
LaTeX dazu überreden, ein zweites Verzeichnis anzulegen. Den \hspace* mußt Du ggf. noch anpassen (oder kannst ihn gar weglassen), aber das brauchst Du ja nur einmal zu erledigen.:cool:
getestet mit nomencl v4.2 (2005/09/22)
MfG,

toehroeh
05-01-2006, 13:03
Funktioniert wunderbar. Vielen Dank

toehroeh
15-01-2006, 13:32
So dank dem Tipp von rais ist meine Nomenclature jetzt fertig gebaut, allerdings bin ich mit der Sortierreihenfolge noch nicht ganz zufrieden.

$G$ wird z.B. wo ganz anders eingeordnet wie $\vec{G})$, ich möchte aber das die hintereinander aufgelistet werden.

Gibts da irgendwelche Möglichkeiten die Nomenclature zu manipulieren?

Thanks,
Martina

rais
15-01-2006, 19:53
Hallo Martina,
da Du bereits den optionalen Parameter benutzt, um zwischen den Verzeichnissen zu wählen, könntest Du den auch erweitern, also z.B.
\nomenclature[sg]{$G$}{..}, \nomenclature[sg]{$\vec{G}$}{..}
Das hat aber den Haken, daß dann ein evtl. vorhandenes
\nomenclature[s]{$H$}{..} dann _vor_ diesen beiden G's erscheint, d.h. da müsstest Du dann nochmal Hand anlegen und [s] durch [sh] ersetzen.
MfG,

oscarspatz
15-01-2006, 21:43
Hallo!
Ich hab das obere Beispiel auch ausprobiert und finde es SPITZE :)
Nun hab ich nur noch das Probelm, dass ich das anpassen von hspace bzw vspace nicht ganz hinbekomme - sowohl horizontal, als auch vertikal passt der Abstand nicht

bei mir steht gerade:

\nomenclature[r]{}{\protect\chapter*{\protect\hspace*{-\nomlabelwidth}\vspace*{-\topskip}Symbolverzeichnis}\protect\markboth{Symbo lverzeichnis}{Symbolverzeichnis}\protect\addconten tsline{toc}{chapter}{Symbolverzeichnis}}


Ich setz ja meine Chapterüberschriften mit dem Befehl

\renewcommand*{\chapterheadstartvskip}{\vspace*{-\topskip}}

quasi an die Kopfzeile nach oben...

was muss ich nun hier machen????? DANKE

rais
21-01-2006, 00:52
Hallo Marcus,
ich hab das Ganze mal ein wenig erweitert:D


\documentclass[a4paper]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath,amssymb,nomencl,ifthen}
\makenomenclature
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{}
\newcommand{\nomaltpostamble}{}
\newcommand{\usetwonomenclatures}{\nomenclature[\switchnomitem]{}{}}
\newcommand{\switchnomitem}{R}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\usetwonomenclatures
\printnomenclature
\end{document}
Damit sollte die zweite Überschrift wie die erste gesetzt werden - und nicht mehr innerhalb einer List-Umgebung.
Bei der intoc-Option für das nomencl-Paket tauchen dann auch beide Überschriften im TOC auf.
Einen Haken hat das aber noch: das zweite Verzeichnis beginnt mit einem Leereintrag (dieser Leereintrag war vorher der letzte Eintrag im ersten Verzeichnis), also entweder, man nimmt den in Kauf und setzt einfach mit
\nomenclature[a]{}{}
auch so einen Leereintrag an den Beginn des ersten Verzeichnisses, d.h. eigentlich war der Beginn des zweiten Verzeichnisses ein Teil dieses "Leereintrags" - oder man läßt ihn gar nicht erst in die .nls-Datei, z.B.


latex foo.tex
makeindex foo.nlo -s nomencl.ist -o dummy
grep -v {} dummy > foo.nls
latex foo.tex && latex foo.tex
rm dummy

makeindex schreibt dabei in eine (temporäre) Datei 'dummy', anschließend listet grep alle Zeilen der Datei 'dummy', die die Zeichenfolge '{}' _nicht_ (-v) enthalten, was Dank Ausgabeumleitung (>) in der Datei foo.nls dann gespeichert wird - und besagter Leereintrag enthält diese {} Zeichenfolge.;)
MfG,

oscarspatz
21-01-2006, 02:01
Hallo Marcus,
ich hab das Ganze mal ein wenig erweitert:D
was soll ich sagen und schreiben - bin sprachlos, es klappt und ist einfach
S E N S A T I O N E L L....

VIELEN, VIELEN DANK


makeindex schreibt dabei in eine (temporäre) Datei 'dummy', anschließend listet grep alle Zeilen der Datei 'dummy', die die Zeichenfolge '{}' _nicht_ (-v) enthalten, was Dank Ausgabeumleitung (>) in der Datei foo.nls dann gespeichert wird - und besagter Leereintrag enthält diese {} Zeichenfolge.;)
MfG,
Wenn mir das nun noch einer in Windows erbasteln könnte, wäre ich glücklich - ich habs nicht hinbekommen, weil "grep" ja eigentlich nen Befehl für unix ist.... :(
meine Bat-Datei sieht ja so aus:

@echo off
C:\Programme\Latex\miktex\bin\latex zentraldokument.tex
C:\Programme\Latex\miktex\bin\latex zentraldokument.tex
C:\Programme\Latex\miktex\bin\bibtex zentraldokument
C:\Programme\Latex\miktex\bin\makeindex zentraldokument.idx -g -r -s meins.ist -o zentraldokument.ind
C:\Programme\Latex\miktex\bin\makeindex zentraldokument.nlo -s nomencl.ist -o zentraldokument.nls
HIER FEHLT DER GREP-BEFEHL
C:\Programme\Latex\miktex\bin\latex zentraldokument.tex
C:\Programme\Latex\miktex\bin\latex zentraldokument.tex
C:\Programme\Latex\miktex\bin\dvips -o zentraldokument.ps zentraldokument.dvi

oscarspatz
21-01-2006, 02:35
ich hab gegoogelt und bin auf Grep for Windows (http://gnuwin32.sourceforge.net/packages/grep.htm) gestossen

es klappt!!!!!!!

es müssen nur zusätzlich noch die unten auf der HP angegebenen Pakete mit installiert werden....

hier der CODE:

@echo off
C:\Programme\Latex\miktex\bin\latex zentraldokument.tex
C:\Programme\Latex\miktex\bin\latex zentraldokument.tex
C:\Programme\Latex\miktex\bin\bibtex zentraldokument
C:\Programme\Latex\miktex\bin\makeindex zentraldokument.idx -g -r -s meins.ist -o zentraldokument.ind
C:\Programme\Latex\miktex\bin\makeindex zentraldokument.nlo -s nomencl.ist -o dummy
c:\Programme\GnuWin32\bin\grep -v {} dummy >zentraldokument.nls
C:\Programme\Latex\miktex\bin\latex zentraldokument.tex
C:\Programme\Latex\miktex\bin\latex zentraldokument.tex
C:\Programme\Latex\miktex\bin\dvips -o zentraldokument.ps zentraldokument.dvi
del dummy

rais
21-01-2006, 14:57
Hallo Marcus,
ich mein', ich bin ja voll für grep:D, und es war ja auch schon spät (oder besser "schon wieder früh"?), aber hätte es unter windos nicht auch ein


find /V "{}" dummy > foo.nls
für den entsprechenden grep getan?
MfG,

oscarspatz
21-01-2006, 15:48
MANN RAINER!!!!!!
Hätteste dich nicht mal früher dazu äussern können?????
shit, JA DAS GEHT AUCH.... :D
und ich hau mir fast die ganze Nacht damit um die Ohren...

Starbug
11-04-2006, 10:20
Ich muss mich an dieser Stelle auch mal bedanken. Find die Möglichkeit die hier aufgezeigt wurde, wirklich spitze und benutz sie selber in meiner Diplomarbeit. Allerdings hab ich ein kleines Problem. Das normale Nomencl-Verzeichnis wird sauber alphabetisch sortiert, das Symbolverzeichnis leider nicht. Kann mir jemand verraten wie ich die Sortierung hin bekommen?

rais
11-04-2006, 16:49
Moin moin,
erstmal Herzlich Willkommen :)
schau Dir bitte nochmal posts 4 & 5 hier im thread an ;)
MfG,

Starbug
12-04-2006, 09:18
Wer lesen kann ist klar im Vorteil. Vielen Dank nochmal. :D

Starbug
04-05-2006, 12:42
Ich hab das Beispiel von Rais nochmal etwas erweitert, so dass nun insgesamt drei Verzeichnisse möglich sind



\renewcommand{\nomname}{Abkürzungsverzeichnis mit Begriffserklärung}
\makenomenclature
\newcommand{\nomaltname}{Symbolverzeichnis zu Kapitel 4}
\newcommand{\nomaltpreamble}{}
\newcommand{\nomaltpostamble}{}
\newcommand{\nomaltthreename}{Symbolverzeichnis zu Kapitel 3}
\newcommand{\nomaltthreepreamble}{}
\newcommand{\nomaltthreepostamble}{}
\newcommand{\usetwonomenclatures}{\nomenclature[\switchnomitem]{}{}}
\newcommand{\usethreenomenclatures}{\nomenclature[\switchnomitemthree]{}{}}
\newcommand{\switchnomitem}{R}
\newcommand{\switchnomitemthree}{B}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}
\ifthenelse{\equal{#1}{\switchnomitemthree}}{\swit chnomaltthree}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\newpage
\lhead[]{SYMBOLVERZEICHNIS ZU KAPITEL 4}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\newcommand{\switchnomaltthree}{%
\end{thenomenclature}
\newpage
\lhead[]{SYMBOLVERZEICHNIS ZU KAPITEL 3}
\renewcommand{\nomname}{\nomaltthreename}
\renewcommand{\nompreamble}{\nomaltthreepreamble}
\renewcommand{\nompostamble}{\nomaltthreepostamble }
\begin{thenomenclature}
}


An der Stelle wo das Verzeichnis dann erscheinen soll, folgendes schreiben:



\lhead[]{ABKÜRZUNGSVERZEICHNIS MIT BEGRIFFSERKLÄRUNG}
\usetwonomenclatures
\usethreenomenclatures
\printnomenclature[4.0cm]


Mit lhead lässt sich mit eingebundenem \usepackage{fancyhdr} die Kopfzeile abändern.

Mit \nomenclature[D]{}{} wird in das Symbolverzeichnis zu Kapitel 3 geschrieben, mit \nomenclature[S]{}{} in das Symbolverzeichnis zu Kapitel 4

Hazel
24-07-2006, 13:14
\documentclass[a4paper]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath,amssymb,nomencl,ifthen}
\makenomenclature
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{}
\newcommand{\nomaltpostamble}{}
\newcommand{\usetwonomenclatures}{\nomenclature[\switchnomitem]{}{}}
\newcommand{\switchnomitem}{R}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\usetwonomenclatures
\printnomenclature
\end{document}

Erstmal vielen Dank an rais. Das Ganze funktioniert auch bei mir. Aber ich habe noch eine kleine Frage dazu:
Du setzt \switchnomitem auf R
Aber in deinem Text schaltest du mit \nomenclature[s]{$\eta$}{Wirkungsgrad} auf das zweite Verzeichnis um.
Was bedeutet das s und was das R? Ich hätte gedacht das müssen identische Character sein.

rais
28-07-2006, 00:27
Moin moin,
sorry, bin mal wieder `im Auftrag des Herrn' unterwegs :D

Erstmal vielen Dank an rais. Das Ganze funktioniert auch bei mir. Aber ich habe noch eine kleine Frage dazu:
Du setzt \switchnomitem auf R
Aber in deinem Text schaltest du mit \nomenclature[s]{$\eta$}{Wirkungsgrad} auf das zweite Verzeichnis um.
Was bedeutet das s und was das R? Ich hätte gedacht das müssen identische Character sein.
\switchnomitem hab ich als quasi `Schaltgruppe' definiert, also eine eigentlich leere Gruppe, die das erste Verzeichnis beenden soll und das zweite starten.
\nomenclature[s]{$\eta$}{Wirkungsgrad} soll nur dafuer sorgen, dass das angegebene Symbol auch im Symbolverzeichnis landet (die \nomenclature-Aufrufe koennen ja in beliebiger Reihenfolge auftauchen).
MfG,

Hazel
28-07-2006, 11:40
Und warum gerade [s]?
Du hast das ja nirgends definiert.
Würde es auch mit [x] funktionieren?

rais
28-07-2006, 19:52
Moin moin,

Und warum gerade [s]?
Du hast das ja nirgends definiert.
Würde es auch mit [x] funktionieren?
`s' wie `Symbol', aber ja, Du kannst im Grunde genommen jeden `x'-beliebigen Buchstaben dafür nehmen, so er denn nach \switchnomitem kommt.
Hmm, wenn ich mir das im Nachhinein nochmal so ansehe, gibt's eigentlich keinen Grund, warum es nicht auch mit gleichen Buchstaben für \switchnomitem und dem Sortierschlüssel für \nomenclature funzen sollte, ist die Auswertung doch inzwischen im \nomgroup... kannst ja mal testen, dann dürfte auch das Àusblenden' des leeren Eintrags (die Sache mit dem grep) entfallen - gute Idee, eigentlich :cool:
Dieser `Umschalter' ist halt aus einer ganz anderen Funktion (eben über \nomenclature selbst) entstanden, und da gab's noch das Problem (bzw. das wollte ich gar nicht erst aufkommen lassen), daß diese Umschalterei auch wirklich zwischen den beiden Verzeichnissen landet - und nicht irgendwo mitten im Symbolverzeichnis;)
MfG,

Hazel
01-08-2006, 08:16
Ein kleines Problem hab ich noch:
Meine 2 Verzeichnisse verteilen sich mittlerweile über 3 Seiten. Auf der ersten Seite ist das Abkürzungsverzeichnis und auf den folgenden beiden ist das Verzeichnis mathematischer Symbole. Jetzt wird aber in der Kopfzeile, die ich mit fancyhdr und \lhead{\rightmark} definiert habe, auf der dritten Seite nicht "Verzeichnis mathematischer Symbole" angegeben, sondern "Abkürzungsverzeichnis". Wie kann ich das ändern?

rais
01-08-2006, 15:09
Und was passiert bei \leftmark? Wie sieht's eigentlich auf der ersten Seite des Abkuerzungsverzeichnisses aus?
MfG,

Hazel
02-08-2006, 07:19
\leftmark ändert an dieser Stelle nichts.
Die ersten beiden Seiten der nomencl-Umgebung werden nicht mit einer Kopfzeile versehen, da dort Kapitelüberschriften stehen. In scrreprt wird dort keine Kopfzeile gesetzt.

EDIT: Bin jetzt wegen anderen Problemen auf scrpage2 umgestiegen. Aber das Problem bliebt bestehen.

Starbug
02-08-2006, 10:43
Ich hab das ganze mit Lhead gemacht. Kannst dir ja mein Posting in diesem Thread anschauen. Ich hab seitdem auch keine Probleme mehr mit den Kopfzeilen.

Hazel
02-08-2006, 14:31
Danke! lhead funzt zwar bei mir nicht wegen \scrpage2 aber mit \ihead hat es dann geklappt. Jedoch musste ich am nach \printnomenclature wieder mit \ihead[]{\headmark} zurücksetzen, da sonst das ganze Dokument die mit \ihead genannte Heading verwenden würde.

~Anja~
03-08-2006, 18:06
Hallo,



Oder Du könntest Dir behelfen, indem Du wie bei dem partitioniertem nomencl vorgehst, d.h. alle Symbole werden z.B. zusätzlich mit [s] ausgestattet, dann könntest Du etwa so...


genau so etwas schwebte mir vor. Ich habe das ganze wie folgt angelegt:


\makenomenclature
\renewcommand{\nomname}{Abkürzungsverzeichnis}
\renewcommand{\nomlabel}[1]{\textbf{#1}}
\setlength{\nomlabelwidth}{25mm}
\makeindex

\printnomenclature
\addcontentsline{toc}{chapter}{Abkürzungsverzeichn is}
\nomenclature[r]{zb}{zum beispiel}

\printnomenclature
\addcontentsline{toc}{chapter}{Symbolverzeichnis}
\nomenclature[s]{ua}{unter anderem}


Nur steht nun über beiden Verzeichnissen (natürlich) "Abkürzungsverzeichnis". Ich habe leider keine Ahnung wie ich es hinkriege, dass über dem einen Verzeichnis "Abkürzungsverzeichnis" und über dem anderen "Symbolverzeichnis" steht.
Kann mir da jemand helfen?
Schönen Gruß,
Anja

rais
03-08-2006, 23:43
Moin moin,

Danke! lhead funzt zwar bei mir nicht wegen \scrpage2 aber mit \ihead hat es dann geklappt. Jedoch musste ich am nach \printnomenclature wieder mit \ihead[]{\headmark} zurücksetzen, da sonst das ganze Dokument die mit \ihead genannte Heading verwenden würde.
ich hab' das mal 'n wenig umgebaut, so sollte es eigentlich unabhängig vom verwendeten pagestyle funzen - und man braucht sich um das Kopflayout nur in der Präambel zu kümmern ;)

\documentclass{scrbook}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
\makenomenclature
\pagestyle{scrheadings}
\renewcommand{\nomname}{Abkürzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\usetwonomenclatures}{\nomenclature[\switchnomitem]{}{}}
\newcommand{\switchnomitem}{R}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\usetwonomenclatures
\printnomenclature
\chapter{Blubb}
\end{document}

@Anja: bekommst Du bei Deinem Ansatz nicht zweimal das gleiche Verzeichnis (also nicht nur gleiche Überschrift)?

MfG,

~Anja~
04-08-2006, 08:27
@Anja: bekommst Du bei Deinem Ansatz nicht zweimal das gleiche Verzeichnis (also nicht nur gleiche Überschrift)?


Verdammt, Du hast Recht. Also funktioniert der Ansatz doch nicht so einfach?
Anja

rais
04-08-2006, 14:22
Verdammt, Du hast Recht. Also funktioniert der Ansatz doch nicht so einfach?
Anja
Nee, weil nomencl idR nur in eine Datei schreibt, d.h. Du müsstest Dir dann überlegen, wie Du nomencl dazu bekommst, die Einträge nach Anweisung auf zwei verschiedene Dateien zu splitten (die Du dann entsprechend beide auch durch makeindex schicken müsstest).

Gugg' Dir doch einfach mal mein letztes Beispiel an, tut das nicht das, was Du suchst?
MfG,

rais
04-08-2006, 18:50
Und warum gerade [s]?
Du hast das ja nirgends definiert.
Würde es auch mit [x] funktionieren?
Jetzt nicht mehr:

\documentclass{scrbook}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
\makenomenclature
\pagestyle{scrheadings}
\renewcommand{\nomname}{Abk\"urzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\printnomenclature
\chapter{Blubb}
\end{document}dafür geht's wie vermutet wieder mit dem normalen Weg, also latex/makeindex/latex -- man kann also durchaus die `Schaltgruppe' als solche einsparen ;)
Danke@Hazel fürs Nachfragen - da fragt man sich dann manchmal selbst...:D
MfG,

~Anja~
08-08-2006, 15:07
Gugg' Dir doch einfach mal mein letztes Beispiel an, tut das nicht das, was Du suchst?


Hallo rais,
dass Beispiel von Dir funktioniert schon so halbwegs. Ich habe nur absolut keinen Schimmer was Du da machst bzw. wie das alles funktioniert.

Ich erstelle meine nomenclature Einträge übrigens manuell.


%fürs Symbolverzeichnis:
\nomenclature[s]{$eta$}{Winkel}
%fürs Abkürzungsverzeichnis:
\nomenclature{EOL}{End of Line}
An welcher Stelle im Dokument muss ich das eigentlich machen?

Zweite Frage: der Abstand zwischen der Überschrift "Abkürzungsverzeichnis" und der ersten Beschreibung ist kleiner als zwischen der Überschrift "Symbole" und der ersten Beschreibung. Wie kommt das?

Dritte Frage: Du hast folgendes Paket eingebunden:

\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
Ich habe bereits folgende Pakete eingebunden:


\usepackage[centertags]{amsmath}
\usepackage[automark]{scrpage2}
\usepackage[german]{nomencl}

Kann ich dann die fehlenden Pakete (amssymb, ifthen (was ist das überhaupt)) einfach einzeln einbinden?

Gruß,
Anja

rais
08-08-2006, 15:58
Hallo Anja,


dass Beispiel von Dir funktioniert schon so halbwegs. Ich habe nur absolut keinen Schimmer was Du da machst bzw. wie das alles funktioniert.

dieser thread ist quasi die Entstehungsgeschichte :)


Ich erstelle meine nomenclature Einträge übrigens manuell.


%fürs Symbolverzeichnis:
\nomenclature[s]{$eta$}{Winkel}
%fürs Abkürzungsverzeichnis:
\nomenclature{EOL}{End of Line}
An welcher Stelle im Dokument muss ich das eigentlich machen?

idR zumindest bei der ersten Stelle im Dokument, an der ein zu erklärender Begriff auftritt - manche machen sich das Leben aber leicht, indem sie die Begriffe extra in einer Datei sammeln (also die ganzen \nomenclature -Befehle) und diese Datei dann einfach mit \input irgendwo ins Hauptdokument laden - da von dieser Datei weiter kein Text erzeugt wird, ist die Position als solche dann egal (dann sollten aber keine Seiten zurück referenziert werden - das paßt mit so einer Extradatei nicht).


Zweite Frage: der Abstand zwischen der Überschrift "Abkürzungsverzeichnis" und der ersten Beschreibung ist kleiner als zwischen der Überschrift "Symbole" und der ersten Beschreibung. Wie kommt das?

Das Beispiel aus Post26 hat noch den Haken, daß eine leere Gruppe erzeugt wurde (um von einem Verzeichnis ins Nächste zu wechseln), d.h. es wird zunächst ein leerer Begriff definiert der für diesen zusätzlichen Abstand sorgt (\usetwonomenclatures).
Abhilfe: Du rufst makeindex nicht direkt auf (wie in Post 7 hier beschrieben) oder - wesentlich einfacher - Du wechselst auf das Beispiel aus Post 29, da wird dieser Leereintrag gar nicht erst erzeugt.;)


Dritte Frage: Du hast folgendes Paket eingebunden:

\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
Ich habe bereits folgende Pakete eingebunden:


\usepackage[centertags]{amsmath}
\usepackage[automark]{scrpage2}
\usepackage[german]{nomencl}

Kann ich dann die fehlenden Pakete (amssymb, ifthen (was ist das überhaupt)) einfach einzeln einbinden?

amssymb ist ein Paket für Symbole nach AMS (vgl. symbols-a4.pdf)
ifthen ist ein Paket, das u.A. den Befehl \ifthenelse zur Verfügung stellt, den ich hier auch nutze.
Und ja, Du kannst die Pakete auch einzeln laden.
Oder Pakete mit gleichen Paketoptionen (oder gar keinen wie in meinem Beispiel) einfach zusammenfassen.
Übrigens, wenn Du auch das babel Paket lädst, dann kannst Du z.B. "german" auch als Klassenoption übergeben, dann brauchst Du Dich z.B. um die Sprachoption weder bei babel, noch bei nomencl extra zu kümmern.
MfG,

~Anja~
09-08-2006, 09:22
idR zumindest bei der ersten Stelle im Dokument, an der ein zu erklärender Begriff auftritt - manche machen sich das Leben aber leicht, indem sie die Begriffe extra in einer Datei sammeln (also die ganzen \nomenclature -Befehle) und diese Datei dann einfach mit \input irgendwo ins Hauptdokument laden - da von dieser Datei weiter kein Text erzeugt wird, ist die Position als solche dann egal (dann sollten aber keine Seiten zurück referenziert werden - das paßt mit so einer Extradatei nicht).

Das habe ich gemacht. Funktioniert super. Auch dieser \input Befehl ist klasse, den kannte ich vorher garnicht und habe mich immer geffragt wie man sowas macht.



... - wesentlich einfacher - Du wechselst auf das Beispiel aus Post 29, da wird dieser Leereintrag gar nicht erst erzeugt.;)

Jo, das Beispiel habe ich nun verwendet. Der Abstand ist nun gleich. Sehr schön.



Übrigens, wenn Du auch das babel Paket lädst, dann kannst Du z.B. "german" auch als Klassenoption übergeben, dann brauchst Du Dich z.B. um die Sprachoption weder bei babel, noch bei nomencl extra zu kümmern.

Das heißt, ich lade einfach usepackage{babel} und kann dann z.B. statt \usepckage[german]{nomencl} einfach \usepckage{nomencl} schreiben?

Ein Problemchen habe ich natürlich noch. Ich möchte ja noch, dass auf Symbol- und Abkürzungsverzeichnis im Inhaltsverzeichnis stehen. Dafür habe ich in die Datei, die ich mit \input einbinde:
\addcontentsline{toc}{chapter}{Symbolverzeichnis} vor die Aufzählung der einzelnen Symbole geschrieben, und
\addcontentsline{toc}{chapter}{Abkürzungsverzeichn is} vor die Aufzählung der einzelnen Abkürzungen.
Im Inhaltsverzeichnis tauchen nun die Einträge "Symbolverzeichnis" und "Abkürzungsverzeichnis" auch auf, jedoch steht als Seitenzahl die Seite des letzten Verzeichnis eintrags (bei mir VII), Abkürzungsverzeichnis beginnt jedoch schon auf Seite IV und Symbolverzeichnis auf Seite V. Wie kann ich das noch richtig hinbasteln?
Gruß,
Anja

rais
11-08-2006, 20:37
Das heißt, ich lade einfach usepackage{babel} und kann dann z.B. statt \usepckage[german]{nomencl} einfach \usepckage{nomencl} schreiben?

so die Theorie...:)


Ein Problemchen habe ich natürlich noch. Ich möchte ja noch, dass auf Symbol- und Abkürzungsverzeichnis im Inhaltsverzeichnis stehen. Dafür habe ich in die Datei, die ich mit \input einbinde:
\addcontentsline{toc}{chapter}{Symbolverzeichnis} vor die Aufzählung der einzelnen Symbole geschrieben, und
\addcontentsline{toc}{chapter}{Abkürzungsverzeichn is} vor die Aufzählung der einzelnen Abkürzungen.
Im Inhaltsverzeichnis tauchen nun die Einträge "Symbolverzeichnis" und "Abkürzungsverzeichnis" auch auf, jedoch steht als Seitenzahl die Seite des letzten Verzeichnis eintrags (bei mir VII), Abkürzungsverzeichnis beginnt jedoch schon auf Seite IV und Symbolverzeichnis auf Seite V. Wie kann ich das noch richtig hinbasteln?
Gruß,
Anja
Überlaß' es doch einfach dem nomencl-Paket:


\usepackage[intoc]{nomencl}

dann brauchst Du die \addcontentsline - Befehle hier gar nicht.;)
MfG,

~Anja~
13-08-2006, 18:59
so die Theorie...:)

Überlaß' es doch einfach dem nomencl-Paket:


\usepackage[intoc]{nomencl}

dann brauchst Du die \addcontentsline - Befehle hier gar nicht.;)


Vielen Dank, Rainer. Nun scheint zumindest alles zu funktionieren.
Super!
Anja

~Anja~
21-08-2006, 14:40
OK, eine Sache habe ich nun doch noch. Ich habe ja ein Abkürzungsverzeichnis und ein Symbolverzeichnis.
Nun macht es bei dem Symbolverzeichnis natürlich noch Sinn, neben dem Symbol und der dazugehörigen Erklärung auch noch die Einheit mit dazuzuschreiben. Also bräuchte man im Prinzip 3 Spalten. Nur wie kann ich sowas lösen? Erstmal liegt natürlich eine Tabelle nahe, aber das würde ja die Struktur komplett ändern. Kann man da vielleicht noch irgendwas basteln wie:


\nomenclature[s]{$T_t$}{Totzeit}{s}
\nomenclature[s]{$F_W$}{Wirkkraft die im rechten Winkel auf die Zylinderfläche angreift}{N}


Die einzelnen Spalten sollten dann bündig übereinbander stehen, also die Einheiten ganz am rechten Bildrand.

Gruß,
Anja

countbela666
21-08-2006, 15:49
Hallo Anja,

das theoretische Vorgehen dazu wird in der nomencl-Doku beschrieben. Vielleicht helfen dir auch folgende Links weiter:

http://www.mrunix.de/forums/showthread.php?t=38774
http://www.mrunix.de/forums/showthread.php?t=43078

Grüße,
Marcel

Sommernacht
06-09-2006, 13:14
Hallo,
ich habe das Post aus Beispiel 29 genommen. Bei mir tritt nun das Problem auf, dass der Abstand zwischen der Überschrift Abkürzungsverzeichnis bzw. Symbolverzeichnis und dem Rand größer ist als der Abstand zwischen der Überschrift Inhaltsverzeichnis und dem Rand. Auch der Abstand zwischen Überschrift Abkürzungsverzeichnis und dem ersten Eintrag ist größer als bei Inhaltsverzeichnis und ersten Eintrag. Kann mir da jemand helfen?

Gruß S.

rais
07-09-2006, 18:32
Hallo Sommernacht,

Hallo,
ich habe das Post aus Beispiel 29 genommen. Bei mir tritt nun das Problem auf, dass der Abstand zwischen der Überschrift Abkürzungsverzeichnis bzw. Symbolverzeichnis und dem Rand größer ist als der Abstand zwischen der Überschrift Inhaltsverzeichnis und dem Rand.

Also das kann ich nicht nachvollziehen - es sei denn, Du meinst den rechten Rand :rolleyes:
Oder wie pixelgenau hast Du das nachgemessen? BTW, wie vergleicht man den horizontalen Start zweier unterschiedlich breiter Zeichen?

Auch der Abstand zwischen Überschrift Abkürzungsverzeichnis und dem ersten Eintrag ist größer als bei Inhaltsverzeichnis und ersten Eintrag. Kann mir da jemand helfen?

Was machst Du genau? Bei mir wird dieser Abstand kleiner als im TOC.
Nun könnte man wohl einfach

\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}\vspace{-\baselineskip}}oder ähnlich abenteuerliches ergänzen, aber nachvollziehbarer wird's dadurch auch nicht.
Ich wage einfach mal zu behaupten, dass Dein Problem nichts mit der Aufteilung des Symbolverzeichnisses zu tun hat - Mit anderen Worten: erstell ein funktionierendes Minimalbeispiel.
MfG,

Sommernacht
08-09-2006, 08:50
Hallo,
du hast Recht. Mein Problem hat nichts mit der Aufteilung des Symbolverzeichnisses zutun. Es ist mir nur dort aufgefallen. Ich habe folgendes Problem. Der vertikale Abstand zwischen dem oberen Papierrand und der Überschrift Inhaltsverzeichnis beträgt 4 cm. Der Abstand zwischen Inhaltsverzeichnis und dem ersten Eintrag beträgt 2cm.




-------------------Papierrand-------------
|
4cm
|
Inhaltsverzeichnis
|
2cm
|
1. Einleitung 1



Die Seite, wo eine chapter-Überschrift ist, hat folgende Abstände


---------------------------Papierrand--------------------------
|
5cm
|
1 Einleitung
|
2,6cm
|
Hier begint jetzt der Text.


Ich hoffe das Beispiel macht es etwas verständlicher.
Da bei mir das Symbolverzeichnis dasselbe Layout hat, wie eine Seite mit einer Kapitelüberschrift, ist es mir zuerst beim Erstellen des Symbolverzeichnisses aufgefallen. Die Frage müsste also lauten, wie ich die Abstände im Inhaltsverzeichnis ändern kann.
Danke und Gruß
S.

rais
08-09-2006, 09:44
Hallo,

Ich hoffe das Beispiel macht es etwas verständlicher.
Da bei mir das Symbolverzeichnis dasselbe Layout hat, wie eine Seite mit einer Kapitelüberschrift, ist es mir zuerst beim Erstellen des Symbolverzeichnisses aufgefallen. Die Frage müsste also lauten, wie ich die Abstände im Inhaltsverzeichnis ändern kann.

Das erklärt immer noch nicht, was Du anders machst. Wenn ich in dem MB von post#29 ein \tableofcontents ergänze u. vll. nomencl mit [intoc] lade, dann bekomme ich gleiche Abstände zum oberen Papierrand bei TOC/chapter/nomenclature.
Du hast nicht zufällig \linespread o.ä. in Deiner Präambel verwendet?
Es bleibt also bei

Mit anderen Worten: erstell ein funktionierendes Minimalbeispiel.
MfG,

Sommernacht
08-09-2006, 11:00
Hi,
habe jetzt herausgefunden, woran es liegt. Wenn ich


\usepackage{tocloft}


einfüge, werden die Überschriften vom Inhaltsverzeichnis, Abbildungsverzeichnis und Tabellenverzeichnis verschoben. Allerdings benötige ich dieses Packet, um mein Abbildungs- und Tabellenverzeichnis wie in http://www.mrunix.de/forums/showthread.php?t=41097
zu gestalten.

Auch ohne tocloft ist der Abstand zwischen dem ersten Eintrag des Inhaltsverzeichnisses und dem ersten Eintrag des Abkürzungsverzeichnis unterschiedlich.

Gruß S.

rais
08-09-2006, 13:59
Hi,
habe jetzt herausgefunden, woran es liegt. Wenn ich


\usepackage{tocloft}


einfüge, werden die Überschriften vom Inhaltsverzeichnis, Abbildungsverzeichnis und Tabellenverzeichnis verschoben.

Nunja, `tocloft' steht fuer `toc, lof & lot'

Allerdings benötige ich dieses Packet, um mein Abbildungs- und Tabellenverzeichnis wie in http://www.mrunix.de/forums/showthread.php?t=41097
zu gestalten.

Was sagt denn die tocloft-Doku dazu?


Auch ohne tocloft ist der Abstand zwischen dem ersten Eintrag des Inhaltsverzeichnisses und dem ersten Eintrag des Abkürzungsverzeichnis unterschiedlich.

Gruß S.
Das mag damit zusammenhängen, dass der erste Eintrag im TOC auf ein Kapitel verweist, was normalerweise einen zusätzlichen vertikalen Abstand einfuegt.
MfG,

Valium79
09-09-2006, 13:51
Hallo zusammen,

erst einmal vielen Dank an Rais. Dein Ansatz mit den Abkürzungsverzeichnissen ist echt super. Ich habe aber noch eine Frage. Ich benötige für meine Diplomarbeit fünf Symbolverzeichnisse und ein Abkürzungsverzeichnis. Diese müssen an verschiedenen Stellen der Diplomarbeit eingebaut werden. Wie kann ich das schaffen? Dabei ist mir klar wie ich die Verzeichnisse erzeuge, aber ich weiss nicht wie ich sie an verschiedenen Stellen aufrufe.

Danke schon mal im Voraus

Valium

Sommernacht
10-09-2006, 13:57
Hallo,
nach Lesen der Doku, konnte ich mein erstes Problem lösen. Für die Abstandsänderung habe ich in der tocloft.spy Datei folgendes gefunden:


\newlength{\cftbeforetoctitleskip}
\newlength{\cftaftertoctitleskip}
\if@cfthaschapter
\setlength{\cftbeforetoctitleskip}{50pt}
\setlength{\cftaftertoctitleskip}{40pt}
\else
\setlength{\cftbeforetoctitleskip}{3.5ex \@plus 1ex \@minus .2ex}
\setlength{\cftaftertoctitleskip}{2.3ex \@plus.2ex}




Hat jemand eine Idee, wie man den Abstand irgendwie in der tex - Datei ändern kann, oder muss ich den Abstand in der tocloft.spy Datei ändern? Wie kann ich das machen?

Danke und Gruß
S.

rais
10-09-2006, 18:51
Moin moin,

Ich benötige für meine Diplomarbeit fünf Symbolverzeichnisse und ein Abkürzungsverzeichnis. Diese müssen an verschiedenen Stellen der Diplomarbeit eingebaut werden.
kA ob das mit nomencl ohne Weiteres möglich ist, da \printnomenclature eigentlich den kompletten Inhalt der foo.nls eben an dieser Stelle ausgibt; ich kann auch nicht sagen, ob's dafür nicht sogar schon etwas passendes gibt (ähnlich bibtopic/chapterbib das für Literaturverweise erledigen).
Du könntest Dir aber mal acronym ansehen, damit kannst Du zumindest mehrere acronym-Umgebungen aufrufen - und da steht dann auch nur drin, was reinsoll.
MfG,

rais
10-09-2006, 18:57
Hallo,


nach Lesen der Doku, konnte ich mein erstes Problem lösen.

Und die Lösung...?


Hat jemand eine Idee, wie man den Abstand irgendwie in der tex - Datei ändern kann, oder muss ich den Abstand in der tocloft.spy Datei ändern? Wie kann ich das machen?

funzt denn so etwas


\setlength{\cftbeforetoctitleskip}{8.5ex}
\setlength{\cftaftertoctitleskip}{7ex}
in Deiner Präambel nicht?
MfG,

Sommernacht
11-09-2006, 08:21
Hallo,

wenn man beim Packet tocloft die Option titles mitreinnimmt, ist der Abstand zum oberen Rand identisch.



\setlength{\cftbeforetoctitleskip}{8.5ex}
\setlength{\cftaftertoctitleskip}{7ex}


bewirkt leider keine Veränderung.

Gruß S.

Valium79
12-09-2006, 17:40
Hallo Rainer,

ich glaube ich habe einen Lösungsansatz für mein Problem gefunden. Prinzipiell geht es mit dem Paket Glossary, mehrere Verzeichnisse zu erstellen und anunterschiedlicher Stelle einzubinden. Allerdings sieht es noch nicht ganz so aus wie ich will und die mitgelieferte Perl-Datei funktioniert auch noch nicht richtig. Ich werde noch mal die Doku lesen und bei Erfolg ein Minimalbeispiel einstellen. Kann aber noch einige Tage dauern...

Gruß Valium

wildpaddler
07-03-2007, 16:13
Hallo,

ich habe genau diesen Text in eine leere Datei Test3.tex kopiert:





\documentclass[a4paper]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath,amssymb,nomencl,ifthen}
\makenomenclature
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{}
\newcommand{\nomaltpostamble}{}
\newcommand{\usetwonomenclatures}{\nomenclature[\switchnomitem]{}{}}
\newcommand{\switchnomitem}{R}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\usetwonomenclatures
\printnomenclature
\end{document}


Dann habe ich das hier in die Kommandozeile eingehackt:





latex foo.tex
makeindex foo.nlo -s nomencl.ist -o dummy
grep -v {} dummy > foo.nls
latex foo.tex && latex foo.tex
rm dummy



Das Ergebnis ist im Anhang zu sehen . . . Ein Dokument ohne Abkürzungs- und Symbolverzeichnis. Gibt es da noch irgendeinen Trick? Ich verwende MikTeX 2.4 und WinEdt 5.4.

Vielen Dank schonmal, Gruss

Sven

bobmalaria
07-03-2007, 19:45
ich mag jetzt aber nicht dumm fragen ob du in der kommandozeile auch 'foo' durch deinen dateinamen deiner tex-datei ersetzt hast?

wildpaddler
08-03-2007, 12:01
Danke an Bobmalaria!

Darauf wäre ich alleine nicht gekommen. So ist das, wenn man was abtippt, was man nicht versteht . . . Ich dachte foo.tex wäre ein ganz raffinierter Befehl ;-)

Bleiben noch zwei Pobleme:



C:\blabla>grep -v {} dummy > test3.nls
Der Befehl "grep" ist entweder falsch geschrieben oder konnte nicht gefunden werden.


Das hier ist dann wahrscheinlich ein Folgefehler:



C:\blabla>rm dummy
Der Befehl "rm" ist entweder falsch geschrieben oder konnte nicht gefunden werden.


Könnt ihr mir da auch helfen?

Gruss, wildpaddler

countbela666
08-03-2007, 12:11
Ähm, du arbeitest nicht zufällig unter Windows? Falls ja, hast du schlechte Karten, da grep und rm Unixbefehle sind.

Unter Windows könnte das ganze folgendermaßen aussehen:

latex foo.tex
makeindex foo.nlo -s nomencl.ist -o dummy
find /V "{}" dummy | find /V "DUMMY" > foo.nls
latex foo.tex && latex foo.tex
del dummy(ungetestet)

Grüße
Marcel

Jonyx
13-04-2007, 02:07
hallo an alle

also erst mal recht grossen dank an alle die sich hier so beteiligen, besonders an rais der ja die eigentliche präamble geschrieben hat.

mein problem ist das selbige, welches auch valium 79 plagt. und da ich noch nicht so sehr fit in diesem ganzen wirrwarr :D hier bin, hilft mir der minimalverweis auf glossary nicht wirklich weiter. wenn also jemand weiss wie man die beiden oder mehr verzeichnisse an 2 verschiedenen stellen im dokument printen kann wäre ich sehr dankbar.


mfg Jochen

rais
14-04-2007, 07:34
Moin moin,

mein problem ist das selbige, welches auch valium 79 plagt. und da ich noch nicht so sehr fit in diesem ganzen wirrwarr :D hier bin, hilft mir der minimalverweis auf glossary nicht wirklich weiter. wenn also jemand weiss wie man die beiden oder mehr verzeichnisse an 2 verschiedenen stellen im dokument printen kann wäre ich sehr dankbar.


mfg Jochen
direkt vorgesehen hatte ich das eigentlich nicht. Wenn nicht all zu viel dazwischen stehen soll, dann kannst Du es vermutlich hier


\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
%was hier steht, landet zwischen den beiden Verzeichnissen
\begin{thenomenclature}
}
einbauen. Wenn es Dir zuviel Umstand ist, dann liefere doch bitte mal ein Minimalbeispiel (http://www.minimalbeispiel.de) mit glossary, welches

Prinzipiell geht es mit dem Paket Glossary, mehrere Verzeichnisse zu erstellen und anunterschiedlicher Stelle einzubinden. Allerdings sieht es noch nicht ganz so aus wie ich will und die mitgelieferte Perl-Datei funktioniert auch noch nicht richtig.
demonstriert -- das ist es doch, was Dich auch plagt?
MfG,

phili
08-05-2007, 15:52
Hallo Leute,
sehr schön Eure Ideen und Lösungen, wie man mehrere nomencls parallel in einem Latexdokument verarbeiten kann.

Ich hätte noch einen Formatierungswunsch:
Wie kann ich bei Dokumenten, die auf "scrbook" basieren verhindern, daß für jedes nomencl-Verzeichnis eine neue Seite begonnen wird, so wie es z.B. bei "scrartcl" der Fall ist?

Liebe Grüße
Phili

rais
09-05-2007, 18:59
Hallo und Herzlich Willkommen :)


Wie kann ich bei Dokumenten, die auf "scrbook" basieren verhindern, daß für jedes nomencl-Verzeichnis eine neue Seite begonnen wird, so wie es z.B. bei "scrartcl" der Fall ist?

etwa so vllt:


\let\orgchapter\chapter
\renewcommand\chapter{\section}
\printnomenclature
\renewcommand\chapter{\orgchapter}

MfG,

phili
14-05-2007, 16:52
Hallo Rainer,
sehr schön, läuft auf Anhieb.

Vielen Dank!

Phili

demian
16-06-2007, 13:31
Hi Rainer,

auch von mir erstmal ein dickes Danke! Das ganze läuft super, war schnell gemacht und klappt auch wunderbar mit der scrartcl-Klasse.

Einen Wunsch hätte ich aber noch: Ich hätte gerne das Symbolverzeichnis auf einer neuen Seite und wüsste in deinem Code nicht, wo ich da einen \newpage Befehl einfügen sollte. Ist das bei deinem Beispiel überhaupt machbar?

Gruß Christoph

Kommando zurück:


\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
%was hier steht, landet zwischen den beiden Verzeichnissen
\begin{thenomenclature}
}

Gerade gesehen: Da muss es hin :cool:

snowdream
06-11-2007, 13:13
Hallo alle zusammen,

bei mir funktioniert das auch alles wunderbar. Ein großes DANKE an euch, dieser thread hat mir wirklich weitergeholfen.

Ich hätte nur eine Frage:

Wie bekomme ich Variablen mit Index, also tiefgestellem Buchstaben, in das Verzeichnis?
Ich habs schon mit $\textrm{C}_{x}$, aber das funktioniert leider nicht...

Gruß Martin

rais
06-11-2007, 17:02
Hallo Martin,


Wie bekomme ich Variablen mit Index, also tiefgestellem Buchstaben, in das Verzeichnis?
Ich habs schon mit $\textrm{C}_{x}$, aber das funktioniert leider nicht...

was hast Du denn wie gemacht?


\nomenclature[s]{$\textrm{C}_{x}$}{das $x$ indiziert doch C?}

Erstelle sonst ein nachvollziehbares Minimalbeispiel (http://minimalbeispiel.de) ... oder was genau funktioniert nicht?

MfG,

snowdream
07-11-2007, 08:03
Oh entschuldige Rainer,

natürlich habe ich das so
\nomenclature[s]{$\textrm{C}_{x}$}{Ladung beim piezoelektrischen Effekt} gemacht...

Ich bekomme dann immer hunderte von komischen Lyx-Fehlermeldungen :mad:

snowdream
07-11-2007, 08:24
HI,
hat sich erledigt... Ich weiß nicht worans lag, es geht jetzt auf jeden Fall. Ich hab nichts verändert... :confused:

Ich schieb das ganze jetzt einfach mal auf mein Windows-System...

zero82
25-08-2008, 23:21
Hallo rainer,

ich habe den code aus der 1. seite benutzt und die befehle wie unten aufgeführt benutzt. Da steht im TOF eine Zeile mit DUMMY, den ich einfach nicht wegbekomme. ich habe keine Ahnung wie. Habe mir überlegt auf gloss umzusteigen.
\documentclass[a4paper]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath,amssymb,nomencl,ifthen}
\makenomenclature
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{}
\newcommand{\nomaltpostamble}{}
\newcommand{\usetwonomenclatures}{\nomenclature[\switchnomitem]{}{}}
\newcommand{\switchnomitem}{R}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\usetwonomenclatures
\printnomenclature
\end{document}

und hier die Befehle um dummy wegzubekommen. Aber es klappt einfach nicht. Bitte um Hilfe.

zero

rais
30-08-2008, 14:56
Moin zero,


ich habe den code aus der 1. seite benutzt

nur so als Hinweis: Du kannst die Reihenfolge der gezeigten Beiträge hier vertauschen -- dadurch werden Begriffe wie ``1. Seite'' etwas konfus ... beziehe Dich bitte immer auf die Beitragsnummer, nicht auf irgend welche Seiten.


und die befehle wie unten aufgeführt benutzt. Da steht im TOF

wofür genau steht ``TOF''?


eine Zeile mit DUMMY,``DUMMY'' war afair nie ein darstellbarer Begriff -- vielmehr stand ``dummy'' für einen Dateinamen; poste ggf. die zu Deinem Beispiel dazugehörige .nls (nach dem find/grep)


den ich einfach nicht wegbekomme. ich habe keine Ahnung wie.

lies *weiter* ... in diesem Thread findest Du auch einen Ansatz, der ohne `dummy' auskommt.;)


Habe mir überlegt auf gloss umzusteigen.

alternativ kämen vllt Pakete wie glossaries oder nomentbl in Betracht ...


und hier die Befehle um dummy wegzubekommen. Aber es klappt einfach nicht. Bitte um Hilfe.

um welche Befehle handelt es sich denn?

gerade gesehen: thread (http://www.mrunix.de/forums/showthread.php?t=60670)
... ist Dir schon aufgefallen, daß Du so unterschiedliche Abstände zwischen den Einträgen und den jeweiligen Überschriften bekommst?
Noch einmal: lies *weiter* ;)


MfG

MC3330
02-12-2008, 15:37
Hallo,

ich habe eine Frage. Ich habe gerade diesen Thread hier gefunden und es wird hier genau das abgehandelt was ich brauche.

Ich habe bisher mein Symbolverzeichniss mit Nomencl erstellt. Ich habe folgenden Eintrag in die Präambel eingefügt, damit ich drei Spalten habe.

\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace*{\fill}#1}}

Ein Eintrag im Text sieht dann so aus

\nomenclature{$D$ }{Tropfendurchmesser \nomunit{[$m$]}}%
. Ist es irgendwie möglich trotzdem noch ein zweites Nomencl für ein Abkürzungsverzeichniss zu erstellen?

rais
02-12-2008, 21:23
Moin moin,


Ich habe bisher mein Symbolverzeichniss mit Nomencl erstellt. Ich habe folgenden Eintrag in die Präambel eingefügt, damit ich drei Spalten habe.

\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace*{\fill}#1}}

Ein Eintrag im Text sieht dann so aus

\nomenclature{$D$ }{Tropfendurchmesser \nomunit{[$m$]}}%
. Ist es irgendwie möglich trotzdem noch ein zweites Nomencl für ein Abkürzungsverzeichniss zu erstellen?
warum sollte das nicht gehen?
Du musst hier lediglich darauf achten, daß Du selbst für die Zuteilung (Ist es ein `Symbol' oder eine `Abkürzung') verantwortlich bist ... also Symbole hier grundsätzlich mit [s] -- oder Du vertauschst halt die Namen entsprechend.;)
BTW: afaik werden Einheiten zumindest hierzulande grundsätzlich *aufrecht* gesetzt, evtl hilft Dir auch die Verwendung eines speziellen Einheitenpakets, z. B. siunitx (http://dante.ctan.org/CTAN/help/Catalogue/entries/siunitx.html): damit könnte Dein \nomunit etwa so aussehen:


\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace*{\fill}[\si{#1}]}}
und ein entsprechender Aufruf im Text dann


\nomenclature[s]{$D$ }{Tropfendurchmesser \nomunit{\metre}}

MfG

MC3330
03-12-2008, 20:41
Hallo Rainer, danke für die Antwort. Ich bin leider heute erst dazu gekommen es auszurobieren.
Ich habe es leider nicht mal geschafft, dein Minimalbeispiel nachzuvollziehen.
Ich habe folgendes in File "foo.tex" abgespeichert.



\documentclass[a4paper]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath,amssymb,nomencl,ifthen}
\makenomenclature
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{}
\newcommand{\nomaltpostamble}{}
\newcommand{\usetwonomenclatures}{\nomenclature[\switchnomitem]{}{}}
\newcommand{\switchnomitem}{R}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\usetwonomenclatures
\printnomenclature
\end{document}

danach habe ich folgendes in ein shellscript kopiert und ausgeführt.



latex foo.tex
makeindex foo.nlo -s nomencl.ist -o dummy
grep -v {} dummy > foo.nls
latex foo.tex && latex foo.tex
rm dummy



Eigentlich müsste er mir doch jetzt eine PDF-Datei mit zwei verzeichnissen erstellen? Oder habe ich da was mißverstadnen?

p.s Danke für den Tip mit dem Einheitenpacket, das werde ich mir als nächstes mal anschauen.

rais
03-12-2008, 21:29
Moin moin,

Ich habe es leider nicht mal geschafft, dein Minimalbeispiel nachzuvollziehen.

nunja, der Thread geht noch etwas über dieses Beispiel hinaus, so um Beitrag #30 herum findest Du eine etwas vereinfachte Form.


Eigentlich müsste er mir doch jetzt eine PDF-Datei mit zwei verzeichnissen erstellen? Oder habe ich da was mißverstadnen?

Nichtsdestotrotz, *funktionieren* sollte es eigentlich immer noch ... bekommst Du irgend welche Warnungen/Fehlermeldungen? Vllt gar von Deinem Betriebssystem?

Gemeint war das etwa so:


\documentclass{scrbook}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2,siunitx}
\makenomenclature
\pagestyle{scrheadings}
\renewcommand{\nomname}{Abk\"urzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace*{\fill}[\si{#1}]}}
\begin{document}
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\nomenclature[s]{$D$ }{Tropfendurchmesser \nomunit{\metre}}
\printnomenclature
\chapter{Blubb}
\end{document}
das kannst Du ganz normal mit


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

übersetzen ... so die Datei denn auch bei Dir `foo.tex' heißt.;)

MfG

MC3330
04-12-2008, 09:52
Ok, ich merke schon, ich habe scheinbar noch andere Probleme.
Also zuerst einmal. Ich benutze Mac OS mit Leopard. Kann es daran liegen?

Ich habe jetzt gerade mal versucht dein Beispiel aus dem voherigen Post nachzuvollziehen und es als foo.tex abgespeichert.

Ich scheitere glaube ich daran, dass mir das Packet siunitx fehlt.


! LaTeX Error: File `siunitx.sty' not found.


Wenn ich das einfach entferne und \metre durch m ersetzte, kommt nachdem ich
1. latex foo.tex (keine Fehlermeldung)
2. makeindex foo.nlo -s nomencl.ist -t foo.nlg -o foo.nls (keine Fehlermeldung)
3. latex foo.tex
ausgeführt habe folgendes.


! Undefined control sequence.
\nomentryend ->\hspace *{\fill }[\si
{\m }]
l.11 \nompageref{1}


Das steht in dieser Form in meinem Beispieldokument aber gar nicht drin.
Es liegt vermutlich daran, das im Code ja noch steht ?


\renewcommand{\nomentryend}{\hspace*{\fill}[\si{#1}]}}


Soweit ich verstanden habe, bezieht sich das auch irgendwie auf dieses Units-Packet?
Ich habe leider keine Ahnung, wie ich dieses Packet bei mir installieren kann und will es eigentlich auch nicht, weil ich schon ein 3 Seitiges Symbolverzeichniss hat, das ich dann komplett neu machen müsste.

Es müsste aber eigentlich auch ohne dieses Packet gehen, oder?

rais
04-12-2008, 19:58
Moin moin,

Ok, ich merke schon, ich habe scheinbar noch andere Probleme.
Also zuerst einmal. Ich benutze Mac OS mit Leopard. Kann es daran liegen?

keine Ahnung, ich hab' kein Mac OS ...


Ich habe jetzt gerade mal versucht dein Beispiel aus dem voherigen Post nachzuvollziehen und es als foo.tex abgespeichert.

Ich scheitere glaube ich daran, dass mir das Packet siunitx fehlt.


! LaTeX Error: File `siunitx.sty' not found.


in dem in Beitrag #66 angegebenen Link findest Du auch einen Knopp für `download' ...


Wenn ich das einfach entferne und \metre durch m ersetzte, kommt nachdem ich
1. latex foo.tex (keine Fehlermeldung)
2. makeindex foo.nlo -s nomencl.ist -t foo.nlg -o foo.nls (keine Fehlermeldung)
3. latex foo.tex
ausgeführt habe folgendes.


! Undefined control sequence.
\nomentryend ->\hspace *{\fill }[\si
{\m }]
l.11 \nompageref{1}


Das steht in dieser Form in meinem Beispieldokument aber gar nicht drin.
Es liegt vermutlich daran, das im Code ja noch steht ?

nun ja, wenn Du siunitx gar nicht erst lädst, dann kannst Du natürlich auch nicht auf die von diesem Paket zur Verfügung gestellten Befehle zugreifen. Deine Fehlermeldung sagt doch, daß `\si' undefiniert sei ... und ich war mir sooo sicher, alle Änderungen am Beispiel aus Beitrag so um #30 farblich hervorgehoben zu haben :rolleyes:
Installiere also siunitx oder laß den \si-Befehl ebenfalls weg.



\renewcommand{\nomentryend}{\hspace*{\fill}[\si{#1}]}}


Soweit ich verstanden habe, bezieht sich das auch irgendwie auf dieses Units-Packet?

Wenn Du Dich auf ein Paket beziehen willst, dann nenn' das Kind bitte beim Namen ... `units' gibt's schließlich auch als Paket.:p


Ich habe leider keine Ahnung, wie ich dieses Packet bei mir installieren kann und will es eigentlich auch nicht, weil ich schon ein 3 Seitiges Symbolverzeichniss hat, das ich dann komplett neu machen müsste.

Ich verstehe ehrlich gesagt diesen Einwand nicht: wenn Du diesen Ansatz weiter verfolgst, dann wirst Du nicht umhin kommen, Deine bisherigen \nomenclature-Aufrufe zumindest durchzugehen, wenn nicht gar um einen [s]-Parameter zu erweitern ... und wenn Du Deine Einheiten korrekt (nach SI) setzen willst, dann schau vllt erst einmal z. B. hier (http://de.wikipedia.org/wiki/Internationales_Einheitensystem) vorbei, bevor Du Dich endgültig entscheidest, wie Du Deine Einheitenzeichen setzen willst (vllt erstmal mit besonderem Augenmerk auf `Schreibweise der Einheitenzeichen') ... OTOH hat das nichts mehr mit diesem Thread zu tun; solltest Du Dich dazu entschließen, ein Paket wie siunitx zu verwenden und Probleme bei dessen Installation hast, dann öffne ggf. einen neuen Thread ... dieser ist imho eh schon zu lang ... besonders, wenn sich jmd darüber `beschwert', daß eines der etwas älteren Beispiele hier bei ihm nicht korrekt funktioniert -- ich mein', in (fast) jedem anderen Fall bekommst Du dann so etwas wie ``get updated, Dude'' zu hören.:D

MfG

MC3330
04-12-2008, 23:13
Hallo Rainer, ich habe es jetzt endlich geschafft und mit siunitsx will ich dich jetzt nicht weiter nerven.

Ich hätte allerdings noch zwei Fragen, die mir zu vollkommenem Glück verhelfen würden.

1. Ist es möglich in dieses Konstrukt das Symbolverzeichniss als Longtable anzulegen, wie es hier beschrieben ist?

http://www.mrunix.de/forums/archive/index.php/t-38774.html

2. Ist es irgendwie möglich, zwischen das Symbolverzeichniss und Abkürzungsverzeichniss ein \newpage einzubauen?
Am genialsten wäre, wenn man \printnomenclature für das Abkürzungsverzeichniss und \printnomenclature[s] für das Symbolverzeichniss schreiben könnte, aber das geht vermutlich nicht, oder?

rais
04-12-2008, 23:46
Moin nochmal,

Hallo Rainer, ich habe es jetzt endlich geschafft und mit siunitsx will ich dich jetzt nicht weiter nerven.

nein, Du `nervst' mich damit nicht ... eine Diskussion über Paketinstallation von siunitx (oder was auch immer) gehört imho nicht in diesen Thread.


Ich hätte allerdings noch zwei Fragen, die mir zu vollkommenem Glück verhelfen würden.

1. Ist es möglich in dieses Konstrukt das Symbolverzeichniss als Longtable anzulegen, wie es hier beschrieben ist?
http://www.mrunix.de/forums/archive/index.php/t-38774.html

warum versuchst Du es nicht selbst?


2. Ist es irgendwie möglich, zwischen das Symbolverzeichniss und Abkürzungsverzeichniss ein \newpage einzubauen?
Am genialsten wäre, wenn man \printnomenclature für das Abkürzungsverzeichniss und \printnomenclature[s] für das Symbolverzeichniss schreiben könnte, aber das geht vermutlich nicht, oder?
Offensichtlich benutzt Du eine andere Klasse, was soll ich dazu sagen?
Oder willst Du hören, daß in meinem Beispiel -- wenn auch nicht unmittelbar sichtbar -- eh ein \cleardoublepage zwischen diesen beiden Verzeichnissen steht?

... und schau vllt mal nach `Minimalbeispiel' hier im Board.

MfG

MC3330
06-12-2008, 10:36
Moin nochmal,

warum versuchst Du es nicht selbst?


Ich hab es geschafft ein Longtableumgebung als Symbolverzeichniss zu benutzen, allerdings nicht dies mit zwei Nomencl's zu kombinieren


Moin nochmal,
Offensichtlich benutzt Du eine andere Klasse, was soll ich dazu sagen?
Oder willst Du hören, daß in meinem Beispiel -- wenn auch nicht unmittelbar sichtbar -- eh ein \cleardoublepage zwischen diesen beiden Verzeichnissen steht?

... und schau vllt mal nach `Minimalbeispiel' hier im Board.

MfG

Du hast recht, ich benutze eine andere Klasse, allerdings versteh ich nicht, warum das dazu führt, das zwischen den Verzeichnissen keine neue Siete eigefügt wird.

Zum Minimalbeispiel.

So sieht es bei mir aus, wenn ich eine Longtable als Symbolverzeichniss verwende



\documentclass[12pt,a4paper,liststotoc,bibtotoc,twoside,DIV15,BCO R12mm]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[german]{babel}
\usepackage[german, intoc]{nomencl}
\usepackage{longtable}

\usepackage[utf8]{inputenc}
\usepackage{graphicx}

%%%%%%%%%%%%%% zusätzliche unit-Spalte %%%%%%%%%%%%%%%%
\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace{2em}\hspace*{\ fill}#1}}
%%%%%%%%%%%%%% longtable an Stelle der Liste %%%%%%%%%%
\makeatletter
\def\@@@nomenclature[#1]#2#3{%
\def\@tempa{#2}\def\@tempb{#3}%
\protected@write\@nomenclaturefile{}%
{\string\nomenclatureentry{#1\nom@verb\@tempa @{\nom@verb\@tempa}&%
\begingroup\nom@verb\@tempb\protect\nomeqref{\thee quation}%
|nompageref}{\thepage}}%
\endgroup
\@esphack}
\def\thenomenclature{%
\@ifundefined{chapter}{\section*}{\chapter*}{\nomn ame}%
\nompreamble
\begin{longtable}[l]{@{}ll@{}}}
\def\endthenomenclature{%
\end{longtable}%
\nompostamble}
\makeatother
\makenomenclature

%Dokumentbegin
\begin{document}
\nomenclature[0]{\textbf{Symbol}}{\textbf{Beschreibung}\nomunit{\t extbf{Einheit}}}
% Header der Tabelle
\pagenumbering{Roman}

\tableofcontents

\newpage
\listoffigures
\newpage
\listoftables
\newpage
\printnomenclature
\newpage
\pagenumbering{arabic}
\setcounter{page}{1}
\section{minimalbeispiel}
\nomenclature{$a_g$ }{Dämpfungskonstante atmosphärischer Gase\nomunit{dB}}%
\nomenclature{$L^2$ }{Dämpfung\nomunit{?}}%
\nomenclature{$V$ }{Radialgeschwindigkeit\nomunit{m/s?}}%
\nomenclature{$\phi$ }{Phase des vom Impulsradar empfangenen Signals\nomunit{?}}%
\nomenclature{$\phi_0$ }{Phase des vom Impulsradar gesendeten Signals\nomunit{?}}%
\nomenclature{$\phi_d$ }{Phasendifferenz zwischen empfangen und gesendeten Signal\nomunit{?}}%
\nomenclature{$f$ }{Dopplerfrequenzverschiebung\nomunit{?}}%


\end{document}

Wenn ich hier makeindex ausführe, dann verwende ich eine modifizierte nomenc bei der diese beiden Zeilen angefügt sind.


item_0 ""
delim_t " \\\\\n"


So sieht es bei mir aus, wenn ich zwei Nomencl verwende



\documentclass[12pt,a4paper,liststotoc,bibtotoc,DIV15,BCOR12mm]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[german]{babel}
\usepackage[german, intoc]{nomencl}
\usepackage{amsmath,amssymb,ifthen}
%Einträge für Inhalstübersicht und Inhaltsverzeichniss
\usepackage{minitoc}
%Zwei Nomenclatur
\makenomenclature
\renewcommand{\nomname}{Abk\"urzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbolverzeichnis}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace*{\fill}#1}}
Ich habe jetzt versucht an diese Stelle die Definition für den Longtable einzufügen, das hat aber leider nicht geklappt.
%Dokumenteil
\begin{document}
%\nomenclature[0]{\textbf{Symbol}}{\textbf{Beschreibung}\nomunit{\t extbf{Einheit}}}
\pagenumbering{Roman}
\newpage
\newpage
\tableofcontents
\newpage
\listoffigures
\newpage
\listoftables
\newpage
\printnomenclature

\section{minimalbeispiel}
\nomenclature{DWD}{Deutscher Wetterdienst}%
\nomenclature[s]{$a_g$ }{Dämpfungskonstante atmosphärischer Gase\nomunit{dB}}%
\nomenclature[s]{$L^2$ }{Dämpfung\nomunit{?}}%
\nomenclature[s]{$V$ }{Radialgeschwindigkeit\nomunit{m/s?}}%
\nomenclature[s]{$\phi$ }{Phase des vom Impulsradar empfangenen Signals\nomunit{?}}%
\nomenclature[s]{$\phi_0$ }{Phase des vom Impulsradar gesendeten Signals\nomunit{?}}%
\nomenclature[s]{$\phi_d$ }{Phasendifferenz zwischen empfangen und gesendeten Signal\nomunit{?}}%
\nomenclature[s]{$f$ }{Dopplerfrequenzverschiebung\nomunit{?}}%

\end{document}

Ich habe also beides einzeln hinbekommen, nur halt nicht zusammen.

rais
06-12-2008, 16:04
Moin moin,


Du hast recht, ich benutze eine andere Klasse, allerdings versteh ich nicht, warum das dazu führt, das zwischen den Verzeichnissen keine neue Siete eigefügt wird.

Buch- und Reportklassen besitzen Kapitel, Artikelklassen nicht. Eine der Besonderheiten bei Kapiteln ist, daß diese auf einer neuen (Doppel)Seite begonnen werden ... nomencl schaut bei der Definition von \thenomenclature nach, ob die Gliederungsebene `Kapitel' zur Verfügung steht, oder nicht: wenn ja, wird diese auch benutzt, vgl. (ich hab den Kontext mal etwas in den Hintergrund gedrückt):



\def\thenomenclature{%
\@ifundefined{chapter}{\section*}{\chapter*}{\nomn ame}%
\nompreamble



Zum Minimalbeispiel.

Ein Minimalbeispiel zeigt imho Dein Problem, nicht was Du bereits erreicht hast ...




\documentclass[12pt,a4paper,liststotoc,bibtotoc,DIV15,BCOR12mm]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[german]{babel}
\usepackage[german, intoc]{nomencl}
\usepackage{amsmath,amssymb,ifthen}
%Einträge für Inhalstübersicht und Inhaltsverzeichniss
\usepackage{minitoc}
%Zwei Nomenclatur
\makenomenclature
\renewcommand{\nomname}{Abk\"urzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbolverzeichnis}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace*{\fill}#1}}
Ich habe jetzt versucht an diese Stelle die Definition für den Longtable einzufügen, das hat aber leider nicht geklappt.
%Dokumenteil


mal abgesehen davon, daß Du vllt besser `ngerman' als Option für babel verwendest: was genau hat denn nicht `geklappt'?
So es Dir um die horizontale Ausrichtung ging:


\documentclass[12pt,a4paper,liststotoc,bibtotoc,DIV15,BCOR12mm]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[german, intoc]{nomencl}
\usepackage{amsmath,amssymb,ifthen,longtable}
%Einträge für Inhalstübersicht und Inhaltsverzeichniss
\usepackage{minitoc}
%Zwei Nomenclatur
\makenomenclature
\renewcommand{\nomname}{Abkürzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbolverzeichnis}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\clearpage%<--zweites Verzeichnis auf neuer Seite
\begin{thenomenclature}
\textbf{Symbol} & \textbf{Beschreibung}\hfill\textbf{Einheit}\\[1ex]
\endfirsthead
\textbf{Symbol} & \textbf{Beschreibung}\hfill\textbf{Einheit}\\[1ex]
\endhead
}
\newcommand{\nomunit}[1]{%
\renewcommand{\nomentryend}{\hspace*{\fill}#1}}
%Ich habe jetzt versucht an diese Stelle die Definition für den Longtable einzufügen, das hat aber leider nicht geklappt.
\newlength\myxl
\newlength\myxr
\settowidth\myxl{\textbf{Symbol}}
\setlength\myxr{\textwidth}
\addtolength\myxr{-\myxl}
\addtolength\myxr{-2\tabcolsep}
\makeatletter
\def\@@@nomenclature[#1]#2#3{%
\def\@tempa{#2}\def\@tempb{#3}%
\protected@write\@nomenclaturefile{}%
{\string\nomenclatureentry{#1\nom@verb\@tempa @{\nom@verb\@tempa}&%
\begingroup\nom@verb\@tempb\protect\nomeqref{\thee quation}%
|nompageref}{\thepage}}%
\endgroup
\@esphack}
\def\thenomenclature{%
\@ifundefined{chapter}{\section*}{\chapter*}{\nomn ame}%
\nompreamble
\begin{longtable}[l]{@{}lp{\myxr}@{}}}
\def\endthenomenclature{%
\end{longtable}%
\nompostamble}
\makeatother
\begin{document}
\pagenumbering{Roman}
\newpage
\newpage%<--wozu zweimal?
\tableofcontents
\newpage
\listoffigures
\newpage
\listoftables
\newpage
\printnomenclature
\noindent\hrulefill\par
\section{minimalbeispiel}

\nomenclature{DWD}{Deutscher Wetterdienst}%
\nomenclature[s]{$a_g$ }{Dämpfungskonstante atmosphärischer Gase\nomunit{dB}}%
\nomenclature[s]{$L^2$ }{Dämpfung\nomunit{?}}%
\nomenclature[s]{$V$ }{Radialgeschwindigkeit\nomunit{m/s?}}%
\nomenclature[s]{$\phi$ }{Phase des vom Impulsradar empfangenen Signals\nomunit{?}}%
\nomenclature[s]{$\phi_0$ }{Phase des vom Impulsradar gesendeten Signals\nomunit{?}}%
\nomenclature[s]{$\phi_d$ }{Phasendifferenz zwischen empfangen und gesendeten Signal\nomunit{?}}%
\nomenclature[s]{$f$ }{Dopplerfrequenzverschiebung\nomunit{?}}%

\end{document}

MfG

MC3330
07-12-2008, 10:34
Abgesehen von dieser Passage hier, hatte ich es genauso versucht, wie du es beschrieben.


\newlength\myxl
\newlength\myxr
\settowidth\myxl{\textbf{Symbol}}
\setlength\myxr{\textwidth}
\addtolength\myxr{-\myxl}
\addtolength\myxr{-2\tabcolsep}

Ich bekomme dabei aber leider die folgenden Fehlermeldungen.


! LaTeX Error: Something's wrong--perhaps a missing \item.

See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...

l.5 \item [{\textbf{Symbol}}]
\begingroup \textbf{Beschreibung}\nomunit{\te...

?

und

LaTeX Error: Lonely \item--perhaps a missing list environment.

See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...

l.5 \item [{\textbf{Symbol}}]
\begingroup \textbf{Beschreibung}\nomunit{\te...

?

rais
07-12-2008, 11:25
Moin moin,

Abgesehen von dieser Passage hier, hatte ich es genauso versucht, wie du es beschrieben.


\newlength\myxl
\newlength\myxr
\settowidth\myxl{\textbf{Symbol}}
\setlength\myxr{\textwidth}
\addtolength\myxr{-\myxl}
\addtolength\myxr{-2\tabcolsep}

damit hab ich lediglich die Breite der zweiten Spalte angepasst.


Ich bekomme dabei aber leider die folgenden Fehlermeldungen.


! LaTeX Error: Something's wrong--perhaps a missing \item.

See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...

l.5 \item [{\textbf{Symbol}}]
\begingroup \textbf{Beschreibung}\nomunit{\te...

?

und

LaTeX Error: Lonely \item--perhaps a missing list environment.

See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...

l.5 \item [{\textbf{Symbol}}]
\begingroup \textbf{Beschreibung}\nomunit{\te...

?

Versuch es noch einmal ... diesmal mit



item_0 ""
delim_t " \\\\\n"

also der an die longtable angepassten .ist.

MfG

MC3330
07-12-2008, 11:35
Hätte ich auch selber drauf kommen können. So jetzt klappt es.
Das einzige Problem, dass es noch gibt, ist das bei meiner Klasse das Abkürzungsverzeichniss nicht auf einer eigenen Seite anfängt.
Kriegt man das noch irgendwie hin, oder stell ich lieder meine ganze Arbeit von "scrartcl" auf "scrbook" um?

rais
07-12-2008, 12:31
Moin moin,


Das einzige Problem, dass es noch gibt, ist das bei meiner Klasse das Abkürzungsverzeichniss nicht auf einer eigenen Seite anfängt.
Kriegt man das noch irgendwie hin, oder stell ich lieder meine ganze Arbeit von "scrartcl" auf "scrbook" um?
mal abgesehen davon, daß dieses Thema in diesem Thread bereits behandelt wurde ... mein Beispiel aus Beitrag #74 sorgt schon für einen Seitenumbruch, lass es also *unverändert* laufen (mit Deiner an longtable angepassten .ist) ...

MfG

MC3330
07-12-2008, 13:13
Hallo Rainer,

das hat jetzt auch geklappt. Damit habe ich die ganzen Verzeichnisse genau so hinbekommen, wie ich sie gerne haben möchte.
Nochmal einen riesen Dank für deine geduldige und kompetente Hilfe.

Viele Grüße
Malte

svenna
17-08-2009, 12:44
Hallo Marcus,
[...], aber hätte es unter windos nicht auch ein


find /V "{}" dummy > foo.nls
für den entsprechenden grep getan?
MfG,

Hallo,

also bei mir tut es das leider nicht, da find als erstes den Dateinamen und eine Leerzeile ausgibt, welche dann leider auch in der Zieldatei stehen. Daher muss man find anders mit der Eingabedatei füttern:



type "C:\foo.nls" | find /V "{}" > "C:\bar.nls"


Grüsse, Sven

rais
17-08-2009, 17:57
Hallo und Herzlich Willkommen :)


also bei mir tut es das leider nicht, da find als erstes den Dateinamen und eine Leerzeile ausgibt, welche dann leider auch in der Zieldatei stehen. Daher muss man find anders mit der Eingabedatei füttern:



type "C:\foo.nls" | find /V "{}" > "C:\bar.nls"


lies Dir diesen Thread einmal in aller Ruhe durch. Irgendwo zwischen dem von Dir zitiertem und Deinem eigenen Beitrag findest Du einen Ansatz, der gänzlich ohne `grep' bzw. `find' auskommt ...

MfG

Volker1981
02-09-2009, 16:51
Hallo zusammen.

Ich habe ein Abkürzungsverzeichnis über drei Seiten nach der Anleitung hier erstellt. Es funktioniert auch alles einwandfrei.
Nun gibt es aber doch ein kleines Problem.
Ich versuche das mal aufzuzeichnen.

Formelzeichen

......................
a.....................Beschleunigung
F.....................Kraft
usw.
In der ersten Zeile macht Latex einfach Punkte und ich weiß nicht warum.
Wie kann ich diese Zeile entfernen?

Gruß
Volker

rais
02-09-2009, 16:59
Hallo ud Herzlich Willkommen :)


Ich habe ein Abkürzungsverzeichnis über drei Seiten nach der Anleitung hier erstellt.

auf welche `Anleitung' genau beziehst Du Dich?


Es funktioniert auch alles einwandfrei.
Nun gibt es aber doch ein kleines Problem.
Ich versuche das mal aufzuzeichnen.

Formelzeichen

......................
a.....................Beschleunigung
F.....................Kraft
usw.
In der ersten Zeile macht Latex einfach Punkte und ich weiß nicht warum.
Wie kann ich diese Zeile entfernen?

Gruß
Volker
Siehe bitte http://www.minimalbeispiel.de

MfG

Volker1981
02-09-2009, 17:14
Vielen Dank für die schnelle Antwort.
Ich beziehe mich dabei auf den Text in Beitrag #15.

Gruß
Volker

Volker1981
02-09-2009, 17:54
Also hier versuch ich mal den Code reinzuschreiben, ich hoffe das ist richtig so.


\let\abbrev\nomenclature
\renewcommand{\nomname}{Abkürzungen}
\setlength{\nomlabelwidth}{.5\hsize}
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\setlength{\nomitemsep}{-\parsep}

\renewcommand{\nomname}{Abkürzungen}
\makenomenclature
\newcommand{\nomaltname}{Lateinische Formelzeichen}
\newcommand{\nomaltpreamble}{}
\newcommand{\nomaltpostamble}{}
\newcommand{\nomaltthreename}{Griechische Formelzeichen}
\newcommand{\nomaltthreepreamble}{}
\newcommand{\nomaltthreepostamble}{}
\newcommand{\usetwonomenclatures}{\nomenclature[\switchnomitem]{}{}}
\newcommand{\usethreenomenclatures}{\nomenclature[\switchnomitemthree]{}{}}
\newcommand{\switchnomitem}{B}
\newcommand{\switchnomitemthree}{G}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}
\ifthenelse{\equal{#1}{\switchnomitemthree}}{\swit chnomaltthree}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\newpage
%\lhead[]{Lateinische Formelzeichen}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\newcommand{\switchnomaltthree}{%
\end{thenomenclature}
\newpage
%\lhead[]{Griechische Formelzeichen}
\renewcommand{\nomname}{\nomaltthreename}
\renewcommand{\nompreamble}{\nomaltthreepreamble}
\renewcommand{\nompostamble}{\nomaltthreepostamble }
\begin{thenomenclature}
}



\usetwonomenclatures
\usethreenomenclatures
\printnomenclature


Das ist glaube ich alles.


Gruß

Volker

rais
02-09-2009, 19:47
Moin moin,


Ich beziehe mich dabei auf den Text in Beitrag #15.

nun ja, wie soll jemand darauf kommen, der nicht vor Deinem Code sitzt? Hast Du grep (Linux/Unix) bzw. find (Win$) aufgerufen? Wie?


Das ist glaube ich alles.
Nein, ist es nicht ... noch einmal: siehe *bitte* http://www.minimalbeispiel.de

oder lies noch mal etwas weiter ... ab Beitrag #29 herum findest Du einen Ansatz, bei dem Du Dir grep bzw. find sparen kannst ... oder schau in diesem Thread nach `Haken' oder `Leereintrag', darauf bezieht sich Starburgs Version mit 3 Verzeichnissen (naturgemäß) noch.

MfG

Volker1981
03-09-2009, 18:03
So jetzt hab ich es hingekriegt.

es lag an dem globalen "\dotfill"

Vielen Dank trotzdem.

Gruß
Volker

rais
04-09-2009, 07:57
Moin moin,

So jetzt hab ich es hingekriegt.

es lag an dem globalen "\dotfill"

klingt nach Symptombekämpfung ...
Versuche lieber, die Ursache zu finden, irgendwie muß dieser alleinstehende \dotfill ja aufgerufen worden sein -- meine Vermutung hierzu hab ich ja bereits gepostet -- sonst fragst Du als nächstes wohlmöglich ``warum ist der erste Eintrag im zweiten/dritten Verzeichnis tiefer als im Ersten?''

MfG

q_bric
29-09-2009, 09:28
Hallo,

ich hab folgendes Minimalbsp erstellt:

\documentclass[12pt,a4paper]{scrreprt}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[german]{babel}
\usepackage[intoc]{nomencl}
\usepackage{ifthen}
\makenomenclature
\begin{document}

\let\abk\nomenclature
\renewcommand{\nomname}{Abkürzungsverzeichnis}
\setlength{\nomlabelwidth}{.20\hsize} % Abstand zw. Abkürzung und Erklärung
\renewcommand{\nomlabel}[1]{#1 \dotfill} % Punkte zw. Abkürzung und Erklärung
\setlength{\nomitemsep}{-\parsep} % Zeilenabstände verkleinern

\tableofcontents
\chapter{Test}
Ein MB\abk{MB}{Minimalbeispiel} eignet sich \emph{bestens} dazu, anderen eigene Probleme zu übermitteln bzw.\abk{bzw.}{beziehungsweise} eine Lösung zu einem spezifischem Problem im Forum zu posten\dots
Ein Symbol koennte so aussehen: $\eta$\abk[s]{$\eta$}{wieder mal griechisch\dots}.oder so $\pi$ \abk[s]{$\pi$}{Kreiszahl}

Kohlenstoff $C$ \nomenclature[f]{$C$}{Kohlenstoff} ist eine typische Abgaskomponente und soll chemisches Symbol erscheinen

Es bleibt trotzdem ratsam, zunächst die FAQ\abk{FAQ}{Frequently Asked (\& answered) Questions} zu konsultieren.
\abk[s]{}{\protect\section*{\protect\hspace*{-\nomlabelwidth}Symbolverzeichnis}\protect\markboth {Symbolverzeichnis}{Symbolverzeichnis}}\abk[f]{}{\protect\section*{\protect\hspace*{-\nomlabelwidth}Chemische Symbole}\protect\markboth{Chemische Symbole}{Chemische Symbole}}\printnomenclature

%bei Formelzeichen und Sybolverzeichnis punktelinie im Hintergrund

\end{document}

in teXnicCenterunter, ausgabeprofile, Latex-->PDF unter "makeindex": "%bm".nlo -s nomencl.ist -t "%bm".nlg -o "%bm".nls

Frage 1:
bei der Betrachtung der PDF sind auf der Seite der Verzeichnisse im Hintergrund von "Chemische Symbole" und "Symbole" mehrere Punkte zu erkennen. Woran liegt das!?

Frage2:
Kann ich in meinem PDF-Dok die Abkürzungen und Symbole im Text auch mit einem Link versehen, welche auf den entsprechenden Eintrag im Verzeichnis verweisen

Vielen Dank

rais
29-09-2009, 18:04
Moin moin,


Frage 1:
bei der Betrachtung der PDF sind auf der Seite der Verzeichnisse im Hintergrund von "Chemische Symbole" und "Symbole" mehrere Punkte zu erkennen. Woran liegt das!?

nun ja, Du willst doch eine Abkürzung und deren Beschreibung durch eben solche Punkte verbinden -- und Deine Unterüberschriften legst Du quasi als Beschreibung zu einer leeren Abkürzung an und ziehst den Titel mit dem negativen \hspace* um die reservierte Breite für die Abkürzungen nach links, deshalb liegen Punkte und Titel aufeinander.
\nomgroup wäre geeigneter für diese (Unter)Titelei, etwa:


\documentclass[12pt,a4paper]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[version=3]{mhchem}
\usepackage[intoc]{nomencl}
\usepackage{ifthen}
\makenomenclature
\begin{document}

\let\abk\nomenclature
\renewcommand{\nomname}{Abkürzungsverzeichnis}
\setlength{\nomlabelwidth}{.20\hsize} % Abstand zw. Abkürzung und Erklärung
\renewcommand{\nomlabel}[1]{#1 \dotfill} % Punkte zw. Abkürzung und Erklärung
\setlength{\nomitemsep}{-\parsep} % Zeilenabstände verkleinern

\newcommand*\mygroup[1]{\addsec[#1]{\hspace*{-\nomlabelwidth}\hspace*{-\labelsep}#1}}
\renewcommand*\nomgroup[1]{%
\ifthenelse{\equal{#1}{F}}{\mygroup{Chemische Symbole}}{%
\ifthenelse{\equal{#1}{S}}{\mygroup{Symbole}}{%
%ggf. hier um weitere Untergruppen erweitern
}%
}%
}
\tableofcontents
\chapter{Test}
Ein MB\abk{MB}{Minimalbeispiel} eignet sich \emph{bestens} dazu, anderen eigene Probleme zu übermitteln bzw.\abk{bzw.}{beziehungsweise} eine Lösung zu einem spezifischem Problem im Forum zu posten\dots
Ein Symbol koennte so aussehen: $\eta$\abk[s]{$\eta$}{wieder mal griechisch\dots}.oder so $\pi$ \abk[s]{$\pi$}{Kreiszahl}

Kohlenstoff \ce{C} \nomenclature[f]{\ce{C}}{Kohlenstoff} ist eine typische Abgaskomponente und soll chemisches Symbol erscheinen

Es bleibt trotzdem ratsam, zunächst die FAQ\abk{FAQ}{Frequently Asked (\& answered) Questions} zu konsultieren.
\printnomenclature

\end{document}

vgl auch `texdoc nomencl' und siehe dort nach `subgroups'.
Das mhchem-Paket mag hier übertrieben sein, aber ich geh' einfach mal davon aus, dass Du etwas mehr als nur Kohlenstoff in Deinem Text hast.;) Und es zeigt zu $C$ doch einen Unterschied ...


Frage2:
Kann ich in meinem PDF-Dok die Abkürzungen und Symbole im Text auch mit einem Link versehen, welche auf den entsprechenden Eintrag im Verzeichnis verweisen

ggf. mit hyperref: \hyperlink + \hypertarget, siehe Hyperref-Manual.

MfG

q_bric
30-09-2009, 09:56
Vielen Dank für die Hilfe!

Mit den Verlinkungen lass ich mal lieber weg. Das ist für mich als Latex-Neuling doch bissen zu fett.
Aber sag mal, kann ich Anzeige der Unterverzeichnisse im Inhaltsverzeichnis unterdrücken? Mir reicht es, wenn dort nur "Abkürzungsverzeichnis" auftaucht.
Ich kenne leider nur den Befehl \{chapter}* oder halt \{section}* zum Ausblenden. Allerdings kann ich das bei deinem code nicht wirklich anwenden!? Hast du da noch ne Idee?

Danke

rais
30-09-2009, 17:08
Moin moin,


Aber sag mal, kann ich Anzeige der Unterverzeichnisse im Inhaltsverzeichnis unterdrücken? Mir reicht es, wenn dort nur "Abkürzungsverzeichnis" auftaucht.
Ich kenne leider nur den Befehl \{chapter}* oder halt \{section}* zum Ausblenden. Allerdings kann ich das bei deinem code nicht wirklich anwenden!? Hast du da noch ne Idee?

wo liegt das Problem?
Statt


\newcommand*\mygroup[1]{\addsec[#1]{\hspace*{-\nomlabelwidth}\hspace*{-\labelsep}#1}}

nimmste dann


\newcommand*\mygroup[1]{\addsec*{\hspace*{-\nomlabelwidth}\hspace*{-\labelsep}#1}}

oder


\newcommand*\mygroup[1]{\section*{\hspace*{-\nomlabelwidth}\hspace*{-\labelsep}#1}}

MfG

myvision
31-08-2010, 20:27
Hallo,

nach jahrelangem Lesen, habe ich jetzt doch das erste Problem bei dem ich ohne Anmeldung nicht drumrum komme ;).
Ich verwende für mein Abkürzungsverzeichnis und mein Symbolverzeichnis den untenstehenden Code aus dem Minimalbeipiel und alles funktioniert auch hervorragend.

Nun zu meinem Problem:
Ich hätte gerne ein getrenntes Abkürzungsverzeichnis und Symbolverzeichnis (wie unten) und zusäztlich sollte das Symbolverzeichnis noch unterteilt sein in bspw. Griechische Symbole, Romanische Symbole und Indizes.
Dafür will ich einfach andere Attribute setzen bspw:
\nomenclature{Abk}{Abkürzung} --> kommt ins Abkürzungsverzeichnis
\nomenclature[SG]{$\phi$}{Winkel} --> Symbolverzeichnis: Griechisch
\nomenclature[SR]{L}{Länge} --> Symbolverzeichnis: Romanisch
\nomenclature[SI]{grenz}{Grenze} --> Symbolverzeichnis: Indices

Die Grundidee, wie ich sowas realisieren könnte, habe ich, aber es hapert an der Umsetzung. Unten wurde ja bereits mit \nomgroup gearbeitet, lässt sich das iwie nochmals benutzen.

Wäre über jede Hilfe dankbar, das DA-Ende nähert sich. :D





\documentclass{scrbook}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
\makenomenclature
\pagestyle{scrheadings}
\renewcommand{\nomname}{Abk\"urzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\printnomenclature
\chapter{Blubb}
\end{document}

rais
01-09-2010, 00:03
Hallo und Herzlich Willkommen unter den Aktiven :)


Ich hätte gerne ein getrenntes Abkürzungsverzeichnis und Symbolverzeichnis (wie unten) und zusäztlich sollte das Symbolverzeichnis noch unterteilt sein in bspw. Griechische Symbole, Romanische Symbole und Indizes.
Dafür will ich einfach andere Attribute setzen bspw:
\nomenclature{Abk}{Abkürzung} --> kommt ins Abkürzungsverzeichnis
\nomenclature[SG]{$\phi$}{Winkel} --> Symbolverzeichnis: Griechisch
\nomenclature[SR]{L}{Länge} --> Symbolverzeichnis: Romanisch
\nomenclature[SI]{grenz}{Grenze} --> Symbolverzeichnis: Indices

Die Grundidee, wie ich sowas realisieren könnte, habe ich, aber es hapert an der Umsetzung. Unten wurde ja bereits mit \nomgroup gearbeitet, lässt sich das iwie nochmals benutzen.

jein, zumindest nicht mit den gezeigten Attributen: bei der Auswertung via \nomgroup steht nur das erste Zeichen (in uppercase) des Sortierstrings zur Verfügung, zwischen \nomenclature[SG]{}{} und \nomenclature[SR]{}{} könnte an dieser Stelle gar nicht unterschieden werden, weil in beiden Fällen nur `S' beim \nomgroup ankommt. Wenn man jedoch einfach `G', `R' und `I' -- oder vllt besser `X', damit `Romanisch' auf `Griechisch' folgt -- verwendet und hier und da etwas Hand anlegt ... vesuch mal


\documentclass{scrbook}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
\makenomenclature
\pagestyle{scrheadings}
\renewcommand*\nomname{Abk\"urzungsverzeichnis}
\renewcommand\nompreamble{\markboth{\nomname}{\nom name}}
\newcommand*\nomaltname{Symbole}
\newcommand\nomaltpreamble{\markboth{\nomaltname}{ \nomaltname}}
\newcommand\nomaltpostamble{}
\newcommand*\switchnomitem{G}
\newcommand*\nomsubheading[1]{\item[{\large\bfseries#1}]~}
\renewcommand*\nomgroup[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt
\nomsubheading{Griechisch}}{%
\ifthenelse{\equal{#1}{R}}{\nomsubheading{Romanisc h}}{%
\ifthenelse{\equal{#1}{X}}{\nomsubheading{Indices} }{%
\typeout{Unbekannte Gruppierung `#1'}%
}%
}%
}%
}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand*\nomname{\nomaltname}
\renewcommand\nompreamble{\nomaltpreamble}
\renewcommand\nompostamble{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
\chapter{Test}
\nomenclature{Abk}{Abkürzung}% --> kommt ins Abkürzungsverzeichnis
\nomenclature[G]{$\phi$}{Winkel}% --> Symbolverzeichnis: Griechisch
\nomenclature[R]{L}{Länge}% --> Symbolverzeichnis: Romanisch
\nomenclature[X]{grenz}{Grenze}% --> Symbolverzeichnis: Indices
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[g]{$\eta$}{Wirkungsgrad}\dots
\printnomenclature
\chapter{Blubb}
\end{document}

MfG

myvision
01-09-2010, 10:11
Super erstmal RIESIGEN Dank (auch für die rasende Antwort)! Das hat auf Anhieb funktioniert.

Eine Frage habe ich dennoch:
Ich arbeite mit \dotfill, das heißt zwischen den Abkürzungen und der Erklärung wird mit Punkten aufgefüllt (sieht einfach hübsch aus :D). Bei den Überschriften wird jetzt auch bis zur Spalte mit Punkten aufgefüllt.
Du hattest das auf den vorigen Seiten schonmal beantwortet in der Art:


\newcommand*\mygroup[1]{\addsec[#1]{\hspace*{-\nomlabelwidth}\hspace*{-\labelsep}#1}}

Leider bekomme ich das mit deinem Minimalbeispiel einfach nicht hin.
Wäre über Hilfe nochmals sehr erfreut. :)

EDIT:

Ich habe das Ganze jetzt hinbekommen indem ich aus deinem Minimalbeispiel die Zeile:

\newcommand*\nomsubheading[1]{\item[{\large\bfseries#1}]~}

durch diese ersetzt habe:

\newcommand*\nomsubheading[1]{\addsec[#1]{\hspace*{-\nomlabelwidth}\hspace*{-\labelsep}#1}}

Das finde ich aber nicht ganz so schön, da die Unterpunkte mit im Inhaltsverzeichnis auftauchen und bei \addsec die Schrift zu groß ist.
Lässt sich das irgendwie noch modifizieren?

rais
01-09-2010, 10:52
Moin moin,


Ich habe das Ganze jetzt hinbekommen indem ich aus deinem Minimalbeispiel die Zeile:

\newcommand*\nomsubheading[1]{\item[{\large\bfseries#1}]~}

durch diese ersetzt habe:

\newcommand*\nomsubheading[1]{\addsec[#1]{\hspace*{-\nomlabelwidth}\hspace*{-\labelsep}#1}}

Das finde ich aber nicht ganz so schön, da die Unterpunkte mit im Inhaltsverzeichnis auftauchen und bei \addsec die Schrift zu groß ist.
Lässt sich das irgendwie noch modifizieren?
verwende statt \addsec[#1] mal \addsec* oder \section* -- vgl. Beitrag#92.

MfG

myvision
02-09-2010, 18:56
Funktioniert hervorragend!

Vielen, vielen Dank.

spreewaelder
26-10-2010, 14:09
Hallo,

erst einmal vielen Dank an rais für den Code aus dem Beitrag 94 :D.
Ich habe zwei Probleme.
1.) Ich benötige beim Formelverzeichnis zusätzlich die Einheiten. Aber nicht so wie in der numencl.sty vorgegeben, sondern Formelzeichen - Einheit - Beschreibung. In der Beschreibung von numencl steht aber das er das Formelverzeichnis nachfolgendem Schema erstellt:
Formelzeichen - Beschreibung - Einheit.

2.) Ich benötige das Formelverzeichnis vor dem Abkürzungsverzeichnis. Sprich genau umgekehrt wie es momentan ist. Ich habe jetzt schon Ewigkeiten an dem Beispiel herumgebastelt, aber komme nicht zu der Lösung :confused: :mad:.


\documentclass{scrreprt}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
\makenomenclature
\pagestyle{scrheadings}
\renewcommand*\nomname{Formelverzeichnis}
\renewcommand\nompreamble{\markboth{\nomname}{\nom name}}
\newcommand*\nomaltname{Abk\"urzungsverzeichnis}
\newcommand\nomaltpreamble{\markboth{\nomaltname}{ \nomaltname}}
\newcommand\nomaltpostamble{}
\newcommand*\switchnomitem{G}
\newcommand*\nomsubheading[1]{\item[{\large\bfseries#1}]~}
\renewcommand*\nomgroup[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt
\nomsubheading{Griechisch}}{%
\ifthenelse{\equal{#1}{R}}{\nomsubheading{Romanisc h}}{%
\ifthenelse{\equal{#1}{X}}{\nomsubheading{Indices} }{%
\typeout{Unbekannte Gruppierung `#1'}%
}%
}%
}%
}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand*\nomname{\nomaltname}
\renewcommand\nompreamble{\nomaltpreamble}
\renewcommand\nompostamble{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
\chapter{Test}
\nomenclature{Abk}{Abkürzung}% --> kommt ins Abkürzungsverzeichnis
\nomenclature[G]{$\phi$}{Winkel}% --> Symbolverzeichnis: Griechisch
\nomenclature[R]{L}{Länge}% --> Symbolverzeichnis: Romanisch
\nomenclature[X]{grenz}{Grenze}% --> Symbolverzeichnis: Indices
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[g]{$\eta$}{Wirkungsgrad}\dots
\printnomenclature
\chapter{Blubb}
\end{document}

Vielen Dank für Eure Hilfe.

spreewaelder

rais
26-10-2010, 20:52
Moin moin,


1.) Ich benötige beim Formelverzeichnis zusätzlich die Einheiten. Aber nicht so wie in der numencl.sty vorgegeben, sondern Formelzeichen - Einheit - Beschreibung. In der Beschreibung von numencl steht aber das er das Formelverzeichnis nachfolgendem Schema erstellt:
Formelzeichen - Beschreibung - Einheit.

2.) Ich benötige das Formelverzeichnis vor dem Abkürzungsverzeichnis. Sprich genau umgekehrt wie es momentan ist. Ich habe jetzt schon Ewigkeiten an dem Beispiel herumgebastelt, aber komme nicht zu der Lösung :confused: :mad:.

so ganz versteh ich noch nicht, wie Du was genau wo einsortiert haben willst, zumal Du keinerlei Anstalten gemacht hast, irgendwo eine Einheit mit anzugeben ... als Ansatz für `Formelzeichen/Einheit/Symbol' vllt


\documentclass{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2,siunitx}
\makenomenclature
\pagestyle{scrheadings}
\renewcommand*\nomname{Formelverzeichnis}
\renewcommand\nompreamble{\markboth{\nomname}{\nom name}}
\newcommand*\nomaltname{Abkürzungsverzeichnis}
\newcommand\nomaltpreamble{\markboth{\nomaltname}{ \nomaltname}}
\newcommand\nomaltpostamble{}
\newcommand*\switchnomitem{G}
\newcommand*\nomsubheading[1]{\item[{\large\bfseries#1}]~}
\renewcommand*\nomgroup[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt
\nomsubheading{Griechisch}}{%
\ifthenelse{\equal{#1}{R}}{\nomsubheading{Romanisc h}}{%
\ifthenelse{\equal{#1}{X}}{\nomsubheading{Indices} }{%
\typeout{Unbekannte Gruppierung `#1'}%
}%
}%
}%
}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand*\nomname{\nomaltname}
\renewcommand\nompreamble{\nomaltpreamble}
\renewcommand\nompostamble{\nomaltpostamble}
\begin{thenomenclature}
}
\newlength\nomunitwidth
\setlength\nomunitwidth{3em}%<--Breite f. Einheit ggf. anpassen
\newcommand*\nomunit[1]{%
\parbox[t]{\nomunitwidth}{%
\ifx\relax#1\relax
~%
\else
\si{#1}%
\fi
}\space
}
\newcommand*\fmite[3]{%
\nomenclature[a]{\ensuremath{#1}}{\nomunit{#2}#3}%
}
\begin{document}
\chapter{Test}
\fmite{A}{\milli\metre\squared}{Leiterquerschnitt} % --> kommt ins Formelverzeichnis
\nomenclature[G]{$\phi$}{Winkel}% --> Symbolverzeichnis: Griechisch
\nomenclature[R]{L}{Länge}% --> Symbolverzeichnis: Romanisch
\nomenclature[X]{grenz}{Grenze}% --> Symbolverzeichnis: Indices
\fmite{U}{\volt}{Spannung}%<-- nochmal Formelverzeichnis
\fmite{I}{\ampere}{Strom}%<-- nochmal Formelverzeichnis
\fmite{R}{\ohm}{Widerstand}%<-- nochmal Formelverzeichnis
ein Symbol \nomenclature[g]{$\eta$}{Wirkungsgrad}\dots
\printnomenclature
\chapter{Blubb}
\end{document}

MfG

spreewaelder
27-10-2010, 11:30
Danke erst einmal für deine Hilfe.
Das Formelverzeichnis sollte folgenden Aufbau haben:

Formelverzeichnis

Lateinisch

Formelzeichen - Einheit - Beschreibung

Griechisch

Formelzeichen - Einheit - Beschreibung

Indizies

Formelzeichen - (Einheit) - Beschreibung (Einheit fällt weg, sollte aber das gleiche Layout haben :D)


Das Abkürzungsverzeichnis sollte folgenden Aufbau haben:

Abkürzungsverzeichnis

Abkürzung - Beschreibung

Ich sitze schon den halben Tag ein deinem Code und probiere diesen umzuschreiben, bisher aber mit überschaubaren Erfolg. Ich weiß nicht, wie ich die If-Bedingungen umbauen muss, damit das Ganze funktioniert :confused:.

spreewalder

bobmalaria
27-10-2010, 12:31
hi,

das hat nichts mit dem thema zu tun, aber ist das nicht irgendwie einfacher?


\documentclass{report}
\usepackage[T1]{fontenc}

%für einheiten, nicht zwingend nötig
\usepackage{siunitx}

%für mehrere verzeichnisse
\usepackage[section]{glossaries}

%definieren der verzeichnisse
\newglossary[svl]{latins}{svi}{svo}{Latainisches Zeug}
\newglossary[gvl]{greeks}{gvi}{gvo}{Griechisches Zeug}
\newglossary[ivl]{indiz}{ivi}{ivo}{Index Zeug}
\makeglossaries

%eine latinisches Zeichen
\newglossaryentry{variablea}{type=latins,name={a}, symbol={\si{\meter\per\second}},description={Eine Konstante für eine Formel}}

%Ein giechisches Zeichen
\newglossaryentry{rho}{type=greeks,name={$\rho$},s ymbol={\si{\kilogram\per\cubic\meter}},description ={Dichte von etwas}}

%und noch was für ienen Index
\newglossaryentry{inda}{type=indiz,name={a},descri ption={Im Bezug auf was}}

%Einen neueneinfachen Stil der auch Einheiten kann
\newglossarystyle{mylist}{%
\renewenvironment{theglossary}%
{\begin{description}}{\end{description}}%
\renewcommand*{\glossaryheader}{}%
\renewcommand*{\glsgroupheading}[1]{}%
\renewcommand*{\glossaryentryfield}[5]{%
\item[\glstarget{##1}{##2}] ##4 ##3\glspostdescription\space ##5}%
\renewcommand*{\glossarysubentryfield}[6]{%
\glstarget{##2}{\strut}##4\glspostdescription\spac e ##6.}%
\renewcommand*{\glsgroupskip}{\indexspace}%
}

\begin{document}

%Alle Einträge hinzufügen
\glsaddall[types={latins,greeks,indiz}]

%Ausgabe der Verzeichnisse
\chapter{Verzeichnis}
\printglossary[title=Latainische Symbole,type=latins,style=mylist]
\printglossary[title=Griechische Symbole,type=greeks,style=mylist]
\printglossary[title=Indizes,type=indiz,style=list]
\end{document}

ergebnis siehe anhang.
anstatt einer einfachen liste als stil lassen sich natürlich auch noch tabellen etc verwenden und man kann sich das einfach anpassen.

vielleicht mal als anregung :)


gruss

ps: außerdem wollte ich antwort #100 sein

rais
27-10-2010, 22:52
Moin moin,


das hat nichts mit dem thema zu tun, aber ist das nicht irgendwie einfacher?

imho ja.


ps: außerdem wollte ich antwort #100 sein
Das ist Dir gelungen :)

spreewaelder: es genügt nicht, nur die Abfrage zu modifizieren, Du müsstest auch Deine Vorgaben entsprechend mit anpassen, zum Vergleich vllt


\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2,siunitx}
\makenomenclature
\pagestyle{scrheadings}
\renewcommand*\nomname{Formelverzeichnis}
\renewcommand\nompreamble{\markboth{\nomname}{\nom name}}
\newcommand*\nomaltname{Abkürzungsverzeichnis}
\newcommand\nomaltpreamble{\markboth{\nomaltname}{ \nomaltname}}
\newcommand\nomaltpostamble{}
\newcommand*\switchnomitem{X}
\newcommand*\nomsubheading[1]{\item[{\large\bfseries#1}]~}
\renewcommand*\nomgroup[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{%
\ifthenelse{\equal{#1}{A}}{\nomsubheading{Lateinis ch}}{%
\ifthenelse{\equal{#1}{G}}{\nomsubheading{Griechis ch}}{%
\ifthenelse{\equal{#1}{I}}{\nomsubheading{Indices} }{%
\typeout{Unbekannte Gruppierung `#1'}%
}%
}%
}%
}%
}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand*\nomname{\nomaltname}
\renewcommand\nompreamble{\nomaltpreamble}
\renewcommand\nompostamble{\nomaltpostamble}
\begin{thenomenclature}
}
\newlength\nomunitwidth
\setlength\nomunitwidth{3em}%<--Breite f. Einheit ggf. anpassen
\newcommand*\nomunit[1]{%
\parbox[t]{\nomunitwidth}{%
\ifx\relax#1\relax
~%
\else
\si{#1}%
\fi
}\space
}
\newcommand*\nounit{\nomunit{}}
\newcommand*\fmite[4][a]{%
\nomenclature[#1]{\ensuremath{#2}}{\nomunit{#3}#4}%
}
\begin{document}
\chapter{Test}
\fmite[a]{L}{\metre}{Länge}
\nomenclature[i]{grenz}{\nounit Grenze}
ein Symbol \fmite[g]{\eta}{}{Wirkungsgrad}\dots
\nomenclature[x]{Abk}{Abkürzung}
\printnomenclature
\end{document}

MfG

spreewaelder
28-10-2010, 07:13
Hallo rais,

vielen Dank :D:D!!!! Das ist genau das, was ich ich gesucht habe.
Nochmals Danke.

Gruß Michael

spreewaelder
27-02-2011, 19:45
Hallo,

momentan bearbeite ich das Layout meiner Arbeit. Da ist mir aufgefallen, dass sowohl das Abkürzungsverzeichnis als auch Formelverzeichnis nicht im Inhaltsverzeichnis aufgelistet werden. Auch der Befehl \addcontentsline{toc}{chapter}{} löst das Problem nicht. Könnt Ihr mir bitte weiter helfen. Danke.

spreewaelder

rais
27-02-2011, 20:01
Moin moin,
hast Du es schon mit der intoc-Option des nomencl-Pakets versucht?

MfG

spreewaelder
27-02-2011, 20:19
Vielen Dank. Jetzt funktioniert es. :D

delm
29-10-2011, 17:39
Hallo zusammen,

zunächst möchte ich mich bei rais für die ausgezeichnete Arbeit bedanken :-)

Nun zum eigentlichen Problem:
Ich verwende den Code aus Beitrag 29 (http://mrunix.de/forums/showpost.php?p=210422&postcount=29). Klappt auch alles soweit ganz gut. Nun würde ich aber gerne, aus Layoutgründen, das zweite Verzeichnis mit einem anderen Abstand versehen (Wert: \nomlabelwidth), sodass die der Befehl \dotfill noch vernünftig umgesetzt werden kann.

Soll-Zustand:
Glossar 1
Value ...... Description

Glossar 2
VeryLongText ...... Description

Ist-Zustand:
Glossar 1
Value ...... Description

Glossar 2
VeryLongText . Description


Habe schon unterschiedlichste Möglichkeiten ausprobiert, der Wert scheint aber nur global zu gelten.

Irgendwelche Vorschläge?


Minimalbeispiel:

\documentclass{scrbook}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
\makenomenclature
\pagestyle{scrheadings}

\renewcommand{\nomlabelwidth}{.30\hsize}
\renewcommand{\nomlabel}[1]{\hspace*{1.5em} \textbf{#1} \dotfill}

\renewcommand{\nomname}{Abk\"urzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\printnomenclature
\chapter{Blubb}
\end{document}

rais
29-10-2011, 20:51
Hallo und Herzlich Willkommen :)


zunächst möchte ich mich bei rais für die ausgezeichnete Arbeit bedanken :-)

da ja nich für;-)


Ich verwende den Code aus Beitrag 29 (http://mrunix.de/forums/showpost.php?p=210422&postcount=29). Klappt auch alles soweit ganz gut. Nun würde ich aber gerne, aus Layoutgründen, das zweite Verzeichnis mit einem anderen Abstand versehen (Wert: \nomlabelwidth), sodass die der Befehl \dotfill noch vernünftig umgesetzt werden kann.

das liegt daran, daß \nomlabelwidth nur von \printnomenclature ausgewertet -- und hier nur einmal aufgerufen -- wird.
Die neu aufgerufene thenomenclature-Umgebung berücksichtigt \nom@tempdim (das im \printnomenclature mit \nomlabelwidth bzw.dem optionalen Argument zu \printnomenclature vorbelegt wird):


\documentclass{scrbook}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
\makenomenclature
\pagestyle{scrheadings}

\setlength\nomlabelwidth{1em}
\renewcommand{\nomlabel}[1]{\makebox[0pt][r]{\textbf{#1}}~}%<-- nur, um den Unterschied zu zeigen

\renewcommand{\nomname}{Abk\"urzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbole}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\makeatletter
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\setlength\nom@tempdim{.30\hsize}%<--
\renewcommand{\nomlabel}[1]{\hspace*{1.5em}\textbf{##1} \dotfill}%<--
\begin{thenomenclature}
}
\makeatother
\begin{document}
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\printnomenclature
\chapter{Blubb}
\end{document}

MfG

delm
29-10-2011, 22:03
Super! Funktioniert wie geplant :)

Da du dich in diesem Bereich scheinbar auskennst, muss ich dich ein wenig weiternerven ;)

Bevor ich zwei nomenclature Umgebungen gebraucht habe, habe ich die \nomgroup dazu verwendet, die einzelnen alphabetischen Abkürzungsgruppen durch einen vertikalen Abstand zu trennen.

Beispiel:
Glossar
EMF ... Eclipse Modeling Framework

JDK ... Java Development Kit
JVM ... Java Virtual Machine

XMI ... XML Metadata Interchange
XML ... Extensible Markup Language
XSD ... XML Schema

Da du diese nun für die Trennung der Glossare verwendest, funktioniert mein Ansatz leider nicht mehr... Oder gibt es eine Möglichkeit Gruppen von den Gruppen zu bilden?


Danke nochmals,
delm

rais
29-10-2011, 23:20
Moin moin,


Bevor ich zwei nomenclature Umgebungen gebraucht habe, habe ich die \nomgroup dazu verwendet, die einzelnen alphabetischen Abkürzungsgruppen durch einen vertikalen Abstand zu trennen.

Beispiel:
Glossar
EMF ... Eclipse Modeling Framework

JDK ... Java Development Kit
JVM ... Java Virtual Machine

XMI ... XML Metadata Interchange
XML ... Extensible Markup Language
XSD ... XML Schema

Da du diese nun für die Trennung der Glossare verwendest, funktioniert mein Ansatz leider nicht mehr... Oder gibt es eine Möglichkeit Gruppen von den Gruppen zu bilden?

imho nein, was hier per \nomgroup auswertbar ist, ist das, was makeindex als `heading' vorgibt, per nomencl.ist also `Numbers', `Symbols' oder A--Z.
Nun könnte man Abkürzungen und Symbole in der Reihenfolge umdrehen (auf Symbols testen) und die Trennanweisung aufheben bzw. durch Deinen vertikalen Abstand ersetzen, etwa:


\documentclass{scrbook}
\usepackage{amsmath,ifthen,scrpage2}
\usepackage[noprefix]{nomencl}
\makenomenclature
\pagestyle{scrheadings}

\setlength\nomlabelwidth{1em}
\renewcommand{\nomlabel}[1]{\makebox[0pt][r]{\textbf{#1}}~}

\renewcommand{\nomname}{Symbole}
\newcommand{\nomaltname}{Abk\"urzungsverzeichnis}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{Symbols}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{}{\switchn omalt}}
\newif\ifswitchedalt
\newcommand*\switchnomalt{%
\ifswitchedalt
\vspace{2\baselineskip}%<--oder was auch immer
\else
\switchnomaltstuff
\switchedalttrue
\fi
}
\makeatletter
\newcommand{\switchnomaltstuff}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\setlength\nom@tempdim{.30\hsize}%<--
\renewcommand{\nomlabel}[1]{\hspace*{1.5em}\textbf{##1} \dotfill}%<--
\begin{thenomenclature}
}
\makeatother
\begin{document}
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature{$\eta$}{Wirkungsgrad}\dots
\nomenclature{A}{wie Anton}
\nomenclature{Ab}{nochmal was mit A}
\printnomenclature
\chapter{Blubb}
\end{document}

MfG

delm
30-10-2011, 12:58
Super, für ein Verzeichnis klappt es schon mal. Würde das aber auch gerne beim anderen Verzeichnis verwenden, da es sich bei beiden Verzeichnissen um keine Symbolverzeichnisse handelt.

Die Zuweisung an die von dir erstellte Symbolgruppe kann ja auch manuell mit dem optionalen Parameter von dem \nomenclature Befehl geschehen. Also beispielsweise \nomenclature[1]{Value}{Description}.

Aber wie könnte man nun bei der Symbolgruppe noch feingranularer unterteilen und somit auch den vertikalen Abstand einfügen? Oder sind wir da an die Grenzen des Packages gestoßen? :P

mechanicus
30-10-2011, 13:10
Hi,

ich möchte ungern zwischenfunken und nichts gegen die Arbeit von Rainer sagen, aber eine Nutzung des Paketes glossaries sollte hier wirklich in betracht gezogen werden.

Marco

rais
31-10-2011, 13:47
Super, für ein Verzeichnis klappt es schon mal. Würde das aber auch gerne beim anderen Verzeichnis verwenden, da es sich bei beiden Verzeichnissen um keine Symbolverzeichnisse handelt.

Warum sagst Du nicht von vorneherein, was genau Du eigentlich haben willst?


Die Zuweisung an die von dir erstellte Symbolgruppe kann ja auch manuell mit dem optionalen Parameter von dem \nomenclature Befehl geschehen. Also beispielsweise \nomenclature[1]{Value}{Description}.

Ja.


Aber wie könnte man nun bei der Symbolgruppe noch feingranularer unterteilen und somit auch den vertikalen Abstand einfügen? Oder sind wir da an die Grenzen des Packages gestoßen? :P
Ja.
Egal wie viele Symbole Du definierst, es wird nur maximal ein \nomgroup{Symbols} in die .nls-Datei geschrieben. Wenn bei beiden Verzeichnissen insgesamt maximal 26 Unterteilungen vorkommen, dann könnte eine Realisierung mit diesem Ansatz gerade noch möglich sein, nimmt man halt den passenden Buchstaben für die Trennung.
Andernfalls (bei 2 x A--Z) müsste entweder jedem Symbol ein Eintrag mitgegeben werden, den man auf LaTeX-Ebene dann erstmal abklopfen darf, ob es denn der Erste Eintrag innerhalb der Untergruppe `x' bei den Symbolen ist und nur dann einen vertikalen Abstand ausgeben (es sei denn natürlich, es war der erste Eintrag überhaupt).
Alternativ könnte man die Verzeichnisse auf eben zwei Dateien splitten und makeindex eben auf beide Dateien getrennt loslassen.
Beides imho nicht sooo trivial umzusetzen ...

Anders gesagt: ich schließe mich Marcos Empfehlung an.;-)

MfG

rais
31-10-2011, 16:00
Obwohl, je mehr ich mir das überlege ... :D


\documentclass{scrbook}
\usepackage{amsmath,ifthen,scrpage2}
\usepackage[noprefix]{nomencl}
\makenomenclature
\pagestyle{scrheadings}

\renewcommand*\nomname{Symbole}
\newcommand*\nomaltname{Abk\"urzungsverzeichnis}
\renewcommand\nompreamble{\markboth{\nomname}{\nom name}}
\newcommand\nomaltpreamble{\markboth{\nomaltname}{ \nomaltname}}
\newcommand\nomaltpostamble{}
\newcommand*\switchnomitem{Symbols}
\renewcommand*\nomgroup[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{}{\switchn omalt}}
\newif\ifswitchedalt
\newcommand*\switchnomalt{%
\ifswitchedalt
\vspace{2\baselineskip}%<--oder was auch immer
\else
\switchnomaltstuff
\switchedalttrue
\fi
}
\newcommand*\symbgrpcurrent{}%
\newcommand*\symbgrpprev{noch nicht definiert}%
\newcommand*\symbgrpfirst{a}%
\newcommand*\symbgrp[1]{%
\xdef\symbgrpcurrent{#1}%
\ifx\symbgrpcurrent\symbgrpprev
\else
\ifx\symbgrpcurrent\symbgrpfirst
\else
\rule{0pt}{3\baselineskip}%
\fi
\fi
\xdef\symbgrpprev{#1}%
}
\newcommand*\symbature[3][a]{%
\nomenclature{\symbgrp{#1}#2}{#3}%
}
\makeatletter
\newcommand\switchnomaltstuff{%
\end{thenomenclature}
\renewcommand*\nomname{\nomaltname}%
\renewcommand\nompreamble{\nomaltpreamble}%
\renewcommand\nompostamble{\nomaltpostamble}%
\setlength\nom@tempdim{.30\hsize}%<--
\renewcommand*\nomlabel[1]{\hspace*{1.5em}\textbf{##1} \dotfill}%<--
\begin{thenomenclature}
}
\makeatother
\begin{document}
\chapter{Test}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \symbature{$\eta$}{Wirkungsgrad}\dots
\symbature{$\varphi$}{Irgendwas}
\symbature[b]{$\beta$}{Winkel}
\symbature[b]{$\alpha$}{noch'n Winkel}
\nomenclature{A}{wie Anton}
\nomenclature{Ab}{nochmal was mit A}
\printnomenclature
\chapter{Blubb}
\end{document}

MfG

gee
11-01-2012, 16:06
Hallo zusammen,

kann man ein seitengetrenntes Abkürzungs- und Symbolverzeichnis auch in der Dokumentenklasse "article" erstellen?

Danke und Gruß,
Christian

rais
13-01-2012, 18:07
Hallo und Herzlich Willkommen :)


kann man ein seitengetrenntes Abkürzungs- und Symbolverzeichnis auch in der Dokumentenklasse "article" erstellen?

sicher, Du bräuchtest nur ein \clearpage zwischen diesen beiden Verzeichnissen aufzurufen.

MfG

MegaIngo
02-04-2012, 15:11
Hallo zusammen,

ich bin vor einigen Stunden auf dieses Thema gestoßen um mir dabei zu helfen ein Abkürzungs- und ein Symbolverzeichnis zu erstellen. Ich nutze derzeit den Code aus Beitrag #29, den ich zu folgendem Code verändert habe:


\renewcommand{\nomname}{Abk\"urzungsverzeichnis}
\setlength{\nomlabelwidth}{.25\hsize}
\renewcommand{\nomlabel}[1]{#1 \dotfill}
\setlength{\nomitemsep}{-\parsep}
\renewcommand{\nompreamble}{\markboth{\nomname}{\n omname}}
\newcommand{\nomaltname}{Symbolverzeichnis}
\newcommand{\nomaltpreamble}{\markboth{\nomaltname }{\nomaltname}}
\newcommand{\nomaltpostamble}{}
\newcommand{\switchnomitem}{S}
\renewcommand{\nomgroup}[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt}{}}
\newcommand{\switchnomalt}{%
\end{thenomenclature}
\renewcommand{\nomname}{\nomaltname}
\renewcommand{\nompreamble}{\nomaltpreamble}
\renewcommand{\nompostamble}{\nomaltpostamble}
\begin{thenomenclature}
}
\begin{document}
Ein MB\nomenclature{MB}{Minimalbeispiel} ist's gerade nicht geworden\dots
ein Symbol \nomenclature[s]{$\eta$}{Wirkungsgrad}\dots
\printnomenclature
\end{document}

Ich möchte gerne zwischen den Abkürzungen und den Beschreibungen, bzw. zwischen den Symbolen und den Beschreibungen, Punkte haben. Diese wollte ich mit
\renewcommand{\nomlabel}[1]{#1 \dotfill} einbinden.
Leider wird dann im Abkürzungsverzeichnis hinter dem letzten Eintrag eine Reihe Punkte gemacht, die da natürlich nicht hingehört.

Kann man das Problem lösen?

Viele Grüße,
Ingo

rais
02-04-2012, 16:08
Hallo und Herzlich Willkommen :)


Ich möchte gerne zwischen den Abkürzungen und den Beschreibungen, bzw. zwischen den Symbolen und den Beschreibungen, Punkte haben. Diese wollte ich mit
\renewcommand{\nomlabel}[1]{#1 \dotfill} einbinden.
Leider wird dann im Abkürzungsverzeichnis hinter dem letzten Eintrag eine Reihe Punkte gemacht, die da natürlich nicht hingehört.

Kann man das Problem lösen?

es wäre schön, wenn Du Dein Problem erstmal demonstrieren würdest -- wenn ich Deinen Codeschnippsel auf ein Minimalbeispiel erweitere, erhalte ich im Abkürzungsverzeichnis Punkte zwischen `MB' und `Minimalbeispiel', sowie im Symbolverzeichnis zwischen `eta' und `Wirkungsgrad'. Mehr nicht.
Was genau meinst Du mit ``hinter dem letzten Eintrag'' im Abkürzungsverzeichnis? Hinter welchem Eintrag?

MfG

MegaIngo
02-04-2012, 16:30
Hallo Rainer, danke für die freundliche Begrüßung.

Streiche meinen Eintrag oben. Ich hatte wohl irgendwo noch was zwischen den Zeilen stehen, so dass mir eine weitere Reihe Punkte erzeugt wurde, allerdings ohne, dass dort eine Abkürzung und die entsprechende Beschreibung stand.

Meine Vermutung war, dass die Leerzeile aus dem ersten Code von dir, hin zu dem Code in Beitrag #29 nach oben verschoben wurde und so, bei einer Schreibweise ohne Punkte, nicht mehr auffiel.

Jetzt klappt aber alles wunderbar. Vielen Dank für deine Erklärungen auf den ersten Seiten!!!

Grüße,
Ingo

phil123
25-10-2012, 17:39
Hallo,
ich bin neu hier in dem Forum.
Zurzeit versuche ich ein Abkürzungsverzeichnis und ein Symbolverzeichnis (mit den Untergruppen Symbole (mit Einheit), Indices und Zusatzoperatoren) zu erstellen. Leider habe ich keinen großen Latexkenntnisse und habe mir deshalb den Code aus den vorherigen Seiten zusammenkopiert und etwas umgeändert.



\documentclass{scrbook}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}


\makenomenclature

\renewcommand*\nomname{Abk\"urzungsverzeichnis}
\renewcommand*\nompreamble{\markboth{\nomname}{\no mname}}
\newcommand*\nomaltname{Verwendete Symbole}
\newcommand*\nomaltpreamble{\markboth{\nomaltname} {\nomaltname}}
\newcommand*\nomaltpostamble{}
\newcommand*\switchnomitem{S}

\newcommand*\nomsubheading[1]{\item[{\large\bfseries#1}]~}

\renewcommand*\nomgroup[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{\switchnom alt

}{
%\nomsubheading{Symbol \}}{%
\ifthenelse{\equal{#1}{T}}{\nomsubheading{Indices} }{%
\ifthenelse{\equal{#1}{U}}{\nomsubheading{Zusatzze ichen}}{%
\typeout{Unbekannte Gruppierung `#1'}%
}%
}%
}%
}



\makeatletter
\newcommand*\switchnomalt{%
\end{thenomenclature}
\renewcommand*\nomname{\nomaltname}
\renewcommand*\nompreamble{\nomaltpreamble}
\renewcommand*\nompostamble{\nomaltpostamble}
\settowidth\nom@tempdim{\textbf{SymbolMMM}}%<--die Labelbreite innerhalb vom \printnomenclature-Befehl
\renewcommand*\nomlabel{\nomaltlabel}%<--\nomlabel zurück auf Standard
\begin{thenomenclature}


\item[\large\textbf{Symbol}]\large\textbf{Bezeichnung} \hfill\large\textbf{SI-Einheit}%<--


%\item[\textbf{Symbol}]\textbf{Bezeichnung}\hfill\textbf{SI-Einheit}%<--
}
%\makeatother
\setlength{\nomlabelwidth}{0.2\hsize}%<--für Abkürzungen
\let\nomaltlabel\nomlabel%<--Standardlabel für Symbole



\begin{document}
\chapter{Test}
Hier steht etwas blablba


\nomenclature[S]{$\varphi$}{Potential \nomunit{$m^{2} \; kg \; s^{-3} \; A^{-1}$}}
\nomenclature{Abk}{Abk\"urzung}% --> kommt ins Abkürzungsverzeichnis
\nomenclature[T]{l}{liquid \nomunit{}}% --> Symbolverzeichnis: Index
\nomenclature[U]{$\dot x$}{zeitliche Ableitung \nomunit{}}% --> Symbolverzeichnis: Zusatzzeichen
\nomenclature{T}{Test}% --> kommt ins Abkürzungsverzeichnis

\printnomenclature

\end{document}




Das läuft leider noch nicht sehr erfolgreich. Es kommen drei mir unerklärliche Fehlermeldungen und ich würde gerne noch folgende Änderungen druchführen:
1.) Die Einheiten etwas nach rechts direkt unter "SI-Einheit" schieben.
2.) den Abstand zwischen "Bezeichnung" und "SI-Einheit" manuell anpassen
3.) Die Schrift der Abkürzungen genauso, wie die für das Symbolverzeichnis gestalten.
4.) Optional unter "Verwendete Symbole" noch einen Text einfügen, wie etwa "Die erste Spalte der folgenden Liste zeigt... "

Ich habe schon einige Stunden probiert, aber bisher ist es mir nicht gelungen und ich würde mich sehr freuen, wenn mir jemand von euch helfen könnte.

Viele Grüße,
phil123

rais
28-10-2012, 16:42
Hallo und Herzlich Willkommen :)


Das läuft leider noch nicht sehr erfolgreich. Es kommen drei mir unerklärliche Fehlermeldungen und ich würde gerne noch folgende Änderungen druchführen:
1.) Die Einheiten etwas nach rechts direkt unter "SI-Einheit" schieben.

so Deine Fehlermeldungen etwa so aussehen


! Undefined control sequence.
l.11 ...{$\varphi$}]\begingroup Potential \nomunit
{$m^{2} \; kg \; s^{-3} \;...

liegt es daran, daß Du \nomunit nirgends definiert hast, vgl. `texdoc nomencl', Abschnitt `Units'.


2.) den Abstand zwischen "Bezeichnung" und "SI-Einheit" manuell anpassen

S.u. die \parbox mit Breite \nomunitwidth


3.) Die Schrift der Abkürzungen genauso, wie die für das Symbolverzeichnis gestalten.

Was ist an der Schrift denn anders?


4.) Optional unter "Verwendete Symbole" noch einen Text einfügen, wie etwa "Die erste Spalte der folgenden Liste zeigt... "

Dafür war \nomaltpreamble gedacht.
BTW: Einheiten werden nach SI aufrecht gesetzt, AFAIK.


\documentclass{scrbook}
\usepackage{amsmath,amssymb,nomencl,ifthen,scrpage 2}
\usepackage{siunitx}

\makenomenclature

\renewcommand*\nomname{Abk\"urzungsverzeichnis}
\renewcommand*\nompreamble{\markboth{\nomname}{\no mname}%
Hier darf auch etwas stehen\ldots
}
\newcommand*\nomaltname{Verwendete Symbole}
\newcommand*\nomaltpreamble{\markboth{\nomaltname} {\nomaltname}%
Die erste Spalte der folgenden Liste zeigt\ldots}
\newcommand*\nomaltpostamble{}
\newcommand*\switchnomitem{S}

\newcommand*\nomsubheading[1]{\item[{\large\bfseries#1}]~}

\renewcommand*\nomgroup[1]{%
\ifthenelse{\equal{#1}{\switchnomitem}}{%
\switchnomalt
}{%
%\nomsubheading{Symbol \}}{%
\ifthenelse{\equal{#1}{A}}{% Abkürzungen
}{%
\ifthenelse{\equal{#1}{T}}{\nomsubheading{Indices} }{%
\ifthenelse{\equal{#1}{U}}{\nomsubheading{Zusatzze ichen}}{%
\typeout{Unbekannte Gruppierung `#1'}%
}%
}%
}%
}%
}
\newlength\nomunitwidth
\setlength\nomunitwidth{0.5\linewidth}%<--Stellschraube:
% reservierte Breite für \nomunit

\makeatletter
\newcommand*\switchnomalt{%
\end{thenomenclature}
\renewcommand*\nomname{\nomaltname}
\renewcommand*\nompreamble{\nomaltpreamble}
\renewcommand*\nompostamble{\nomaltpostamble}
\settowidth\nom@tempdim{\textbf{SymbolMMM}}%<--die Labelbreite innerhalb vom \printnomenclature-Befehl
\renewcommand*\nomlabel{\nomaltlabel}%<--\nomlabel zurück auf Standard
\begin{thenomenclature}


\item[\large\textbf{Symbol}]\large\textbf{Bezeichnung} \hfill\parbox{\nomunitwidth}{\large\textbf{SI-Einheit}}%<--


%\item[\textbf{Symbol}]\textbf{Bezeichnung}\hfill\textbf{SI-Einheit}%<--
}
\makeatother
\setlength{\nomlabelwidth}{0.2\hsize}%<--für Abkürzungen
\let\nomaltlabel\nomlabel%<--Standardlabel für Symbole

\newcommand*\nomunit[1]{%
\ifx\relax#1\relax\else
\renewcommand\nomentryend{\hfill\parbox{\nomunitwi dth}{\si{#1}}}%
\fi
}

\begin{document}
\chapter{Test}
Hier steht etwas blablba


\nomenclature[S]{$\varphi$}{Potential \nomunit{\metre\squared\kilogram\per\second\cubed\ per\ampere}}
\nomenclature{Abk}{Abk\"urzung}% --> kommt ins Abkürzungsverzeichnis
\nomenclature[T]{l}{liquid \nomunit{}}% --> Symbolverzeichnis: Index
\nomenclature[U]{$\dot x$}{zeitliche Ableitung \nomunit{}}% --> Symbolverzeichnis: Zusatzzeichen
\nomenclature{T}{Test}% --> kommt ins Abkürzungsverzeichnis

\printnomenclature

\end{document}

MfG

phil123
28-10-2012, 20:26
Hallo rais,

es funktioniert wunderbar - genauso, wie ich es mir vorgestellt habe.
Vielen Dank!

phil123