PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Symbolverzeichnis 3-Spaltig



trinix
04-12-2014, 23:32
Hallo,

Für die Erstellung eines 3-spaltigen Symbolverzeichnisses gelingt es mir nicht aus 5 nur 3 Spalten zu machen. Ich vermute es liegt an der Definition des \newglossarystyle{mytab}. Das Symbolverzeichnis soll das Formelzeichen, die Einheit und Beschreibung beinhalten.

Hier mein Beispiel was ich versuchte anzupassen, aber leider nicht zum laufen bekomme...



\documentclass{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\DeclareSIUnit{\dichte}{\gram\per\cubic\centi\mete r}
\usepackage{longtable}

\usepackage[%
acronym,%
sanitizesort=false,%
toc,%
% nonumberlist,%
nomain%
]{glossaries}

%Neuer Eintragstyp
\newglossary[fog]{formel}{foi}{foo}{Formelzeichen}

%Ein neuer Verzeichnisstil der auch die Einheit mit ausgibt
\newglossarystyle{mytab}{%
% Verzeichnis wird ein 'longtable' mit 5 Spalten
\renewenvironment{theglossary}%
{\begin{longtable}{lll{\glsdescwidth}}%
{\end{longtable}}%
% Kopf der Tabelle
\renewcommand*{\glossaryheader}{%
\bfseries Zeichen & \bfseries Einheit & \bfseries Bescheibung%
\\\endhead}%
% Kein Abstand zwischen Gruppen
\renewcommand*{\glsgroupheading}[1]{}%
%
\renewcommand*{\glossaryentryfield}[3]{%
% \glsentryitem{##1}% Entry number if required
\glstarget{##1}{##2}% Name
##4 %Zeichen
& \glsentryuseri{##1}%Einheit
% & ##3% Description
\\% end of row
}%

% The command \glsgroupskip specifies what to do between glossary groups.
% Glossary styles must redefine this command. (Note that \glsgroupskip
% only occurs between groups, not at the start or end of the glossary.)
\renewcommand*{\glsgroupskip}{\relax}
}

\makeglossaries

%
% -- Abkuerzungen -- %%%
\newacronym{mfg}{MFG}{Mit freundlichen Grüßen}

% -- Symbole -- %%%
\newglossaryentry{dichte}{
name=Dichte,
description={Verhältnis von Gewicht zu Volumen},
symbol={$\rho$},
type=formel,
user1={kg/m3}
}

\newglossaryentry{kugelradius}{
name={\ensuremath{r_K}},
description={Kugelradius},
symbol={\protect\si{\protect\milli\protect\metre}} ,
text={Kugelradius $r_K$},
type=formel}

\newglossaryentry{test}{
name=Dampfschiffahrt,
description={Verhältnis von Gewicht zu Volumen Verhältnis von Gewicht zu Volumen Verhältnis von Gewicht zu Volumen},
symbol={$\rho$},
plural=Dampfschiffahrten,
type=formel,
user1={km/m3}
}

\begin{document}

\tableofcontents

\section{das ist ein Test}
%\gls{symb:r}

\gls{mfg}

\gls{dichte} \glssymbol{dichte}

\gls{kugelradius}

\glspl{test}

\printglossary[title=Formelzeichen,type=formel,style=mytab]
\printglossary[title=Abkürzungsverzeichnis,type=\acronymtype]

\end{document}

nixversteh
05-12-2014, 00:08
Hallo trinix,


\documentclass{article}
\usepackage{glossaries}
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis}
\makeglossaries
\newglossaryentry{symb:time}{
name=$T$,
description={Einheit & Die Laufzeit},
sort=symboltime, type=symbolslist
}
\newglossarystyle{mylong}{%
\renewenvironment{theglossary}%
{\begin{longtable}{llp{\glsdescwidth}}}%
{\end{longtable}}%
\renewcommand*{\glossaryheader}{}%
\renewcommand*{\glsgroupheading}[1]{}%
\renewcommand*{\glossaryentryfield}[5]{%
\glstarget{##1}{##2} & ##3\glspostdescription\space ##5\\}%
\renewcommand*{\glossarysubentryfield}[6]{%
& \glstarget{##2}{\strut}##4\glspostdescription\spac e ##6\\}%
\renewcommand*{\glsgroupskip}{ & \\}%
}

\begin{document}
abc
\gls{symb:time}
\printglossary[type=symbolslist,style=mylong]
\end{document} Quelle: U. Fischer 2009

Viel Erfolg
Gruß

Martin

trinix
05-12-2014, 19:43
Das folgende Beispiel läuft zwar, aber unterschlägt mir immer die Einheit (als symbol angegeben) und packt mir stattdessen die Beschreibung an dessen Stelle. Aber irgendwie stehe ich auch mit der Definition "wo was hinkommt" mächtig auf dem Schlauch... :confused:




\documentclass{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\DeclareSIUnit{\dichte}{\gram\per\cubic\centi\mete r}
\usepackage{longtable}

\usepackage[%
acronym,%
sanitizesort=false,%
toc,%
% nonumberlist,%
nomain%
]{glossaries}

\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis}

\newglossarystyle{mylong}{%
\renewenvironment{theglossary}%
{\begin{longtable}{clp{\glsdescwidth}}}%
{\end{longtable}}%
\renewcommand*{\glossaryheader}{%
\bfseries Zeichen & \bfseries Einheit & \bfseries Bescheibung%
\\\endhead}%
\renewcommand*{\glsgroupheading}[1]{}%
\renewcommand*{\glossaryentryfield}[5]{%
\glstarget{##1}{##2} & ##3\glspostdescription\space ##5\\}%
\renewcommand*{\glossarysubentryfield}[6]{%
& \glstarget{##2}{\strut}##4\glspostdescription\spac e ##6\\}%
\renewcommand*{\glsgroupskip}{ & \\}%
% \renewcommand*{\glsgroupskip}{\relax}
}

\makeglossaries

%
% -- Abkuerzungen -- %%%
\newacronym{mfg}{MFG}{Mit freundlichen Grüßen}

% -- Symbole -- %%%
\newglossaryentry{dichte}{
name={$\rho$},
description={Verhältnis von Gewicht zu Volumen},
symbol={$kg/m^3$},
type=symbolslist,
}

\newglossaryentry{symb:time}{
name=$T$,
symbol={$sec$},
description={Die Laufzeit},
sort=symboltime, type=symbolslist
}


\begin{document}

\tableofcontents

\section{das ist ein Test}

\gls{symb:time}

\gls{mfg}

\gls{dichte} \glssymbol{dichte}

%\printglossary[title=Formelzeichen,type=formel,style=mytab]
\printglossary[title=Abkürzungsverzeichnis,type=\acronymtype]
\printglossary[type=symbolslist,style=mylong]

\end{document}

trinix
13-12-2014, 13:20
Noch jemand eine Idee?


Beste Grüße!
Christian

nixversteh
13-12-2014, 17:40
Noch jemand eine Idee?


Beste Grüße!
Christian

Hallo Christian,

teste mal diesen Code, stammt zum größten Teil von bobmalaria

\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{Zeichen} & \textbf{Einheit} &
\textbf{Beschreibung}\\}%
\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}

Viel Erfolg
Gruß

Martin