pdflatexmk kompiliert \glossaries einwandfrei, vernachlässigt aber \glsaddall

pdflatexmk kompiliert \glossaries einwandfrei, vernachlässigt aber \glsaddall

Ich verwende TeXShop und das Skript pdflatexmk. Wenn ich mindestens einen Eintrag des Glossars mit \gls{label}dem Glossar verknüpfe, wird es problemlos kompiliert und alles funktioniert gut (funktionierendes Codebeispiel). Ich möchte den Befehl jedoch so verwenden, \glsaddalldass ich nicht auf alle Glossareinträge verlinken muss. Leider vernachlässigt pdflatexmk diese Option (fehlerhaftes Codebeispiel). Warum tut es das?

Ich weiß, dass ich den Befehl makeglossaries im Terminal ausführen kann, aber ich möchte, dass er mit pdflatexmk funktioniert. Wie kann ich das lösen? Gibt es ein neueres pdflatexmk-Skript, das dieses Problem behebt?

Unten sehen Sie ein funktionierendes Beispiel.

Funktionierender Code: Erwähnung von mindestens einem Glossareintrag mit \gls{label}:

% !TEX TS-program = pdflatexmk
\documentclass[12pt,a4paper,titlepage,final]{report}
\usepackage[toc, nonumberlist]{glossaries}

\makeglossaries

\begin{document}
\title{Title}
\author{Author}
\date{\today}
\tableofcontents
\printglossaries

\chapter{Chapatare Uno}
\newglossaryentry{One}
{name=One, description={First number after zero}}
Body text for chapter one mentioning the glossary item \gls{One}

\chapter{Chapter Deux}
\newglossaryentry{Open}
{name=Open, description={Opposite of closed}}
Body text for chapter two mentioning the glossary item \gls{Open}

\end{document}

Fehlerhafter Code: Verwendung von \glsaddall zum Drucken von Einträgen ohne Erwähnung

% !TEX TS-program = pdflatexmk
\documentclass[12pt,a4paper,titlepage,final]{report}
\usepackage[toc, nonumberlist]{glossaries}

\makeglossaries

\begin{document}
\title{Title}
\author{Author}
\date{\today}
\tableofcontents
\glsaddall
\printglossaries

\chapter{Chapatare Uno}
\newglossaryentry{One}
{name=One, description={First number after zero}}
Body text for chapter one NOT mentioning the glossary item 

\chapter{Chapter Deux}
\newglossaryentry{Open}
{name=Open, description={Opposite of closed}}
Body text for chapter two NOT mentioning the glossary item

\end{document}

Antwort1

Verschieben der GlossareintragsdefinitionenVorAusgabe \glsaddallund stellen Sie sicher, dass Sie latexmkwissen, wie man mit Glossaren umgeht. Es gibt eineBeispieldateiim Paket, das zeigt, was Sie zu Ihrer ~/.latexmkrcEinstellungsdatei hinzufügen sollten.

Insgesamt,

\documentclass[12pt,a4paper,titlepage,final]{report}
\usepackage[toc, nonumberlist]{glossaries}

\makeglossaries
\newglossaryentry{One}
{name=One, description={First number after zero}}
\newglossaryentry{Open}
{name=Open, description={Opposite of closed}}

\begin{document}
\title{Title}
\author{Author}
\date{\today}
\tableofcontents
\glsaddall
\printglossaries

\chapter{Chapatare Uno}
Body text for chapter one NOT mentioning the glossary item

\chapter{Chapter Deux}
Body text for chapter two NOT mentioning the glossary item

\end{document}

Und

add_cus_dep( 'glo', 'gls', 0, 'makeglo2gls' );
sub makeglo2gls {
    system("makeindex -s \"$_[0].ist\" -t \"$_[0].glg\" -o \"$_[0].gls\" \"$_[0].glo\"" );
}

oder

add_cus_dep( 'glo', 'gls', 0, 'makeglossaries' );
sub makeglossaries {
   system( "makeglossaries \"$_[0]\"" );
}

in ~/.latexmkrclöst Ihr Problem.

verwandte Informationen