Machen Sie die Nomenklatur richtig sortiert

Machen Sie die Nomenklatur richtig sortiert

Ich sortiere meine Nomenklatur wie in der nomenclPaketdokumentation vorgeschlagen, aber \dot{q}es wird vor aund sortiert v, wobei die gewünschte Sortierung folgendermaßen lautet:

  • a
  • \dot{q}
  • v

Das Vorhandensein eines Standardpräfixes hilft nicht weiter und noprefixwird daher verwendet. Präfixe werden verwendet, um römische [1]von griechischen [2]Variablen zu unterscheiden.

\documentclass[oneside,paper=a4,fontsize=12pt,english]{scrreprt}
\usepackage[noprefix]{nomencl}
\makenomenclature
\begin{document}
\printnomenclature
\nomenclature[1]{\(a\)}{Semimajor axis}
\nomenclature[1]{\(v\)}{Velocity}
\nomenclature[1]{\(\dot{q}\)}{Heat flux}
\nomenclature[2]{\(\rho\)}{Density}
% makeindex.exe Test.nlo -s nomencl.ist -o Test.nls
Lorem ipsum.
\end{document}

Die Verwendung [1q]als Präfix bewirkt, \dot{q}dass am Ende der römischen Variablen sortiert wird. Wie kann ich das nomenclatureignorieren \dot{}?

Antwort1

Fügen Sie einfach hinzualledie Einträge, die eine mathematische ASCII-Version zum Sortieren haben:

% arara: pdflatex
% arara: nomencl
% arara: pdflatex

\documentclass[oneside,paper=a4,fontsize=12pt,english]{scrreprt}
\usepackage[noprefix]{nomencl}
\makenomenclature

\begin{document}

\printnomenclature
\nomenclature[1a]{\(a\)}{Semimajor axis}
\nomenclature[1v]{\(v\)}{Velocity}
\nomenclature[1q]{\(\dot{q}\)}{Heat flux}
\nomenclature[2rho]{\(\rho\)}{Density}

Lorem ipsum.
\end{document}

Bildbeschreibung hier eingeben

Damit müssen Sie sich den Befehl zum Erstellen der Datei araranicht merken . :).nls

Antwort2

Um zu verhindern, dass Symbole nach umgebenden Befehlen wie sortiert werden, \dot{q}hängen Sie das Präfix mit dem mathematischen Modus des Symbols ohne zusätzliche Befehle an, wie folgt:

\nomenclature[1\(q\)]{\(\dot{q}\)}{Heat flux}

Im vollständigen Beispiel sehen wir, dass diese zusätzliche Syntax nur für die einzelne Problemvariable erforderlich ist:

Ausgabe

\documentclass[oneside,paper=a4,fontsize=12pt,english]{scrreprt}
\usepackage[noprefix]{nomencl}
\makenomenclature
\begin{document}
    \printnomenclature
    \nomenclature[1]{\(a\)}{Semimajor axis}
    \nomenclature[1]{\(v\)}{Velocity}
    \nomenclature[1\(q\)]{\(\dot{q}\)}{Heat flux}
    \nomenclature[2]{\(\rho\)}{Density}
    % makeindex.exe Test.nlo -s nomencl.ist -o Test.nls
    Lorem ipsum.
\end{document}

verwandte Informationen