Im Packet totalcount habe ich einen Bug festgestellt und auch gemeldet

Hier das Minimalbeispiel:

Öffne in Overleaf
\documentclass[]{article}
\usepackage[figure,table]{totalcount}

\begin{document}
\iftotaltables
   \listoftables
\fi

\iftotalfigures
   \listoffigures
\fi

\setcounter{figure}{-1}
This report contains \totalfigures\ figures.

\end{document}

Nun möchte ich für mich den Bug temporär lösen, aber das Programmieren mit Latex fällt mir aufgrund der für mich ungewöhnlichn Syntax noch recht schwer. Leider klappt der Hinweis mit \ifnum und meiner Umsetzung

Öffne in Overleaf
\ifnum\iftotaltables>0
  \listoftables
\fi

nicht, da es zu folgender fehlermeldung kommt:

Missing number, treated as zero. par

Wie kann ich überprüfen, ob ein Zähler grösser 0 ist, hier als Pseudo-Latex-Code:

Öffne in Overleaf
\iftotaltables > 0
  \listoftables
\fi

gefragt 10 Jan '18, 10:30

dzaic's gravatar image

dzaic
631154954
Akzeptiert-Rate: 42%

bearbeitet 10 Jan '18, 14:34

Wieso hast du -1 Abbildungen in deinem Dokument? Wenn du den Zähler auf 0 setzt, funktioniert alles.

(10 Jan '18, 10:58) Ulrike Fischer

Irgendwas in meiner Vorlage setzt den Zähler auf -1. Ich vermute einmal, dass es irgendetwas mit dem Packet longtabu(http://tex.stackexchange.com/questions/32553/longtable-caption-without-incrementing-table) zutun hat. Leider finde ich den Grund momentan auf die schnelle nicht. Du hast natürlich recht, dass ich den Zähler bei Beginn des Dokumentes wieder auf 0 setzen könnte, jedoch fände ich die if-Abfrage robuster.

(10 Jan '18, 11:06) dzaic

Geht es mit \ifnum\value{totaltables}>0?

(10 Jan '18, 12:18) Henri

@Henri Funktioniert leider nicht. Generell würde mich interessieren, welchen Typ (Integer, String usw.) die Ausgabe des Makro \totalfigures hat - Offenkundig nicht die einer Zahl. :-) By the way: Kann man bei Tex überhaupt von Typ reden? Eventuell stelle ich diese Frage einmal offiziell, damit auch bei mir etwas Licht in die nebulöse Programmier-Syntax von Tex kommt.

(10 Jan '18, 13:53) dzaic

Du kannst natürlich totalcount so patchen, dass es bei \iftotal*s alle Zahlen < 1 als false case verwendet:

Öffne in Overleaf
\documentclass[]{article}
\usepackage[figure,table]{totalcount}
\usepackage{xpatch}
\xpatchcmd{\totalcount@set}{\ifnum#2=0}{\ifnum#2<1}{}{}

\begin{document}

\iftotaltables
   \listoftables
\fi

\iftotalfigures
   \listoffigures
\fi

\setcounter{figure}{-1}
This report contains \totalfigures\ figures.

\end{document}
Permanenter link

beantwortet 10 Jan '18, 14:05

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

Bin immer wieder erstaunt, was mit Tex so alles geht. :-) Dank der Hinweise von Dir, Ulrike und Henri habe ich den Mut gefasst, Operationen am offenen Herzen vorzunehmen und die notwendigen Änderungen (\ifnum#2=0 -> \ifnum#2<1) direkt in der totalcount.sty meiner Tex-Distribution implementiert.

(10 Jan '18, 14:29) dzaic

@dzaic Das kann beim nächsten Distribution-oder Paket-Update Probleme geben. Ich würde in eigener Dokumentpräambel patchen oder totalcount.sty umbenennen und dann patchen und das verwenden.

(10 Jan '18, 14:43) stefan ♦♦
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:

×40
×5
×4

gestellte Frage: 10 Jan '18, 10:30

Frage wurde gesehen: 5,811 Mal

zuletzt geändert: 10 Jan '18, 14:43