Seite 1 von 2

Symbolverzeichnis länger als eine Seite

Verfasst: Mi 25. Mär 2020, 08:57
von update.freak
Hallo zusammen,

bei meinem Symbolverzeichnis habe ich bei den lateinischen Zeichen das Problem, dass nicht mehr alles auf eine Seite passt. Aktuell nutze ich das für eine Tabelle wie folgt:
\begin{tabular}{p{3cm}l}
	$m$ & Masse \\
\end{tabular}
Gibt es hierfür bessere Ansätze, die eventuell auch bei Platzmangel in die nächste Seite übergehen?

Verfasst: Mi 25. Mär 2020, 09:20
von markusv
Hallo.

Du könntest eine Tabellenumgebung verwenden, die Seitenumbrüche zulässt (bspw. longtable)

Oder du machst es richtig und benutzt ein speziell dafür vorgesehenes Paket, bspw. glossaries. Dies erlaubt dir viel mehr, als du mit einer einfachen Tabelle bewerkstelligen kannst. In erster Linie sparst du Dir die alphabetische Ordnung aller Einträge.

Auch mehrere Verzeichnisse (lateinische, griechische Buchstabe etc.) sind kein Problem. Ein erstes, ganz simples Beispiel zum drauf aufbauen:
\documentclass[ngerman]{scrartcl}

\usepackage{babel}
\usepackage[automake,nopostdot,nonumberlist]{glossaries}

\newglossaryentry{masse}{name={\ensuremath{m}},description={Masse}}
\makeglossaries

\begin{document}
	\gls{masse}
	
	\printglossary[title=Symbolverzeichnis]
\end{document}

Verfasst: Mi 25. Mär 2020, 09:40
von update.freak
ok, klasse.
Werde es mit glossaries umsetzen.
Hast du noch einen Tipp wie ich lateinische und griechische Buchstaben getrennt aufführen kann.

Und noch was: erstelle ich mit diesem Paket auch das Abkürzungsverzeichnis (aktuell auch als Tabelle)?

Verfasst: Mi 25. Mär 2020, 09:45
von Gast
Man kann mit glossaries problemlos mehrere Verzeichnisse erstellen. Wenn es allerdings sehr viele werden, kann es auch passieren, dass man irgendwann an die Grenzen der verfügbaren Dateihandles stößt. Spätestens dann ist es Zeit zu lualatex zu wechseln, weil es das Problem dort nicht gibt. Manchmal kann man sich bei Verwendung von pdflatex noch mit Paketen wie scrwfile über die Runden retten.

Verfasst: Mi 25. Mär 2020, 10:13
von markusv
update.freak hat geschrieben:Hast du noch einen Tipp wie ich lateinische und griechische Buchstaben getrennt aufführen kann.

Und noch was: erstelle ich mit diesem Paket auch das Abkürzungsverzeichnis (aktuell auch als Tabelle)?
\documentclass[ngerman]{scrartcl}

\usepackage{babel}
\usepackage[automake,nopostdot,nonumberlist,section=subsection,acronym]{glossaries}
\newglossary*{latin}{Lateinische Zeichen}
\newglossary*{greek}{Griechische Zeichen}

\newglossaryentry{masse}{type=latin,name={\ensuremath{m}},description={Masse}}
\newglossaryentry{dichte}{type=greek,name={\ensuremath{\rho}},sort=rho,description={Dichte}}
\newglossaryentry{pi}{type=greek,name={\ensuremath{\pi}},sort=pi,description={Kreiszahl}}

\newacronym{DIN}{DIN}{Deutsches Institut für Normung}

\makeglossaries

\begin{document}
	\[\gls{dichte}=\frac{\gls{masse}}V\]
	
	\gls{pi}
	
	\gls{DIN}
	
	\addsec{Symbolverzeichnis}
	\printglossary[type=latin]
	\printglossary[type=greek]
	
	\printglossary[type=\acronymtype,title=Abkürzungsverzeichnis]
\end{document}

Verfasst: Mi 25. Mär 2020, 10:40
von update.freak
perfekt. vielen Dank!

Verfasst: Mi 25. Mär 2020, 11:52
von update.freak
sehe ich das richtig, dass ich durch diese Umstellung alle Formeln korrigieren muss, damit die Symbole im Symbolverzeichnis auftauchen?

Verfasst: Mi 25. Mär 2020, 12:07
von Gast
Du meinst alle Einträge für Formelzeichen? Wenn aufgeteilt werden soll, musst du das machen, denn von sich aus weiß glossaries nicht, welche Zeichen in welches der beiden Verzeichnisse sollen. Theoretisch könnte man mit \glsdefaulttype (Voreinstellung ist main) für eine der beiden Kategorien arbeiten. Es erscheint mir aber sinnvoller, die Einordnung explizit vorzunehmen, wie markusv das gezeigt hat.

Wenn man die Einträge der einzelnen Kategorien in unterschiedlichen Dateien abgelegt hat, muss man in der Tat nicht für jeden Eintrag type festlegen. Dann kann man die Festlegung nämlich einfach bei \loadglsentries als optionales Argument angeben.

Verfasst: Mi 25. Mär 2020, 12:22
von update.freak
ich meine, dass z.B. das hier
\begin{equation}
Re = \frac{\rho U D}{\mu}
\label{eq:Reynoldszahl}
\end{equation}
durch das
\begin{equation}
Re = \frac{\gls{Dichte} \gls{Geschwindigkeit} \gls{Durchmesser}}{\gls{dynamische_Viskositaet}}
\label{eq:Reynoldszahl}
\end{equation}
ersetzt werden müsste.

Verfasst: Mi 25. Mär 2020, 12:48
von markusv
update.freak hat geschrieben:ich meine, dass z.B. das hier
\begin{equation}
Re = \frac{\rho U D}{\mu}
\label{eq:Reynoldszahl}
\end{equation}
durch das
\begin{equation}
Re = \frac{\gls{Dichte} \gls{Geschwindigkeit} \gls{Durchmesser}}{\gls{dynamische_Viskositaet}}
\label{eq:Reynoldszahl}
\end{equation}
ersetzt werden müsste.
Nein, das war lediglich ein Beispiel dafür, dass du die \gls{}-Befehle auch in der Mathematik-Umgebung benutzen kannst. Grundsätzlich wird alles in den Verzeichnissen aufgezählt, was mindestens einmal im Text mit \gls{} referenziert wurde. Du kannst aber auch mit dem einmaligen Aufruf von \glsaddall alle Einträge, die du definiert hast, aufrufen lassen. Falls du bspw. die Seitenzahl ausgegeben haben möchtest, wo die Abkürzungen etc. auftauchen, müsstest du jedes mal den \gls{}-Befehl setzen.
\documentclass[ngerman]{scrartcl}

\usepackage{babel}
\usepackage[automake,nopostdot,nonumberlist,section=subsection,acronym]{glossaries}
\newglossary*{latin}{Lateinische Zeichen}
\newglossary*{greek}{Griechische Zeichen}

\newglossaryentry{masse}{type=latin,name={\ensuremath{m}},description={Masse}}
\newglossaryentry{dichte}{type=greek,name={\ensuremath{\rho}},sort=rho,description={Dichte}}
\newglossaryentry{pi}{type=greek,name={\ensuremath{\pi}},sort=pi,description={Kreiszahl}}

\newacronym{DIN}{DIN}{Deutsches Institut für Normung}

\makeglossaries

\begin{document}
   \glsaddall
   
   \addsec{Symbolverzeichnis}
   \printglossary[type=latin]
   \printglossary[type=greek]
   
   \printglossary[type=\acronymtype,title=Abkürzungsverzeichnis]
\end{document}
PS Off-Topic:
Ich würde Größen wie die Reynodszahl nicht so im Mathemodus schreiben, da es sich genau genommen bei deiner Schreibweise um die Multiplikation von R und e handelt. Ich würde gleich einen Operator definieren:
%in der Präambel:
\DeclareMathOperator{\Reyn}{Re}


\begin{equation}
\Reyn = \frac{\rho U D}{\mu}
\end{equation}