Anzeige:
Ergebnis 1 bis 14 von 14

Thema: Verzweifele bei glossaries-layout..

  1. #1
    Registrierter Benutzer
    Registriert seit
    28.07.2010
    Beiträge
    12

    Unhappy Verzweifele bei glossaries-layout..

    Hallo zusammen,

    ich muss ein Akronymverzeichnis erstellen, welches dasselbe Format haben soll, wie mein mit makeindex erstelltes Stichwortverzeichnis, und zwar wie folgt:

    A%(mittig über dem Text)

    Abb.....Abbildung
    Abk.....Akkürzung

    und das Ganze soll in 2 Spalten passieren; also daneben dasselbe nochmal.

    Ich habe nach viel Lektüre festgestellt, dass glossaries wohl das mächtigste package ist; leider komme ich mit den Anpassungen überhaupt nicht klar.
    Schon allein an den 2 Spalten scheitere ich komplett; hatte schon versucht, vor dem
    \printglossary[title=Akronymverzeichnis]
    ein
    \twocolumn
    einzufügen, das bringt aber leider nichts. Und die Spaltenoptionen, die in die im longtabel-style in der Dokumentation des glossaries package genannt werden, beziehen sich nur auf die Teile des Eintrages, also bspw. die Abkürzung, das Ausformulierte, oder die Seitenzahl.

    Kann jemand helfen - ich bin echt verzweifelt..

    DANKE!

    Minimalbeispiel:

    \documentclass[%jede Menge Pakete
    ]{scrreprt}
    \usepackage{makeidx}
    \usepackage[nonumberlist,acronym]{glossaries}

    \makeglossary
    \makeindex

    \newglossaryentry{Abk}{name={Abk}, description={Abkürzung}}

    \begin{document}
    Das ist ein Text mit Abk.\gls{Abk}

    \printglossary[title=Akronymverzeichnis%style=????
    ]
    \end{document}

  2. #2
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    hi,

    ungetestet

    style=indexgroup

    gruss
    Mein Ball ist umgefallen

  3. #3
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    longtable funktioniert nicht mit \twocolumn, d.h. du solltest alle Stile mit "long" ignorieren. supertable kann funktionieren, aber Stile, die auf Listen basieren, müssten eigentlich am besten gehen.

  4. #4
    Registrierter Benutzer
    Registriert seit
    28.07.2010
    Beiträge
    12
    @bobmalaria
    Spannend. 2-Spaltig ist es nicht, sondern linksbündig (oder könnte es daran liegen,d ass einige Einträge sehr lang sind und Latex keinen automatischen Zeilenumbruch macht??) Und die Buchstaben stehen oben drüber, aber nicht mittig; ausserdem sind die Abkürzungen fett (was die Stichworte im Inhaltsverzeichnis nicht sind); ausserdem fehlen noch die Punkte zwischen Abkürzungen und ausgeschriebenen Begriffen :-(

    War aber immerhin ein kleiner Fortschritt; kann ich den Rest irgendwie übergeben als Argumente?

  5. #5
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    hi,

    du hast immer noch die möglichkeit deinen eigenen stil zu erstellen. alle tests kann ich nicht machen weil ich ja deine einträge nicht habe. die müsstest du dann mal noch hier posten wenn nachfolgendes nicht funktioniert

    Code:
    \documentclass{scrreprt}
    \usepackage[T1]{fontenc}
    \usepackage[latin1]{inputenc}
    
    \usepackage[nonumberlist,acronym]{glossaries}
    \usepackage{multicol}
    
    \makeglossary
    
    
    
    \newglossaryentry{Abk}{name={Abk}, description={Abkürzung}}
    
    \begin{document}
    Das ist ein Text mit Abk.\gls{Abk}
    
    \makeatletter
    \newglossarystyle{myindex}{%
      \renewenvironment{theglossary}%
        {\setlength{\parindent}{0pt}%
         \setlength{\parskip}{0pt plus 0.3pt}%
         \let\item\@idxitem}%
        {}%
      \renewcommand*{\glossaryheader}{}%
      \renewcommand*{\glsgroupheading}[1]{}%
    \renewcommand*{\glossaryentryfield}[5]{%
    \item\glstarget{##1}{##2}%
      \ifx\relax##4\relax
      \else
        \space(##4)%
      \fi
      \dotfill ##3\glspostdescription \space ##5}%
      \renewcommand*{\glossarysubentryfield}[6]{%
        \ifcase##1\relax
          % level 0
          \item
        \or
          % level 1
          \subitem
        \else
          % all other levels
          \subsubitem
        \fi
        \glstarget{##2}{##3}%
        \ifx\relax##5\relax
        \else
          \space(##5)%
        \fi
        \space##4\glspostdescription\space ##6}%
      \renewcommand*{\glsgroupskip}{\indexspace}
        \renewcommand*{\glsgroupheading}[1]{%
        \item\textbf{\glsgetgrouptitle{##1}}\indexspace}%
      }
      \makeatother
    
    \twocolumn
    \printglossary[title=Akronymverzeichnis,style=myindex]
    
    \end{document}
    Mein Ball ist umgefallen

  6. #6
    Registrierter Benutzer
    Registriert seit
    28.07.2010
    Beiträge
    12
    @bobmalaria

    FUNKTIONIERT PERFEKT!!!
    VIELEN VIELEN DANK!!

    DU GLAUBST GAR NICHT; WIE VIELE STUNDEN ICH DARAN RUMPROBIERT HABE!!

    :-)))))

  7. #7
    Registrierter Benutzer
    Registriert seit
    28.07.2010
    Beiträge
    12
    Hmm... bin immernoch total begeistert - 2 kleine Problemchen gibts aber noch; vielleicht hast Du eine schnelle Lösung parat?
    Die Buchstaben in fett stehen nicht mittig über den dazugehörigen Einträgen, sondern linksbündig und jede Erklärung einer Abkürzung endet mit einem Punkt. den ich gerne noch loswerden würde.

  8. #8
    Registrierter Benutzer
    Registriert seit
    19.03.2009
    Beiträge
    180
    Den Punkt kriegst Du so weg:

    Code:
    \renewcommand*{\glspostdescription}{}% den Punkt am Ende der Beschreibung im Verzeichnis weglassen

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

    Code:
    \documentclass{scrreprt}
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}
    
    \usepackage[nonumberlist,acronym]{glossaries}
    \usepackage{multicol}
    
    \makeglossary
    
    
    
    \newglossaryentry{Abk}{name={Abk}, description={Abkürzung}}
    
    \begin{document}
    Das ist ein Text mit Abk.\gls{Abk}
    
    \makeatletter
    \newglossarystyle{myindex}{%
      \renewenvironment{theglossary}%
        {\setlength{\parindent}{0pt}%
         \setlength{\parskip}{0pt plus 0.3pt}%
         \let\item\@idxitem}%
        {}%
        \renewcommand*{\glspostdescription}{}
      \renewcommand*{\glossaryheader}{}%
      \renewcommand*{\glsgroupheading}[1]{}%
    \renewcommand*{\glossaryentryfield}[5]{%
    \item\glstarget{##1}{##2}%
      \ifx\relax##4\relax
      \else
        \space(##4)%
      \fi
      \dotfill ##3\glspostdescription \space ##5}%
      \renewcommand*{\glossarysubentryfield}[6]{%
        \ifcase##1\relax
          % level 0
          \item
        \or
          % level 1
          \subitem
        \else
          % all other levels
          \subsubitem
        \fi
        \glstarget{##2}{##3}%
        \ifx\relax##5\relax
        \else
          \space(##5)%
        \fi
        \space##4\glspostdescription\space ##6}%
      \renewcommand*{\glsgroupskip}{\indexspace}
        \renewcommand*{\glsgroupheading}[1]{%
        \item\hfil\textbf{\glsgetgrouptitle{##1}}\indexspace}%
      }
      \makeatother
    
    \twocolumn
    \printglossary[title=Akronymverzeichnis,style=myindex]
    
    \end{document}
    Gruß
    Marco

  10. #10
    Registrierter Benutzer
    Registriert seit
    28.07.2010
    Beiträge
    12
    Funktioniert super. Vielen Dank!

  11. #11
    Registrierter Benutzer
    Registriert seit
    28.07.2010
    Beiträge
    12
    Ich hab noch eine Frage zu dem selbst-definierten glossaries-style:

    Wie kann ich erreichen, dass - sollte es bei der Description einen Zeilenumbruch geben - die 2. Zeile unter der ersten anfängt? Bei mit ist das immer nach links verschoben.

    Code steht ja noch oben, hier ein Beispiel zur Verdeutlichung des Problems:
    EDGE . . . . . Enhanced Data Rates for GSM
    ~~~~~~~Evolution %die ~ sind nicht da; ich habs hier nur genutzt um die Einrückung zu erreichen, damit ihr wisst, was das Problem ist

    Es wäre schön, wenn "Evolution" unter "Enhanced" anfangen würde.

    Hat jemand einen heißen Tipp, wie ich das erreichen kann? Die glossaries-Dokumentation hat mir leider nicht weitergeholfen.

    Vielen Dank.

  12. #12
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Zitat Zitat von wasserfrauchen Beitrag anzeigen
    Code steht ja noch oben, hier ein Beispiel zur Verdeutlichung des Problems:
    EDGE . . . . . Enhanced Data Rates for GSM
    ~~~~~~~Evolution %die ~ sind nicht da; ich habs hier nur genutzt um die Einrückung zu erreichen, damit ihr wisst, was das Problem ist
    Das Beispiel oben zeigt aber nicht dein Problem. Der Sinn und Zweck ist schließlich, dass wir den Code kopieren, kompilieren und dein Problem sehen.
    Code:
    \documentclass{scrreprt}
    \usepackage[T1]{fontenc}
    \usepackage[latin1]{inputenc}
    \usepackage{ragged2e}
    \usepackage[nonumberlist,acronym]{glossaries}
    %\usepackage{multicol}
    
    \makeglossary
    
    \usepackage{showframe}
    
    \newglossaryentry{Abk}{name={Abk}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{B}{name={B}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{C}{name={C}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{D}{name={D}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{E}{name={E}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{F}{name={F}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{G}{name={G}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{H}{name={H}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{I}{name={I}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{J}{name={J}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{K}{name={K}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{L}{name={L}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{M}{name={M}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    \newglossaryentry{N}{name={N}, description={Abkürzung die sehr lang ist und vermutlich über mehrere Zeilen geht}}
    
    \glsaddall
    \begin{document}
    Das ist ein Text mit Abk.\gls{Abk}
    
    \makeatletter
    \newglossarystyle{myindex}{%
      \renewenvironment{theglossary}%
        {\setlength{\parindent}{0pt}%
         \setlength{\parskip}{0pt plus 0.3pt}%
         \let\item\@idxitem}%
        {}%
        \renewcommand*{\glspostdescription}{}
      \renewcommand*{\glossaryheader}{}%
      \renewcommand*{\glsgroupheading}[1]{}%
    \renewcommand*{\glossaryentryfield}[5]{%
    \item\glstarget{##1}{##2}%
      \ifx\relax##4\relax
      \else
        \space(##4)%
      \fi
      \dotfill\parbox[t]{0.7\linewidth}{ ##3}\glspostdescription \space ##5}%
      \renewcommand*{\glossarysubentryfield}[6]{%
        \ifcase##1\relax
          % level 0
          \item
        \or
          % level 1
          \subitem
        \else
          % all other levels
          \subsubitem
        \fi
        \glstarget{##2}{##3}%
        \ifx\relax##5\relax
        \else
          \space(##5)%
        \fi
        \space##4\glspostdescription\space ##6}%
      \renewcommand*{\glsgroupskip}{\indexspace}
        \renewcommand*{\glsgroupheading}[1]{%
        \item\hfil\textbf{\glsgetgrouptitle{##1}}\indexspace}%
      }
      \makeatother
    
    \twocolumn
    \printglossary[title=Akronymverzeichnis,style=myindex]
    
    \end{document}
    Gruß
    Marco

  13. #13
    Registrierter Benutzer
    Registriert seit
    28.07.2010
    Beiträge
    12
    Dankeschön :-)

    Spannender Weise ändert sich so auch der Abstand zwischen 2 Einträgen. Resultat ist, dass wenn ein Eintrag jetzt über 2 Zeilen geht, optisch in den darunter liegenden rutscht. Gibt es eine Möglichkeit, den Zeilenabstand zwischen 2 Einträgen einer Gruppe zu ändern?

    Diese Lösungen
    http://www.mrunix.de/forums/archive/...p/t-67334.html
    http://mrunix.de/forums/showthread.php?t=60540

    bringen leider nichts.

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

    ich habe dich ehrlich gesagt nicht verstanden. Bevor ich hier irgendwelche Ratevorgänge starte, erstelle bitte selbst ein Minimalbeispiel, was dein Problem zeigt.

Lesezeichen

Berechtigungen

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