In meiner Facharbeit wird das Glossar nicht angezeigt, ich finde den Fehler nicht:

Öffne in Overleaf
\documentclass[a4paper, 12pt]{article}
\usepackage[utf8]{inputenc} % deutsche Sprache Umlaute
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel} % deutsche Sprache Silbentrennung
\usepackage{caption}
\usepackage[onehalfspacing]{setspace}
\usepackage[pagewise,modulo]{lineno}
\usepackage[xindy]{glossaries} 
\usepackage[german]{varioref}

\begin{document}
\nolinenumbers

\section{Glossar}

\renewcommand*{\glspostdescription}{}

\glsaddall

\printglossaries

\newglossaryentry{extrazellulärer Matrix}
{name=extrazellulärer Matrix,
 description={Gewebe, das außerhalb der Zelle liegt und diese schützend umgibt}}

\end{document}

gefragt 07 Mär '17, 22:17

IPSZellen's gravatar image

IPSZellen
21112
Akzeptiert-Rate: 0%

bearbeitet 08 Mär '17, 07:39

saputello's gravatar image

saputello
11.1k174365

Willkommen auf TeXwelt!

Wir verwenden hier übrigens Markdown für die Textauszeichnung. Für Code bedeutet das, dass er vier Leerzeichen weit eingerückt werden muss. Das geht ganz einfach durch markieren des Codes und dann Klick auf das Code-Symbol (das mit 101) in der Toolbar oder Drücken von Strg-k.

(08 Mär '17, 07:38) saputello

Ich habe in Deinem Beispiel Option latin1 für inputenc in utf8 geändert, weil der Online-Editor Overleaf, der über den automatisch über dem Code eingefügten Link aufgerufen werden kann, UTF8 als Codierung erwartet. Übrigens ist das auch bei fast allen modernen LaTeX-Editoren die voreingestellte Codierung.

(08 Mär '17, 07:41) saputello

Dein Fehler ist, dass Du im ersten Argument von \newglossaryentry Leerzeichen und einen Umlaut verwendest. Das Leerzeichen geht zwar noch, der Umlaut bereitet allerdings Probleme. Wie für label wird das erste Argument zur Bildung eines Befehls verwendet und sollte daher nur aus ASCII-Buchstaben und einigen wenigen weiteren, garantiert nicht aktiven Zeichen bestehen.

Darüber hinaus fehlt im Beispiel der Befehl \makeglossaries, der dafür sorgt, dass die Einträge in die zugehörigen Hilfsdateien geschrieben werden. Man muss dann nach einem LaTeX-Lauf auch noch das Programm makeglossaries aufrufen, damit im nächsten LaTeX-Lauf dann \printglossaries etwas ausgeben kann. Alternativ könnte man auch mit \printnoidxglossaries arbeiten. Siehe zu den Unterschieden die glossaries-Anleitung. Zeigen werde ich nachfolgend beide Möglichkeiten.

Mit:

Öffne in Overleaf
\documentclass[a4paper, 12pt]{article}
\usepackage[utf8]{inputenc} % deutsche Sprache Umlaute (an die Einstellungen des jeweiligen Editors anpassen!)
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel} % deutsche Sprache Silbentrennung
\usepackage{caption}
\usepackage[onehalfspacing]{setspace}
\usepackage[pagewise,modulo]{lineno}
\usepackage[xindy]{glossaries} 
\usepackage[german]{varioref}

\makeglossaries

\begin{document}
\nolinenumbers

\section{Glossar}

\renewcommand*{\glspostdescription}{}

\glsaddall

\printglossaries

\newglossaryentry{extrazellulaerer-Matrix}
{name=extrazellulärer Matrix,
 description={Gewebe, das außerhalb der Zelle liegt und diese schützend umgibt}}

\end{document}

erhält man nach dem Aufruf von LaTeX gefolgt von makeglossaries (oder Xindy mit den richtigen Parametern), gefolgt von einem weiteren Aufruf von LaTeX dann auch wie erwartet:

alt text

Wie man daran sieht, wird das Verzeichnis auch automatisch mit einer Überschrift versehen, so dass man auf eine eigene Überschrift darüber verzichten sollte.

Die erwähnte Methode ohne Aufruf von makeglossaries sähe so aus:

Öffne in Overleaf
\documentclass[a4paper, 12pt]{article}
\usepackage[utf8]{inputenc} % deutsche Sprache Umlaute (an die Einstellungen des jeweiligen Editors anpassen!)
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel} % deutsche Sprache Silbentrennung
\usepackage{caption}
\usepackage[onehalfspacing]{setspace}
\usepackage[pagewise,modulo]{lineno}
\usepackage{glossaries} 
\usepackage[german]{varioref}

\makenoidxglossaries

\newglossaryentry{extrazellulaerer-Matrix}
{name=extrazellulärer Matrix,
 description={Gewebe, das außerhalb der Zelle liegt und diese schützend umgibt}}

\begin{document}
\nolinenumbers

\section{Glossar}

\renewcommand*{\glspostdescription}{}

\glsaddall

\printnoidxglossaries

\end{document}

und produziert im Beispiel das gleiche Ergebnis. Hier ist zu beachten, dass die Einträge bereits in der Dokumentpräambel (oder einer eigenen Datei, die in der Dokumentpräambel gelesen wird) definiert werden müssen. Außerdem hat die Sortierung Grenzen und ist sehr langsam, wenn man viele Einträge hat. Für wenige Einträge funktioniert es in der Regel gut.

Permanenter link

beantwortet 08 Mär '17, 07:55

saputello's gravatar image

saputello
11.1k174365
Akzeptiert-Rate: 51%

bearbeitet 09 Mär '17, 08:06

Vielen Dank für die schnelle Antwort, leider hat es nicht funktioniert. Da ich Zeitdruck habe, fällt das Glossar weg.

(08 Mär '17, 19:12) IPSZellen

@IPSZellen Ich habe Deine "Antwort" in einen Kommentar umgewandelt. Hier sind Antworten stets "echte" Antworten, keine Gespräche oder Rückfragen oder Zusatzinfos, sondern Lösungen. Das verbessert die Übersicht erheblich für die Archivierung der Lösungen. Ungewohnt und anders als in Webforen, doch innovativ und nutzbarer. Bemerkungen gern wie hier als Kommentare.

(09 Mär '17, 07:49) saputello

@IPSZellen Dass meine Beispiele funktionieren, kann man im Online-Editor überprüfen. Du hast vermutlich beim ersten Beispiel das Programm makeglossaries nicht aufgerufen. Wie erwähnt, kannst Du diesen Schritt auch einsparen, wenn Du \printnoidxglossaries verwendest. Allerdings musst Du dann die \newglossaryentry bereits in der Dokumentpräambel angeben. BTW: »funktioniert nicht« ist keine hinreichende Problembeschreibung!

(09 Mär '17, 07:52) saputello
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×46

gestellte Frage: 07 Mär '17, 22:17

Frage wurde gesehen: 11,175 Mal

zuletzt geändert: 09 Mär '17, 08:08