glossaries Abk- Symbolverzeichnis anpassen

Inhalt, Abbildungen, Tabellen, Quellcodes und andere Verzeichnisse


larswi
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Mi 19. Apr 2017, 19:18

glossaries Abk- Symbolverzeichnis anpassen

Beitrag von larswi »

Hallo zusammen,

für meine Bachelor-Arbeit soll ich mein Abkürzungs- & Symbolverzeichnis wie eine Tabelle gestalten.

Ich habe mich dazu auch ein wenig schlau gemacht und bisher ist folgendes dabei rausgekommen (als minimalbeispiel):

Code: Alles auswählen

%
\documentclass[]{scrartcl}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[left=35mm, right=30mm, top=35mm, bottom=25mm]{geometry}
\usepackage{amsmath}

\usepackage[
	nomain,
	nonumberlist,
	toc,
	acronym,
	nopostdot,
	nogroupskip
]{glossaries}

\newglossary[slg]{symbols}{syi}{syg}{List of Symbols}
\renewcommand*{\glspostdescription}{}

\makeglossaries

% MyStyle for list of Symbols
\newglossarystyle{MyStyle}{
  \glossarystyle{long3colheader}
  \renewenvironment{theglossary}
  {\begin{longtable}{lp{2cm}p{\glsdescwidth}}}
    {\end{longtable}}
  \renewcommand*{\glossaryheader}{\textbf{Symbol} & \textbf{Unit} &
    \textbf{Name}\\[3ex]\endhead}
  \renewcommand*{\glossaryentryfield}[5]{%
    \glsentryitem{##1}\glstarget{##1}{##2} & ##4 & ##3  \\[1ex]}%
}

% Abkürzungen

\newacronym{acr:ansys}{ANSYS}{Analysis System}
\newacronym{acr:fem}{FEM}{Finite Element Method}

% Symbole

% 							ELONGATION
\newglossaryentry{sym:elongation}{
  name={\ensuremath{\varepsilon}},
  symbol={[-]},
  description={Elongation},
  sort=symbolelongatilon,
  type=symbols
}

% 							Stress
\newglossaryentry{sym:stress}{
  name={\ensuremath{\sigma}},
  symbol={[$N/mm^2$]},
  description={Stress},
  sort=symbolstress,
  type=symbols
}

\glsaddall

\begin{document}

\printglossary[
	type=acronym, 			
	title=List of Abbreviations,
	style=listdotted]
\newpage
\printglossary[
	type=symbols,
	style=MyStyle]
\newpage
\section{Beispiel}

The acronyms \gls{acr:ansys} and \gls{acr:fem}  and the Symbols \gls{sym:elongation} and
\gls{sym:stress}.
\end{document}

Soweit so gut, nur möchte ich bei den Abkürzungsverzeichnis noch einen Tabellenkopf mit "\textbf{Abbreviation} | \textbf{Name}" haben und bei beiden Verzeichnissen jeweils noch eine horizontale Linie unterhalb dieser dick gedruckten Bezeichnung.

Am Ende der Seite soll dann auch nochmal eine horizontale Linie erscheinen.

Vielen Dank :)

PS: Ich hab noch ein Bild zugefügt, wie ich es mir in etwa vorstelle.
Dateianhänge
Example.png
Example.png (17.86 KiB) 487 mal betrachtet

Gast

Beitrag von Gast »

Die Änderung für MyStyle ist recht einfach:

Code: Alles auswählen

\usepackage{booktabs}
% MyStyle for list of Symbols
\newglossarystyle{MyStyle}{
  \setglossarystyle{long3colheader}
  \renewenvironment{theglossary}
  {\begin{longtable}{lp{2cm}p{\glsdescwidth}}}
    {\end{longtable}}
  \renewcommand*{\glossaryheader}{\textbf{Symbol} & \textbf{Unit} &
    \textbf{Name}\\\midrule[1pt]
    \addlinespace[2ex]\endhead
    \bottomrule[1pt]\endfoot}
  \renewcommand*{\glossaryentryfield}[5]{%
    \glsentryitem{##1}\glstarget{##1}{##2} & ##4 & ##3  \\[1ex]}%
}
Der Stil listdotted ist dagegen AFAIK kein Tabellenstil. Also gibt es auch keinen Tabellenkopf und keinen Tabellenfuß. Auf der ersten Seite könnte man einen Tabellenkopf und auf der letzten einen Tabellenfuß sicher faken. Auf den Seiten dazwischen wird es eher kompliziert.

larswi
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Mi 19. Apr 2017, 19:18

Beitrag von larswi »

okay,

hab das so mit deinen Einstellungen probiert, aber da fehlt dann bei mir die Einheiten (siehe Example_2.png).

Bezüglich des Abkürzungsverzeichnisses,
der listdotted still muss ich nicht zwangsläufig haben,
mir ist da nur wichtig, dass der volle Name entsprechend eingerückt ist.
Dateianhänge
Example_2.png
Example_2.png (11.19 KiB) 490 mal betrachtet

Gast

Beitrag von Gast »

Das liegt nicht an meiner Änderung. Das war vorher schon so, liegt also an deinem Code nicht an meinem.

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2159
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Am Ende der Einleitung des Abschnitts 15.1 in glossaries-user.pdf von glossaries erfährst Du, warum Du \glspostdescription in Deinem Beispiel nicht mehr anpassen musst.

Für Deine Einheiten bietet sich das Paket siunitx an.

\glossaryentryfield ist veraltet. In der Dokumentation heißt der Befehl \glossentry. Das Argument des Befehls hat sich auch verändert. Du dürftest in diesem und anderen Foren verschiedene Beispiele finden.

Gast

Beitrag von Gast »

Um den Code wenigstens halbwegs auf an die aktuelle Version von glossaries anzupassen, könnte die Definition beispielsweise

Code: Alles auswählen

\newglossarystyle{MyStyle}{
  \setglossarystyle{long3colheader}
  \renewenvironment{theglossary}
  {\begin{longtable}{lp{2cm}p{\glsdescwidth}}}
    {\end{longtable}}
  \renewcommand*{\glossaryheader}{\textbf{Symbol} & \textbf{Unit} &
    \textbf{Name}\\
    \midrule[1pt]
    \addlinespace[2ex]
    \endhead
    \bottomrule[1pt]\endfoot
  }
 \renewcommand*{\glossentry}[2]{%
    \glossentryname{##1} & \glossentrysymbol{##1} & \glossentrydesc{##1} \\[1ex]}%
}
lauten. Aber dann stellt sich auch wieder die Frage, warum nicht gleich long3col-booktabs verwendet wird.

Gast

Beitrag von Gast »

ong3col-booktabs fehlt die Beschreibung. Wohl eher eine Modifikation von long4col-booktabs ohne die page list.

Antworten