Anzeige:
Ergebnis 1 bis 10 von 10

Thema: glossaries kleinerer Zeilenabstand

  1. #1
    Registrierter Benutzer
    Registriert seit
    30.01.2009
    Beiträge
    115

    glossaries kleinerer Zeilenabstand

    Hallo, ich möchte den Zeilenabstand zwischen den Einträgen der Glossaries verkleinern; auf normalen einfachen Zeilenabstand oder 1.5 fachen Abstand. Die Lösung von dem Thread http://mrunix.de/forums/showthread.php?t=60540 funktioniert in diesem Fall leider nicht. Die Frage ist eine Erweiterung von http://mrunix.de/forums/showthread.php?t=67329

    Möchte ich den Abstand mit
    Code:
    %\renewenvironment{theglossary}%
    %{\begin{longtable}{llp{\glsdescwidth}}}%
    %{\end{longtable}}%
    ändern bekomme ich eine Fehlermeldung.

    Ein Minimalbeispiel:
    Code:
    \documentclass[a4paper,bibtotoc,oneside,fleqn]{scrbook} 
    \usepackage[ansinew]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage[english]{babel}
    \usepackage[acronym, toc] {glossaries}
    \usepackage{enumitem}
    
    
    %definition für Inhlatsverzeichnis
    
    \newglossarystyle{compact}{%
    \glossarystyle{list}%,
    % Hier liegt irgendwo der Fehler, eventuell braucht es eine andere Definition
    %\renewenvironment{theglossary}%
    %{\begin{longtable}{llp{\glsdescwidth}}}%
    %{\end{longtable}}%
    \setlength{\glslistdottedwidth}{.15\hsize}
    \renewcommand*{\glossaryentryfield}[5]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##1}{##2}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\strut}%
    \parbox[t]{\textwidth-\glslistdottedwidth-\labelsep}{##3}}%
    \renewcommand*{\glossarysubentryfield}[6]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##2}{##3}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\\strut}##4}% 
    
    }
    
    
    \newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis}
    \newglossary[flg]{formulas}{fyi}{fyg}{Formelverzeichnis}
    
    \newglossaryentry{glos:AW}{name=Answer, description={This is an answer}}
    \newglossaryentry{symb:Pi}{name=$\pi$,description={This is Pi},sort=symbolpi, type=symbolslist}
    \newacronym[description={Blabla}]{CD}{CD}{Compact Disc}
    
    \makeglossaries
    
    \begin{document}
    
    \gls{glos:AW}\\ \gls{symb:Pi}\\ \gls{CD}\\ 
    
    \printglossary[type=\acronymtype,title=Abbreviations, style=compact]
    \printglossary[type=symbolslist,title=Symbols, style=compact]
    \printglossary[style=altlist,title=Glossary, style=compact]
    
    \end{document}
    Ich bin für jeden Hinweis dankbar!

    BG C

  2. #2
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Hi,

    Auszug:
    Code:
    \usepackage{setspace}
    
    %definition für Inhlatsverzeichnis
    
    \newglossarystyle{compact}{%
    \singlespacing
    \glossarystyle{list}%,
    \setlength{\glslistdottedwidth}{.15\hsize}
    \renewcommand*{\glossaryentryfield}[5]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##1}{##2}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\strut}%
    \parbox[t]{\textwidth-\glslistdottedwidth-\labelsep}{##3}}%
    \renewcommand*{\glossarysubentryfield}[6]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##2}{##3}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\\strut}##4}% 
    }
    oder meinst du den Abstand zwischen den einzelnen Einträgen? Dann schaue dir mal an, wie man die Abstände in einer Liste verkleinert. (itemize beispielsweise)

    Gruß
    Marco

  3. #3
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    \glossarystyle{list} wird ja wohl auf einer Liste (description) beruhen, und die \item-Befehle sind auch Listen-Befehle. Da ist es nicht so sinnvoll plötzlich eine longtable drumherum zu packen. Du suchst wohl eher so was:

    Code:
    \newglossarystyle{compact}{%
    \glossarystyle{list}%,
      \renewenvironment{theglossary}%
        {\begin{description}[nolistsep]}{\end{description}}%
    }

  4. #4
    Registrierter Benutzer
    Registriert seit
    30.01.2009
    Beiträge
    115
    Danke für die Antworten! Ich habe jetzt 3 Möglichkeiten ausprobiert aber keine davon funktioniert.
    (Ja, ich meine den Abstand zwischen den einzelnen Einträgen)

    1. Möglichkeit:

    Code:
    \newglossarystyle{compact}{%
    \glossarystyle{list}%,
     %Versuch mittels Environment
      \renewenvironment{theglossary}%
        {\begin{description}[nolistsep]}{\end{description}}%
    \setlength{\glslistdottedwidth}{.15\hsize}
    \renewcommand*{\glossaryentryfield}[5]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##1}{##2}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\strut}%
    \parbox[t]{\textwidth-\glslistdottedwidth-\labelsep}{##3}}%
    \renewcommand*{\glossarysubentryfield}[6]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##2}{##3}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\\strut}##4}% 
    }
    2. Möglichkeit mittels Gruppierung:

    Code:
    \begingroup
    \renewcommand*\arraystretch{0.5}
    \printglossary[type=\acronymtype,title=Abbreviations, style=compact]
    \printglossary[type=symbolslist,title=Symbols, style=compact]
    \printglossary[style=altlist,title=Glossary, style=compact]
    \endgroup
    3. Möglichkeit mittels Itemize:

    Code:
    \newglossarystyle{compact}{%
    \glossarystyle{list}%,
     %Versuch mittels Itemize
      \renewenvironment{theglossary}%
        {\begin{itemize}[nolistsep]}{\end{itemize}}%
    \setlength{\glslistdottedwidth}{.15\hsize}
    \renewcommand*{\glossaryentryfield}[5]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##1}{##2}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\strut}%
    \parbox[t]{\textwidth-\glslistdottedwidth-\labelsep}{##3}}%
    \renewcommand*{\glossarysubentryfield}[6]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##2}{##3}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\\strut}##4}% 
    }
    Wisst Ihr was ich da falsch mache? Ich habe jetzt keinen Lösungsansatz mehr.

    BG C

  5. #5
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Wenn du uns verraten würdest, was "keine funktioniert" bedeutet... Ich habe deinen Code unter 1. in das Minimalbeispiel eingebaut und keine Probleme.

  6. #6
    Registrierter Benutzer
    Registriert seit
    30.01.2009
    Beiträge
    115
    Ok, also ich habe es so probiert und bekomme Fehlermeldungen. Irgendwas stimme mit dem setentrycounter nicht.

    Code:
    \documentclass[a4paper,bibtotoc,oneside,fleqn]{scrbook} 
    \usepackage[ansinew]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage[english]{babel}
    \usepackage[acronym, toc] {glossaries}
    \usepackage{setspace}
    
    
    \newglossarystyle{compact}{%
    \glossarystyle{list}%,
     Versuch mittels Environment
      \renewenvironment{theglossary}%
        {\begin{description}[nolistsep]}{\end{description}}%\setlength{\glslistdottedwidth}{.15\hsize}
    \renewcommand*{\glossaryentryfield}[5]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##1}{##2}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\strut}%
    \parbox[t]{\textwidth-\glslistdottedwidth-\labelsep}{##3}}%
    \renewcommand*{\glossarysubentryfield}[6]{%
    \item[]\makebox[\glslistdottedwidth][l]{\glstarget{##2}{##3}%
    \unskip\qquad\hbox to 1.375mm{\hss}\hfill~\\strut}##4}% 
    }
    
    
    \newglossary[slg]{symbolslist}{syi}{syg}{Symbolverzeichnis}
    \newglossary[flg]{formulas}{fyi}{fyg}{Formelverzeichnis}
    
    \newglossaryentry{glos:AW}{name=Answer, description={This is an answer}}
    \newglossaryentry{glos:A2}{name=Answer2, description={This is another answer}}
    \newglossaryentry{symb:Pi}{name=$\pi$,description={This is Pi},sort=symbolpi, type=symbolslist}
    \newglossaryentry{symb:Phi}{name=$\phi$,description={This is Phi},sort=symbolphi, type=symbolslist}
    \newacronym[description={A compact disc is...}]{CD}{CD}{Compact Disc}
    \newacronym[description={A DVD is...}]{DVD}{DVD}{DVD}
    
    
    
    
    \makeglossaries
    
    \begin{document}
    
    \gls{glos:AW}\\ \gls{symb:Pi}\\ \gls{CD}\\ \gls{glos:A2} \\ \gls{symb:Phi} \\ \gls{DVD}
    
    \printglossary[type=\acronymtype,title=Abbreviations, style=compact]
    \printglossary[type=symbolslist,title=Symbols, style=compact]
    \printglossary[style=altlist,title=Glossary, style=compact]
    
    
    \end{document}
    BG C

  7. #7
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Naja, enumitem solltest du schon laden, wenn du [nolistsep] verwenden willst.

    Der Code \renewcommand*{\glossaryentryfield}[5]{ ... funktioniert übrigens nicht richtig. Warum hast du den eingefügt?

  8. #8
    Registrierter Benutzer Avatar von lockstep
    Registriert seit
    31.08.2008
    Beiträge
    1.487
    Zitat Zitat von u_fischer Beitrag anzeigen
    Naja, enumitem solltest du schon laden, wenn du [nolistsep] verwenden willst.
    Der zusätzliche Witz dabei ist, dass in der Präambel des ursprünglichen Beispiels \usepackage{enumitem} enthalten war. Wenn in der Folge zusätzliche Codeschnipsel gepostet werden, nimmt man als HelferIn zunächst nicht an, dass gleichzeitig in der Präambel genau eine Zeile (die entscheidende) gestrichen wurde.

    lockstep
    idxlayout - Konfigurierbares Index-Layout, kompatibel mit KOMA-Script und memoir

  9. #9
    Registrierter Benutzer
    Registriert seit
    30.01.2009
    Beiträge
    115
    Das heißt die fehlerhafte Darstellung liegt an dem glossaryentry{5 . Aber was ist daran falsch. Ich verstehe diese Definitionen nicht wirklich.

    BG C

  10. #10
    Registrierter Benutzer
    Registriert seit
    26.11.2009
    Beiträge
    13

    Arrow Mein Lösungsvorschlag

    Habedere!
    ich habs so versucht - dort wo die Glossareinträge erscheinen sollen, einfach das spacing verändert:
    Code:
    \begin{spacing}{1}			% Inhaltsverzeichnis etc. nicht mit erhöhtem Zeilenabstand setzen
    	\cleardoublepage		% Seitenzähler zurücksetzen
    	\pagenumbering{Roman}	% mit römischen Zahlen durchnummerieren
    	\include{chapters/vorspann} % Erklärung, Danksagung
    	\tableofcontents% Inhaltsverzeichnis einfügen
    	\renewcommand{\glossaryname}{Glossar}% Deutscher Titel ;)
    	\printglossary[style = long3col]% Glossarverzeichnis einfügen
    	\setlength{\glspagelistwidth}{0cm}		% Für Symbolverzeichnis keine Seitenzahlen,...
    	\setlength{\glsdescwidth}{0.75\hsize}	% ...dafür breitere Beschreibung
    	\printglossary[nonumberlist, type=symbols, style=altsuper4col]% Symbolverzeichnis einfügen
    	\printglossary[nonumberlist, type=acronyms, style=long3col]% Abkürzungsverzeichnis einfügen
    \end{spacing}
    Des wars schon - nimm Dir einfach was du brauchst (\begin{spacing}{1} ... \end{spacing}

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •