Bug Tracker
I’m currently working on a major new version of the datatool package. This may take a while. Please be patient. (Experimental version available for testing.)
ID | 116🔗 |
---|---|
Date: | 2016-10-30 10:51:54 |
Status | Closed (Not a Bug) |
Category | glossaries |
Version | 4.21 |
Summary | Glossary quote not linked after first use |
OS | Ubuntu 16.04 |
Sign in to subscribe to notifications about this report.
Description
I defined the command `\glsquotation
` as you can see in my source code. The command takes the label of a glossary entry and prints the name of the glossary entry and its description. The name should be linked to the glossary and the description shouldn't.
It works fine for the first entry but every entry after the first one doesn't link to the glossary. I made links blue so you can see it easily.
MWE
Download (2.40K)
\documentclass[a4paper,11pt]{report} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[german]{babel} \usepackage[a4paper, total={6in, 10in}]{geometry} \usepackage{booktabs} \usepackage[colorlinks]{hyperref} \usepackage[acronym,toc]{glossaries} \title{LaTeX Bug Report Example Document} \author{Christoph Michelbach} \hypersetup{ colorlinks, citecolor=black, filecolor=black, linkcolor=blue, urlcolor=black, pdftitle={\@title}, pdfauthor={\@author}, bookmarks=true } \newcommand{\glsquotation}[1]{ \paragraph{\gls{#1}:} \glsdesc*{#1}. } \makeglossaries \newglossaryentry{Objekt} { name=Objekt, plural=Objekte, description={Siehe \gls{Datenobjekt}}, } \newglossaryentry{Datenobjekt} { name=Datenobjekt, plural=Datenobjekte, description={Repräsentiert Informationen}, } \newglossaryentry{Subjekt} { name=Subjekt, plural=Subjekte, description={Benutzer eines Systems oder Objekt, das im Auftrag von Benutzern im System aktiv sein kann (z.B. Prozess, Server, Prozedur)}, } \newglossaryentry{Autorisierung} { name=Autorisierung, plural=Autorisierungen, description={Besitzt ein \gls{Subjekt} die Berechtigung, auf ein \gls{Objekt} zuzugreifen, so nennt man das Subjekt für diesen Datenzugriff autorisiert}, } \newglossaryentry{Authentizitaet} { name=Authentizität, plural=Authentizitäten, description={Echtheit und Glaubwürdigkeit eines \glslink{Objekt}{Objekts} bzw. \glslink{Subjekt}{Subjekts}, die anhand seiner Identität und seiner charakteristischen Eigenschaften überprüfbar ist}, } \newglossaryentry{vertraulich} { name=vertraulich, description={System ermöglicht keine \glslink{Autorisierung}{unautorisierte} Informationsgewinnung}, } \newglossaryentry{integer} { name=integer, description={Subjekten ist es nicht möglich, Daten \glslink{Autorisierung}{unautorisiert} und unbemerkt zu manipulieren}, } \newglossaryentry{verfuegbar} { name=verfügbar, description={Authentifizierte und \glslink{Autorisierung}{autorisierte} \glspl{Subjekt} werden in der Wahrnehmung ihrer Berechtigungen nicht \glslink{Autorisierung}{unautorisiert} beeinträchtigt}, } \begin{document} \maketitle \tableofcontents \chapter{Chapter} \section{Section} \glsquotation{Authentizitaet}\\ Das klassische Schutzziel-Trio besteht aus Vertraulichkeit, Integrität, und Verfügbarkeit: \glsquotation{vertraulich} \glsquotation{integer} \glsquotation{verfuegbar} \glsaddallunused \printglossaries \end{document}
Evaluation
(I've moved this from makeglossaries to glossaries, since it's related to the package rather than the Perl script.)
The problem is the use of nested links, which the glossaries manual warns against. This is a documented feature rather than a bug. You can't use \glsdesc
if the description contains commands like \gls
or \glslink
. However, there's no need for \glsdesc
in this context. Just use \glsentrydesc
instead.
\newcommand{\glsquotation}[1]{ \paragraph{\gls{#1}:} \glsentrydesc{#1}. }
Comments
0 comments.
Add Comment
Page permalink: https://www.dickimaw-books.com/bugtracker.php?key=116