PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Glossaries Einzug/Zeilenabstand



suell
18-11-2012, 08:13
Hallo,
ich benutze für mein Abkürzungs- und Symbolverzeichnis das glossaries Paket.
Jetzt habe ich ich allerdings noch Formatierungsfragen.

Beim Symbolverzeichnis habe ich es schon hinbekommen/zusammenkopiert, dass der Einzug links bei einem gewählten Wert startet. Hier fängt der Text jedoch zu weit unten von der Überschrift an. Das ganze soll ein bisschen höher sein, damit der Abstand gleich mit dem vom Abkürzungsverzeichnis ist (1,6cm).

Beim Abkürzungsverzeichnis ist der Abstand zur Übrschrift gut,


hier soll der Einzug nach links ein bisschen vergrößert werden, sodass er bündig mit der mit den anderen Verzeichnissen (nicht im Code) anfängt. Von daher wäre es gut, wenn ich den Abstand auch auf 0,5cm setzen könnte
das zitat oben hat sich durch änderung des styles erledigt.

Wäre nett, wenn mir da wer weiterhelfen könnte. In der Dokumentation habe ich als Latexanfänger nichts gefunden, was mir weiterhelfen könnte.
Viele Grüße




\documentclass[a4paper,12pt,bibliography=totoc,listof=totoc]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{setspace}
\onehalfspacing


%%%%%%%%%%%%%%%%%%%%%%%%%%%%Glossar%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage[acronym, toc,nonumberlist]{glossaries}

%Ein Symbolverzeichnis erstellen
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis}


\newenvironment{linksabk}
{\begin{list}{}{\setlength{\leftmargin}{30pt}}}
{\end{list}}

%eigenen glossaries style für abkürzungsverzeichnis definieren
\newglossarystyle{superAA}{% %
\glossarystyle{super}% % base this style on the list style
\renewcommand{\glsgroupskip}{}% % make nothing happen between groups
\newcommand*{\myglossaryindent}{0.5cm}% linker Seitenabstand symbolverzeichnis %symbolverzeichnis nach links einrücken --------------------
\renewenvironment{theglossary}%
{\begin{longtable}[l]{@{\hspace{\myglossaryindent}}lp{\glsdescwidth}ccc p{\glspagelistwidth}@{}}}%
{\end{longtable}%
}}

%eigenen glossaries style für symbolverzeichnis definieren
\newglossarystyle{superAB}{%
\glossarystyle{super}%
\newcommand*{\myglossaryindent}{0.5cm}% linker Seitenabstand symbolverzeichnis %symbolverzeichnis nach links einrücken --------------------
\renewenvironment{theglossary}%
{\begin{longtable}[l]{@{\hspace{\myglossaryindent}}lp{\glsdescwidth}ccc p{\glspagelistwidth}@{}}}%
{\end{longtable}%
}%
\renewcommand*{\glossaryentryfield}[3]{%
\glstarget{##1}\\{##2}&{##3}}% \\[0.5cm] Zeilenabstand zwischen Einträgen
\renewcommand*{\glossarysubentryfield}[6]{%
\glossaryentryfield{##2}{##3}{##4}{##5}}%
}%
%symbolverzeichnis nach links einrücken Ende--------------------------------------------------



%Den Punkt am Ende jeder Beschreibung deaktivieren
\renewcommand*{\glspostdescription}{}


\newglossaryentry{AA}{name={\textbf{\rlap{Symbole 1}}},sort = A, description={}} %trennt Symbolverzeichnis in Symbol
\newglossaryentry{BB}{name={\textbf{\rlap{Symbole 2}}}, sort = B,description={}} %


%Glossar-Befehle anschalten
\makeglossaries



\begin{document}

%Abkürzungen
\newacronym{lt}{LT}{Wiederbeschaffungszeit}
\newacronym{EDV}{EDV}{elektronische Datenverarbeitung}

%Symbole 2
\newglossaryentry{symb:aa}{name=\ensuremath{AA}, description={AAAA}, parent=Ernst, sort=AA, parent=AA, type=symbolslist}
\newglossaryentry{symb:ab}{name=\ensuremath{aaa},d escription={aaaaaa}, parent=AA, sort=AA, type=symbolslist}

%Symbole 2
\newglossaryentry{symb:BB}{name=\ensuremath{BB},de scription={BBBBBBBBBBBBBBB BBBBBBBBBBB}, parent=BB, sort=symbolB, type=symbolslist}
\newglossaryentry{symb:bb}{name=\ensuremath{bbbb}, description={bbbbbbbbbbbbbbbb bbbbbbbbn},parent=BB, sort=symbolbbb, type=symbolslist}

\printglossary[type=\acronymtype, style = superAA] %Abkürzungsverzeichnis | style super AA verwenden, basiert auf super.
\printglossary[type=symbolslist, style = superAB] %Symbolverzeichnis

%Text zum erzeugen der Verzeichnisse
\newpage
\chapter{Test}
test \gls{lt} und \gls{EDV} und \gls{symb:BB} sowie \gls{symb:bb} auch \gls{symb:aa} und \gls{symb:ab} Ende.
\end{document}

bobmalaria
18-11-2012, 12:07
hi,

kannst du deinen code bitte so ändern das er nicht in der php-code umgebung ist sondern in der normalen code umgebung (#-zeichen). der php-coe button schneidet nämlich alle \ ab und somit kann man deinen code nicht testen.

ich denke das problem liegt daran, dass deine eiden styles leicht unterschiedlich sind und es soit auch zu leicht anderen ergebnissen kommt. in der style definition empfehle ich auch jede zeile explizit mit einem % zu beenden, sonst kommt es zu ungewünschten abständen


gruss

suell
18-11-2012, 14:32
Hallo,


Also ich habe oben den Code angepasst. Ich dachte in php sieht man die Kommentare besser, aber ohne / ists natürlich blöd.

Weiter habe ich die Styles nochmal angepasst (hat vorher komischerweise nie geklappt).
Style superAA ist jetzt genau wie Style superAB, bis auf das superAA noch ein glsgroupskip mit drin hat.

Der Einzug vom Ablürzungsverzeichnis stimmt also jetzt schon durch die Anpassung.

So wie es mir scheint, ist in Style superAB für das Symbolverzeichnis der Abstand zur Überschrift nicht korrekt, weil hier vor den Symbolen noch ein Abstand für die Gruppe eingefügt wird. Nutze ich hier Style super AA mit glsgroupskip, passt der Abstand.

Nur fehlt mir dann im Symbolverzeichnis halt der Abstanb zwischen den beiden Symbolgruppen.

Hast du da noch eine Idee, wie ich also entwededer mit glsgriupskip den Abstand zur Überschrift verkleinern kann oder ohne grouskip einen Abstand zwischen die Gruppen bekomme - oder natürlich jede andere Verbesserung.

Viele Grüße
suell

bobmalaria
18-11-2012, 16:40
hi,

der extra abstand kommt aus dieser zeile


\glstarget{##1}\\{##2}&{##3}}% \\[0.5cm] Zeilenabstand zwischen Einträgen

kommentier mal das aus und du siehst das die höhe passt.

ein bisschen komisch finde ich, dass du per \glossarystyle{super}% eigentlich einen stil lädst der auf supertabular basiert und diesen dann aber komplett mit longtable umdefinierst.

ich würde einfach eigene stile basierend auf longtale erstellen die das machen was du möchtest. schau mal ob das mehr deinen wünschen eintspricht


\documentclass[a4paper,12pt,bibliography=totoc,listof=totoc]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{setspace}
\onehalfspacing


%%%%%%%%%%%%%%%%%%%%%%%%%%%%Glossar%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage[acronym, toc,nonumberlist]{glossaries}

%Ein Symbolverzeichnis erstellen
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis}


%eigenen glossaries style für abkürzungsverzeichnis definieren
\newglossarystyle{superAA}{% %
\glossarystyle{long}% % base this style on the list style
\renewcommand{\glsgroupskip}{}% % make nothing happen between groups
\newcommand*{\myglossaryindent}{0.5cm}% linker Seitenabstand symbolverzeichnis %symbolverzeichnis nach links einrücken --------------------
\renewenvironment{theglossary}%
{\begin{longtable}[l]{@{\hspace{\myglossaryindent}}lp{\glsdescwidth}ccc p{\glspagelistwidth}@{}}}%
{\end{longtable}%
}
}

%eigenen glossaries style für symbolverzeichnis definieren
\newglossarystyle{superAB}{%
\glossarystyle{long}%
\newcommand*{\myglossaryindent}{0.5cm}% linker Seitenabstand symbolverzeichnis %symbolverzeichnis nach links einrücken --------------------
\renewenvironment{theglossary}
{%
\begin{longtable}[l]{@{\hspace{\myglossaryindent}}lp{\glsdescwidth}}%
}%
%
{\end{longtable}%
}
%\renewcommand*{\glossaryentryfield}[3]{%
%\glsentryitem{##1}\glstarget{##1}{##2} & ##3\glspostdescription\\}
\renewcommand*{\glossarysubentryfield}[6]{%
\glssubentryitem{##2}\glstarget{##2}{\strut}##4\gl spostdescription&\\}
}%
%symbolverzeichnis nach links einrücken Ende--------------------------------------------------



%Den Punkt am Ende jeder Beschreibung deaktivieren
\renewcommand*{\glspostdescription}{}


\newglossaryentry{AA}{name={\textbf{Symbols 1}},sort = A, description={\nopostdesc}} %trennt Symbolverzeichnis in Symbol
\newglossaryentry{BB}{name={\textbf{Symbols 2}}, sort = B,description={\nopostdesc}} %


%Glossar-Befehle anschalten
\makeglossaries



\begin{document}

%Abkürzungen
\newacronym{lt}{LT}{Wiederbeschaffungszeit}
\newacronym{EDV}{EDV}{elektronische Datenverarbeitung}

%Symbole 2
\newglossaryentry{symb:aa}{name=\ensuremath{AA}, description={AAAA}, sort=AA, parent=AA, type=symbolslist}
\newglossaryentry{symb:ab}{name=\ensuremath{aaa},d escription={aaaaaa}, parent=AA, sort=AA, type=symbolslist}

%Symbole 2
\newglossaryentry{symb:BB}{name=\ensuremath{BB},de scription={BBBBBBBBBBBBBBB BBBBBBBBBBB}, parent=BB, sort=symbolB, type=symbolslist}
\newglossaryentry{symb:bb}{name=\ensuremath{bbbb}, description={bbbbbbbbbbbbbbbb bbbbbbbbn},parent=BB, sort=symbolbbb, type=symbolslist}

\printglossary[type=\acronymtype, style=superAA] %Abkürzungsverzeichnis | style super AA verwenden, basiert auf super.
\printglossary[type=symbolslist, style=superAB] %Symbolverzeichnis

%Text zum erzeugen der Verzeichnisse
\newpage
\chapter{Test}
test \gls{lt} und \gls{EDV} und \gls{symb:BB} sowie \gls{symb:bb} auch \gls{symb:aa} und \gls{symb:ab} Ende.
\end{document}

suell
18-11-2012, 18:11
Hey,
ja so sieht aus vom Abstand gut aus. Aber leider werden so die Symbole nicht mehr angezeigt, sondern nur noch die Beschreibung. Woran liegt das denn jetz schon wieder - ahhh.


ein bisschen komisch finde ich, dass du per \glossarystyle{super}% eigentlich einen stil lädst der auf supertabular basiert und diesen dann aber komplett mit longtable umdefinierst.

Hehe, ich als Latexanfänger hab erstmal den estbesten Style genommen, der mir gefallen hat. Später hab ich dann festgestellt, was alles nicht passt und das dann versucht wieder abzuändern.


ich würde einfach eigene stile basierend auf longtale erstellen die das machen was du möchtest.
leichter gesagt als getan :). Also so wie oben gefällt es mir gut. Nur das Symbol müsste wieder mit rein ;),. Kannst du mir da nochmal helfen?

Schönen Gruß
suell

bobmalaria
18-11-2012, 20:41
kleiner konstruktionsfehler


\renewcommand*{\glossarysubentryfield}[6]{%
##3 & \glssubentryitem{##2}\glstarget{##2}{\strut}##4\gl spostdescription\\}
}%

so passt es, oder?

suell
18-11-2012, 21:08
Ah ja, perfekt.
Vielen Dank!