PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Symbolverzeichnis mit glossaries



Spatzerl
15-02-2012, 17:42
Hallo zusammen.
Ich bin neu hier im Forum und bräuchte eure Hilfe mit dem Paket "glossaries". Ich nutze "glossaries" für das Abkürzungsverzeichnis meiner Promotion und würde auch gerne das Symbolverzeichnis damit generieren.
Das Symbolverzeichnis soll aus 3 Spalten (mit Spaltenüberschrift) - Symbol, Einheit, Beschreibung - bestehen. Mit dem Glossarystyle "long4colheader" kommt es meinen Wünschen schon recht nahe. Allerdings stört mich hier die Seitenangabe und dass die Einheit des Symbols nach der Beschreibung steht.


%%
% -- Header --
%%
\documentclass[10pt,% Schriftgröße 10 pt
oneside=true,% einseitig
chapterprefix=false,% Kapitel werden nur mit Nummern bezeichnet
toc=flat,% alles linksbündig (DIN 1421)
headinclude, % Kopfzeile gehört zum Textfeld
bibliography=totoc, % fügt "Literaturverzeichnis" ins Inhaltsverzeichnis ein
]{scrreprt}
\usepackage[english,ngerman]{babel,translator}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}\rmfamily
\usepackage{babelbib}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}

\usepackage[acronym,toc]{glossaries}
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis} % eigenes Symbolverzeichnis
\renewcommand*{\glspostdescription}{} % kein Punkt am Ende
\makeglossaries

%%
%% -- Glossary-Einträge -- %%%
%%
\newglossaryentry{symb:Pi}{
name=$\pi$,
description={Kreiszahl},
symbol={-},
sort=symbolpi,type=symbolslist
}
\newglossaryentry{symb:A}{
name=$A$,
description={Fläche},
symbol={$mm^2$},
sort=symbolA, type=symbolslist
}
\newglossaryentry{symb:r}{
name=$r$,
description={Radius},
symbol={$mm$},
sort=symbolr, type=symbolslist
}

%%
%% -- Glossary-Style -- %%
%%
\newglossarystyle{symbol}{
\glossarystyle{long4colheader}
\renewenvironment{theglossary}
{\begin{longtable}{cp{\glsdescwidth}p{\glspagelist width}c}}
{\end{longtable}}
}

\begin{document}
\section{das ist ein Test}
\gls{symb:r}
\gls{symb:A}
\gls{symb:Pi}

\printglossary[type=symbolslist,style=symbol]
\end{document}


Könnt ihr mir bitte Tipps geben, wie ich zum einen die Spalte mit der Seitenzahl wegbekomme und zum zweiten die Spalte mit den Einheiten zwischen die Symbol- und Beschreibungsspalte verschieben kann? Super wäre auch, wenn die Einheiten richtig angezeigt werden würden.

Schon mal vielen Dank für eure Hilfe!
Gruß
Caro

nixversteh
17-02-2012, 13:59
Hallo Caro,

herzlich willkommen im Forum, ich wünsche dir viele hilfreiche Tipps.
Du kannst drei Spalten erzeugen, indem du diesem Code einsetzt:

\glossarystyle{long3colheader} anstelle deines Codes:

\glossarystyle{long4colheader}

Leider kann ich dir ansonsten nicht weiterhelfen.

Viel Erfolg

Lieben Gruß

Martin

PS.: Schau mal in den Anhang

EDIT: Eine etwas andere Version

bobmalaria
18-02-2012, 00:21
hi,

in der doku findest du die stildefinitionen und darin variablen (die auch beschrieben sind). in deinem fall musste man ##4 und ##3 tauschen damit das symbol nach dem zeichen steht und und dahinter dann die beschreibung. ich habe mir auch die freiheit genommen einheiten mit dem siunitx paket zu setzen. einheiten schreibt man normalerweise nicht kursiv, das passiert aber im mathemodus automatisch. das \protect ist nur für glossaries nötig, im normalen fliesstext kannst du einfach \si{einheit} schreiben oder \SI{5}{\nano\meter}. dann stimmen auch die abstände von zahlen zu einheiten. ist ein feines paket...

in der longtable definition habe ich den header text geändert (Notation, unit, desc.) und mich für entsprechende spaltentypen entschieden. du kannst das natürlich halten wie du willst und das noch ändern.


\documentclass{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}

\usepackage[acronym,toc,nonumberlist]{glossaries}
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis} % eigenes
\renewcommand*{\glspostdescription}{} % kein Punkt am Ende
\makeglossaries

%
% -- Glossary-Einträge -- %%%
%
\newglossaryentry{symb:Pi}{
name=$\pi$,
description={Kreiszahl},
symbol={-},
sort=symbolpi,type=symbolslist
}
\newglossaryentry{symb:A}{
name=$A$,
description={Fläche},
symbol={\protect\si{\milli\meter\squared}},
sort=symbolA, type=symbolslist
}
\newglossaryentry{symb:r}{
name=$r$,
description={Radius},
symbol={\protect\si{\milli\meter}},
sort=symbolr, type=symbolslist
}

%
% -- Glossary-Style -- %%
%
\newglossarystyle{symbol}{
\glossarystyle{long3colheader}
\renewenvironment{theglossary}
{\begin{longtable}{lp{2cm}p{\glsdescwidth}}}
{\end{longtable}}
\renewcommand*{\glossaryheader}{\textbf{Notation} & \textbf{Unit} &
\textbf{Description}\\}%
\renewcommand*{\glossaryentryfield}[5]{%
\glsentryitem{##1}\glstarget{##1}{##2} & ##4 & ##3 \\}%
}

\begin{document}
\section{das ist ein Test}
\gls{symb:r}
\gls{symb:A}
\gls{symb:Pi}

\printglossary[type=symbolslist,style=symbol]
\end{document}

http://www.mrunix.de/forums/attachment.php?attachmentid=5047&stc=1&d=1329520879

auch-schräg
18-04-2013, 17:00
Hallo! Erstmal vielen Dank für das Beispiel von Bobmalaria! Funktioniert super.

Allerdings hätte ich gerne etwas größere Zeilenabstände zwischen den einzelnen Einträgen. Und auch der Abstand unter dem glossaryheader ist etwas klein.
Leider habe ich keinen Schimmer, wie ich die Abstände ändern kann.

Als Minimalbeispiel zitiere ich einfach mal:




\documentclass{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}

\usepackage[acronym,toc,nonumberlist]{glossaries}
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis} % eigenes
\renewcommand*{\glspostdescription}{} % kein Punkt am Ende
\makeglossaries

%
% -- Glossary-Einträge -- %%%
%
\newglossaryentry{symb:Pi}{
name=$\pi$,
description={Kreiszahl},
symbol={-},
sort=symbolpi,type=symbolslist
}
\newglossaryentry{symb:A}{
name=$A$,
description={Fläche},
symbol={\protect\si{\milli\meter\squared}},
sort=symbolA, type=symbolslist
}
\newglossaryentry{symb:r}{
name=$r$,
description={Radius},
symbol={\protect\si{\milli\meter}},
sort=symbolr, type=symbolslist
}

%
% -- Glossary-Style -- %%
%
\newglossarystyle{symbol}{
\glossarystyle{long3colheader}
\renewenvironment{theglossary}
{\begin{longtable}{lp{2cm}p{\glsdescwidth}}}
{\end{longtable}}
\renewcommand*{\glossaryheader}{\textbf{Notation} & \textbf{Unit} &
\textbf{Description}\\}%
\renewcommand*{\glossaryentryfield}[5]{%
\glsentryitem{##1}\glstarget{##1}{##2} & ##4 & ##3 \\}%
}

\begin{document}
\section{das ist ein Test}
\gls{symb:r}
\gls{symb:A}
\gls{symb:Pi}

\printglossary[type=symbolslist,style=symbol]
\end{document}


Vielen Dank!
Daniel

bobmalaria
18-04-2013, 18:06
hi,

meinst du der abstand zwischen überschrift und beginn der tabelle ist dir zu klein ?

ungetetstet kannst du da mal


\renewenvironment{theglossary}
{\vspace*{2cm}\begin{longtable}{lp{2cm}p{\glsdescw idth}}}

versuchen, wobei 2cm jetzt nur mal ein beispielwert ist.

der abstand zwischen den einträgen wird durch den zeilenumbruch in der tabelle bestimmt.


\renewcommand*{\glossaryheader}{\textbf{Notation} & \textbf{Unit} &
\textbf{Description}\\[2ex]}% nach der überschrift
\renewcommand*{\glossaryentryfield}[5]{%
\glsentryitem{##1}\glstarget{##1}{##2} & ##4 & ##3 \\[5ex]}%nach jeder zeile bzw nach jedem eintrag

das sollt man so ändern können wie oben. probiers mal aus

auch-schräg
18-04-2013, 18:59
Super, das Einfügen von


[2ex] bzw. [5ex]

hat sehr gut geklappt!

mfl
19-11-2014, 13:44
Dear LaTex friends,

the above solutions works great for me.
Now I would like to use a 4-column setup instead and include the pages in the 4th (last) column.
could anybody help me how to alter the code accordingly?

thx a lot.

Johannes_B
20-11-2014, 10:29
Hi, this is a german speaking forum. If you want to talk about LaTeX and friends in english, please have a look at LaTeX community (www.latex-community.org).

Aber ich würde ja fast sagen, das ist spam.

Mechaniko
16-12-2014, 13:00
Hallo,

warum bekomme ich folgende Fehlermeldung:

Package Glossaries Error: description key required in \newglossary for entry ...

Ich nutze Texmaker kann mir bitte jemand helfen.

rais
16-12-2014, 16:38
warum bekomme ich folgende Fehlermeldung:

Package Glossaries Error: description key required in \newglossary for entry ...

siehe bitte hier (http://www.mrunix.de/forums/showthread.php?66921-Tip-Fehlersuche),
handle entsprechend und poste dazu auch die komplette Fehlermeldung.

Evtl. wär das was für einen neuen Thread.

MfG