Horizontale Linie mit glossaries

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Horizontale Linie mit glossaries

von Flori H » Mi 26. Mär 2014, 19:56

Vielen Dank, das funktioniert :)

von rais » Mi 26. Mär 2014, 19:48

Flori H hat geschrieben:Also mit der letzten Spalte funktioniert das, jedoch nicht mit der ersten.
Als Code hätte ich jetzt:
\renewenvironment{theglossary}												
  {\begin{longtable}{l>{\centering}p{\glsdescwidth}>{\centering\arraybackslash}p{\glspagelistwidth}}}   
  {\end{longtable}}
Ich vermute fast, das liegt an dem "l", aber ich kann da nichts anderes reinschreiben, sonst kommen Fehler.
Mea culpa,
ich hab glatt überlesen, daß Du auch die erste Spalte zentriert haben willst.:oops:
Da kannst Du einfach c statt l nehmen, also
\begin{longtable}{c>{\centering}p{\glsdescwidth}>{\centering\arraybackslash}p{\glspagelistwidth}}
MfG
Rainer

von Flori H » Mi 26. Mär 2014, 17:07

Also mit der letzten Spalte funktioniert das, jedoch nicht mit der ersten.
Als Code hätte ich jetzt:
\renewenvironment{theglossary}												
  {\begin{longtable}{l>{\centering}p{\glsdescwidth}>{\centering\arraybackslash}p{\glspagelistwidth}}}   
  {\end{longtable}}
Ich vermute fast, das liegt an dem "l", aber ich kann da nichts anderes reinschreiben, sonst kommen Fehler.
Vor dem "l" habe ich beides eingefügt, centering und centering\arraybackslash eingefügt, trotzdem passiert nichts.
Vielleicht hat noch jemand eine Idee? :)
Vielen Dank schonmal!

von rais » Mi 26. Mär 2014, 08:20

Flori H hat geschrieben: Geht das mit dem Zentrieren auch bei den beiden anderen Spalten? wenn ich das vor p{\glspaglistwidth} setze, kommen leider nur Fehler ..
ja, auch das geht. Wenn die letzte Spalte davon betroffen ist, ergänze \arraybackslash, damit die \\ als Tabellenzeilenende erkannt werden, etwa
>{\centering\arraybackslash}p{\glspagelistwidth}
Alternativ könntest Du auch die \\ durch \tabularnewline ersetzen.

MfG
Rainer

von Flori H » Di 25. Mär 2014, 23:57

Danke :) das klappt alles wunderbar.
Geht das mit dem Zentrieren auch bei den beiden anderen Spalten? wenn ich das vor p{\glspaglistwidth} setze, kommen leider nur Fehler ..

Re: Horizontale Linie mit glossaries

von rais » Di 25. Mär 2014, 19:52

Flori H hat geschrieben:Hallo, ich sitze gerade an einem Beleg und möchte gern mithilfe des glossaries-Packages, das Symbolverzeichnis formatieren. Soweit ist das fertig, jedoch würde ich gern eine horizontale Linie zwischen den Spaltenüberschriften und dem ersten Eintrag erreichen.
funktioniert \hline (direkt vorm \endhead) denn nicht?
Flori H hat geschrieben:Zusätzlich wöllte ich gern das Wort "Beschreibung" in der 2. Spalte zentrieren. Habt ihr eine Idee, das wäre klasse :)
So in der Form:
Symbol Beschreibung Einheit
-----------------------------------
a b c
a b c
eine p-Spalte kannst Du zentrieren, wenn das array-Paket geladen wird und in der Spaltendeklaration >{\centering} der fraglichen p-Spalte vorangestellt wird.
Flori H hat geschrieben:MM-Beispiel (hoffe, das funktioniert):
Du kannst Dich vorab durch simples Testen davon überzeugen, ob Dein Beispiel funktioniert -- bei diesem fehlt ein \gls{Dichte} o.ä.,damit bleibt das Verzeichnis leer.

BTW: Einheiten werden nach SI aufrecht gesetzt, hierbei kann Dir das siunitx-Paket helfen.
%Dokumenteinstellungen
%
\documentclass[a4paper,12pt,oneside,bibtotoc,liststotoc]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel,translator}
\usepackage{setspace}
\usepackage{siunitx}
%
%Pakete für glossaries
%
\usepackage{array}
\usepackage{booktabs}
\usepackage{longtable}                                                       %für longtable in Symbolverzeichnis                                    
\usepackage[acronym, toc, nonumberlist]{glossaries}             %Verzeichnis mit glossaries erstellen              
\newglossary[svl]{symbols}{svi}{svo}{Symbolverzeichnis}     %Symbolverzeichnis erstellen
\makeglossaries
%
%Symboleinträge
%
\newglossaryentry{Dichte}   {type=symbols,name={$\rho$},   sort=i,description={Dichte}, symbol={\si{\kilo\gram\per\metre\cubed}}}
%
%Style des Symbolverzeichnisses
%
\newglossarystyle{symbols}{%
 % put the glossary in a longtable environment:  
 \renewenvironment{theglossary}%  
  {\begin{longtable}{l>{\centering}p{\glsdescwidth}p{\glspagelistwidth}}}%  
  {\end{longtable}}%  
 % Set the table�??s header:  
 \renewcommand*{\glossaryheader}{%  
  \bfseries Symbol & \bfseries Beschreibung & \bfseries Einheit\\
  \midrule\endhead}%
 % No heading between groups:  
  \renewcommand*{\glsgroupheading}[1]{}%
  \renewcommand*{\glossarypreamble}{\singlespacing}  
 % Main (level 0) entries displayed in a row:  
  \renewcommand*{\glossaryentryfield}[5]{%  
    \glstarget{##1}{##2}% Name  
    & ##3% Description
    & ##4% Symbol (wird von mir als Unit verwendet)  
    \\% end of row  
  }%  
  \renewcommand*{\glsgroupskip}{&\\}%
}
%  
%Dokument
%
\begin{document}
\gls{Dichte}
\printglossary[title=Symbolverzeichnis,style=symbols, type=symbols]
\end{document}
%
MfG
Rainer

Horizontale Linie mit glossaries

von Flori H » Di 25. Mär 2014, 17:46

Hallo, ich sitze gerade an einem Beleg und möchte gern mithilfe des glossaries-Packages, das Symbolverzeichnis formatieren. Soweit ist das fertig, jedoch würde ich gern eine horizontale Linie zwischen den Spaltenüberschriften und dem ersten Eintrag erreichen. Zusätzlich wöllte ich gern das Wort "Beschreibung" in der 2. Spalte zentrieren. Habt ihr eine Idee, das wäre klasse :)
So in der Form:
Symbol Beschreibung Einheit
-----------------------------------
a b c
a b c
MM-Beispiel (hoffe, das funktioniert):
%Dokumenteinstellungen
%
\documentclass[a4paper,12pt,oneside,bibtotoc,liststotoc]{scrreprt}
\usepackage{inputenc}			
\usepackage[ngerman]{babel,translator}
\usepackage{setspace}
%
%Pakete für glossaries
%
\usepackage{datatool}
\usepackage{longtable}                                                       %für longtable in Symbolverzeichnis												 
\usepackage[acronym, toc, nonumberlist]{glossaries}	          %Verzeichnis mit glossaries erstellen					
\newglossary[svl]{symbols}{svi}{svo}{Symbolverzeichnis}	  %Symbolverzeichnis erstellen
\makeglossaries
%
%Symboleinträge
%
\newglossaryentry{Dichte}	{type=symbols,name={$\rho$},	sort=i,description={Dichte}, symbol={$\dfrac{kg}{m^3}$}}
%
%Style des Symbolverzeichnisses
%
\newglossarystyle{symbols}{													  
 % put the glossary in a longtable environment:   
 \renewenvironment{theglossary}%   
  {\begin{longtable}{lp{\glsdescwidth}p{\glspagelistwidth}}}%   
  {\end{longtable}}%   
 % Set the table�??s header:   
 \renewcommand*{\glossaryheader}{%   
  \bfseries Symbol & \bfseries Beschreibung & \bfseries Einheit 
  \\\endhead}%
 % No heading between groups:   
  \renewcommand*{\glsgroupheading}[1]{}%
  \renewcommand*{\glossarypreamble}{\singlespacing}   
 % Main (level 0) entries displayed in a row:   
  \renewcommand*{\glossaryentryfield}[5]{%   
    \glstarget{##1}{##2}% Name   
    & ##3% Description 
    & ##4% Symbol (wird von mir als Unit verwendet)   
    \\% end of row   
  }%   
  \renewcommand*{\glsgroupskip}{&\\}% 
}
%	
%Dokument
%
\begin{document}
\printglossary[title=Symbolverzeichnis,style=symbols, type=symbols]
\end{document}
%
Vielen Dank schonmal :)

Nach oben