Glossaries, Probleme bei Änderung der Verzeichniseinträge

Erstellen von Index, Glossar, Symbolverzeichnis, einer Nomenklatur etc. mit MakeIndex oder Xindy


Marvin_123
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Sa 1. Dez 2018, 15:30

Glossaries, Probleme bei Änderung der Verzeichniseinträge

Beitrag von Marvin_123 »

Hallo Forumsmitglieder,

ich schreibe zur Zeit meine Bachelorarbeit und habe mich entschieden Latex zu nutzen. Momentan versuche ich, ein Dokument aufzubauen und benötige in diesem ein Symbol- und Abkürzungsverzeichnis. In einem englischsprachigem Forum habe ich eine schöne Vorlage für ein Symbolverzeichnis gefunden, welche das Paket Glossaries nutzt. Es funktioniert auch soweit ganz gut, nur habe ich ein Problem festgestellt.

Problem:
Wenn man sich Einträge für das Symbolverzeichnis definiert hat und den Befehl " \glsaddall " nutzt, funktionert alles und man erhält das Symbolverzeichnis mit allen Einträgen.
Wenn man nun den Befehl "/glsaddall" auskommentiert und wieder alles kompiliert, steht das Symbolverzeichnis immer noch in der Datei und dass sollte, soweit ich das verstehe, nicht der Fall sein.

Ich konnte das Problem auf den selbst erstellten Stil eingrenzen, auf Grund fehlender Latex Kenntnisse konnte ich leider noch keine Lösung erarbeiten.
Zur Zeit lösche ich jedes mal die Einträge der drei Datein mit den Endungen ( .slg, .syg, .syi) und erhalte dadurch eine leere Seite ohne Symbolverzeichnis nach erneutem kompilieren mit auskommentierten "\glsaddall".

Frage:
Hat jemand in diesem Forum schon einmal ein ähnliches Problem und wenn ja, wie hat derjenige das Problem gelöst?

Vielleicht gibt es auch einen besseren Weg, um ein 3 spaltiges Symbolverzeichnis mit glossarie zu erstellen. Ich bin für jede Hilfe dankbar.


Ich gebe ein Minimalbeispiel mit dazu, damit das Problem verständlicher wird. Ich kann auch den Link zu dem Englischsprachigem Forum einstellen, wenn das in diesem Forum erlaubt ist.


Minimalbeispiel

Code: Alles auswählen

\documentclass{article}
\usepackage{siunitx}

\usepackage[nomain]{glossaries}              % use glossaries-package
\usepackage{glossary-longbooktabs}

\newglossary[slg]{unitlist}{syi}{syg}{Verzeichnis der Kurzzeichen} % create add. symbolslist
\glsaddkey{unit}{\glsentrytext{\glslabel}}{\glsentryunit}{\GLsentryunit}{\glsunit}{\Glsunit}{\GLSunit}
\makeglossaries                                   % activate glossaries-package

%===================================================================
%Einträge Einheitenverzeichnis
%===================================================================
\glsnoexpandfields							
   \newglossaryentry{m}{name=\ensuremath{m},
    description={Meter},
    unit={\si{m}},
    type=unitlist}

 \newglossaryentry{sqkm}{
    name=\ensuremath{A},
    description={Quadratkilometer Quadratkilometer Quadratkilometer Quadratkilometer      	Quadratkilometer},
    unit={\si{\square\kilo\metre}},
    type=unitlist}

%===================================================================
%Stilvorlage
%===================================================================

\newglossarystyle{3colger}{%
    \setglossarystyle{longragged3col}% base this style on the list style
    \renewenvironment{theglossary}{% Change the table type --> 3 columns
        \settowidth{\dimen0}{\bfseries Zeichen}%
        \settowidth{\dimen1}{\bfseries Einheit}%
        \glsdescwidth=\dimexpr\linewidth-\dimen0-\dimen1-4\tabcolsep\relax
        \begin{longtable}{@{}l l p{\glsdescwidth}@{}}}%
        {\end{longtable}}%
    %
    \renewcommand*{\glossaryheader}{%  Change the table header
        \bfseries Zeichen & \bfseries Einheit & \bfseries Beschreibung \\
        %       \hline
        \vspace{0.05cm}
        \endhead}
    \renewcommand*{\glossentry}[2]{%  Change the displayed items
        \glstarget{##1}{\glossentryname{##1}} %
        & \glsunit{##1}
        &  \glossentrydesc{##1}  \tabularnewline
    }
}

\begin{document}
\glsaddall
\printglossary[type=unitlist,style=3colger] 
\end{document}

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4014
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Benütze \glsentryunit{##1} und nicht \glsunit{##1} in der \glossentry Definition.

Marvin_123
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Sa 1. Dez 2018, 15:30

Beitrag von Marvin_123 »

Danke für die Hilfe Ulrike. Das Problem ist mit der Verbesserung verschwunden.

Antworten