
Ich verwende das Glossarpaket in meiner Datei, um ein Glossar zu erstellen. Wenn ich glslink im Text verwende, fügt es den Glossareintrag nicht an dieser Stelle ein, sondern verlinkt tatsächlich darauf und hebt das nächste Zeichen als Link darauf hervor. Wie Sie sehen, sieht das eindeutig sehr dumm aus.
Dies sind Vorkommen vor der Glossardatei, aber es passiert auch bei Vorkommen nach der Glossardatei. Ich habe nichts gefunden, wie man das beheben kann. Es sollte entweder das ganze (ausgeschriebene) Wort als Link markieren oder den Glossareintrag direkt in den Text einfügen, wenn ich darauf verlinke. Hier ist mein (relevanter) Latex-Code:
\documentclass[pdftex,a4paper,halfparskip]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{url}
\usepackage{hyperref}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[nonumberlist, toc,style=altlist]{glossaries}
\makeglossaries
\begin{document}
\include{glossar}
First example: \glslink{glos:ESC}ESC
\end{document}
Die Datei glossar.tex sieht folgendermaßen aus:
\newglossaryentry{glos:ESC}{name={ESC},description={Electronic Speed Controller: Controller, um einen Motor anzusteuern}}
\printglossaries
Die Glossardatei wird korrekt ausgedruckt. Es wird der Name und dann die Beschreibung angezeigt. Wenn ich aber im Dokument auf Einträge verweise, endet es nur wie im Bild. (Hinweis: Im Bild ist ein zweites Beispiel, das ich aber entfernt habe, da es nichts Neues zeigt.)
Antwort1
Verwenden Sie Klammern um den Text, damit der Link ihn als Argument erfassen kann. Das Laden von inputenc ist in einem aktuellen Latex nicht mehr erforderlich:
\documentclass[a4paper,halfparskip]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{hyperref}
\usepackage[nonumberlist, toc,style=altlist]{glossaries}
\makeglossaries
\begin{document}
\newglossaryentry{glos:ESC}{name={ESC},description={Electronic Speed Controller: Controller, um einen Motor anzusteuern}}
\printglossaries
First example: \glslink{glos:ESC}{ESC}
\end{document}