Das Seltsamste, was mir heute passiert ist:
Ich suchte nach einer Möglichkeit, von einer Abkürzung auf einen Glossareintrag zu verlinken und fanddiese Antwort. Beim Emulieren in meinem Code hat es nicht funktioniert – das Attribut pdflatex
wurde ignoriert .see
Beim Herumprobieren habe ich festgestellt, dass dies nur passiert, wenn das glossaries
Paket mit dem Attribut eingeschlossen wird nonumberlist
– etwas, das keinerlei Einfluss auf Links haben sollte.
Minimales Codebeispiel:
\documentclass{article}
\usepackage{hyperref}
\usepackage[nonumberlist, acronym]{glossaries}
\makeglossaries
%%% define the acronym and use the see= option
\newglossaryentry{css}{type=\acronymtype, name={CSS}, description={Cascading Style Sheets}, first={Cascading Style Sheets (CSS)}, see=[Glossary:]{cssg}}
\newglossaryentry{cssg}{name={Cascading Style Sheets},
description={A language for specifying presentation attributed of XML documents.}}
\begin{document}
\glsaddall
% Acronyms
\printglossary[type=\acronymtype]
% Glossary
\printglossary[style=altlist,title=Glossary]
\end{document}
Wie kann ich das beheben? Und warum passiert das überhaupt?
Antwort1
Dies ist dokumentiertes Verhalten. Zitat ausdas Handbuch:
keineNummernlisteMit dieser Option werden die zugehörigen Nummernlisten in den Glossaren unterdrückt (siehe auch Abschnitt 5).
sieheAutoNummernlisteWenn Sie die Nummernlisten unterdrücken mitkeineNummernliste, wie oben beschrieben, werden dadurch auch alle Querverweise unterdrückt, die durch den Schlüssel see in
\newglossaryentry
oder bereitgestellt werden\glssee
. Wenn SiesieheAutoNummernliste, wird der Schlüssel „siehe“ automatischnonumberlist=false
für diesen Eintrag implementiert. (Beachten Sie, dass dies keine Auswirkungen hat\glssee
.) Weitere Einzelheiten finden Sie in Abschnitt 8.
Eine mögliche Lösung besteht also darin, zusätzlich zu setzen seeautonumberlist
. Dies kann den unerwünschten Effekt haben, dass der Akronymeintrag nun die Seitenzahl erhält, die Sie nonumberlist
ursprünglich vermeiden wollten:
% arara: pdflatex
% arara: makeglossaries
% arara: pdflatex
\documentclass{article}
\usepackage{hyperref}
\usepackage[nonumberlist,seeautonumberlist,acronym]{glossaries}
\makeglossaries
%%% define the acronym and use the see= option
\newglossaryentry{css}{
type=\acronymtype,
name={CSS},
description={Cascading Style Sheets},
first={Cascading Style Sheets (CSS)},
see=[Glossary:]{cssg}
}
\newglossaryentry{cssg}{
name={Cascading Style Sheets},
description={A language for specifying presentation attributed of XML documents}
}
\begin{document}
\glsaddall
% Acronyms
\printglossary[type=\acronymtype]
% Glossary
\printglossary[style=altlist,title=Glossary]
\end{document}
Eine Alternative besteht darin, die Referenz manuell in die Beschreibung des Akronyms einzufügen. Auf diese Weise erhalten Sie auch nicht die Seitenzahl im Akronymeintrag:
% arara: pdflatex
% arara: makeglossaries
% arara: pdflatex
\documentclass{article}
\usepackage{hyperref}
\usepackage[nonumberlist,acronym]{glossaries}
\makeglossaries
%%% define the acronym
\newglossaryentry{css}{
type=\acronymtype,
name={CSS},
description={Cascading Style Sheets. \textit{Glossary:} \gls{cssg}},
first={Cascading Style Sheets (CSS)}
}
\newglossaryentry{cssg}{
name={Cascading Style Sheets},
description={A language for specifying presentation attributed of XML documents}
}
\begin{document}
\glsaddall
% Acronyms
\printglossary[type=\acronymtype]
% Glossary
\printglossary[style=altlist,title=Glossary]
\end{document}