Hintergrund
Ich arbeite derzeit an der Einreichung eines Zeitschriftenmanuskripts und versuche, mein Originalmanuskript aus elsarticle
dem Unterricht auf cas-dc
der Grundlage von Feedback und Empfehlungen von Elsevier in ein Manuskript umzuwandeln. Mein Code wird mein Dokument erfolgreich setzenjedes zweite Mal. Es läuft durch, erzeugt die folgende Fehlermeldung, ich führe es erneut aus und dann löscht es die .aux
Datei und kompiliert erfolgreich.
Fehlermeldung:! Missing = inserted for \ifnum.
Normalerweise wäre das kein Problem, aber wie @PhelypeOleinik inseine Antwort auf meine ursprüngliche Frage, ich muss das Dokument erfolgreich kompilierenzweimalum Dinge wie Autoren- und Titelnotizen zum Laufen zu bringen.
Ähnliche Fragen
Ich habe mir die folgenden Antworten/Fragen ohne großen Erfolg angesehen:
Kompilierungsproblem mit siunitx (gibt Fehler bezüglich ifnum zurück): behauptet, dass es ein Problem bei der Pflege und Datierung von Versionen ist, und schlägt vor, dass der Benutzer die Tex-Distribution aktualisiert.Ich habe alles in MikTex aktualisiert und wiederholt nach Updates gesucht, bis keine Updates mehr verfügbar waren. Das Problem besteht weiterhin.
Missing=insert für \ifnum: Keine Antwort deutet auf ein mögliches Problem mit hin
beamer
.Ich verwende es nichtbeamer
und glaube nicht, dass das ein Problem ist.Fehlendes = eingefügt für \ifnum-Fehler beim Generieren der Bibliografie mit natbib: schlägt vor, die Bib-
aux
Datei zu löschen und erneut auszuführen.Das funktioniert nicht, da ich es erneut ausführen muss, ohne dieaux
Datei zu löschen, damit alle Notizen angezeigt werden.Fehlt = eingefügt für \ifnum. \usepackage: Alternativ wird vorgeschlagen, sich die erste Antwort in dieser Liste anzusehen und die Pakete/MikTex-Verteilung zu aktualisieren.Ich habe bereits alles aktualisiert, ohne Erfolg.
Fehler „Fehlt = eingefügt für \ifnum“
pgfmath
: deutet darauf hin, dass es ein Problem mit der Art und Weise ist, wie der Benutzer Funktionen im Paket verwendet hattikz
.In meinem MWE verwende ich estikz
(soweit ich weiß) nicht direkt und das Problem besteht weiterhin.
MWE
Unten finden Sie ein minimales funktionierendes Beispiel, das das Problem reproduziert. Ich verwende \input
viel, um einzelne Dateien sauber zu halten, und habe diese Struktur hier repliziert, falls das irgendwie damit zusammenhängt. Alle einzelnen Dateien befinden sich im selben Ordner.
Indraft_paper.tex
\listfiles
\documentclass[sort&compress]{cas-dc}
\input{settings_options_parameters} % contains all of the settings/options that I don't think we'll need to change very often
\begin{document}
\input{frontmatter}
\end{document}
Insettings_options_parameters.tex
\usepackage{natbib}
\usepackage{lipsum}
\ExplSyntaxOn
\keys_set:nn { stm / mktitle } { nologo }
\ExplSyntaxOff
Infrontmatter.tex
Basiert weitgehend auf der Dokumentation fürcas-dc
Hier.
\title[mode=title]{Test Title: 101 Reasons Why I Can't \LaTeX}
\tnotemark[1]
\tnotetext[1]{This document is the result of blood, sweat, tears and taxpayer money.}
\author[1]{Dummy Author One}[%
type=author,
orcid=]
\cormark[1]
\fnmark[1]
\ead[url]{[email protected], \url{fakewebaddress.com}}
\credit{Everything}
\address[1]{Nowheresville, North America}
\author[1]{Dummy Author Two}[%
type=author,
orcid=]
\cormark[2]
\fnmark[2]
\ead[url]{[email protected], \url{phishingsupplies.com}}
\credit{Nothing}
\author[1]{Dummy Author Two}[%
type=author,
orcid=]
\cormark[1,2]
\fnmark[1,2]
\ead[url]{[email protected], \url{hackingsupplies.com}}
\credit{Nothing}
\address[1]{Nowheresville, North America}
\cortext[cor1]{Corresponding author}
\cortext[cor2]{Principal corresponding author}
\fntext[fn1]{This is the first author footnote. but is commonto third author as well.}
\fntext[fn2]{Another author footnote, this is a very longfootnote and it should be a really long footnote. But thisfootnote is not yet sufficiently long enough to make two linesof footnote text.}
% Abstract
\begin{abstract}[SUMMARY]
\lipsum[1-1]
\end{abstract}
% Key words
\begin{keywords}
\LaTeX \sep Science \sep Crying
\end{keywords}
\maketitle
Ergebnisse
Dies sind Bilder des Endergebnisses, beim ersten Kompilieren, beim zweiten Mal tritt der oben erwähnte Fehler auf und es werden nie die Titelnotizen \tnotemark
oder Autorennotizen angezeigt\cormark
Die log
Datei nach dem Auftreten des Fehlers finden SieHier. \listfiles
wurde hinzugefügt, aber wenn noch etwas hinzugefügt werden sollte, lassen Sie es mich bitte wissen.
Vielen Dank für jede Hilfe zu diesem Problem!
Antwort1
els-cas
hat ... Probleme. Sie haben zwei gefunden.
Erste:das optionale Dokument von\cormark
musseine Zahl sein, und es istnichtoptional: Wenn Sie es weglassen, erhalten Sie eine Fehlermeldung. Ja :-)
\cormark[]
ist ungültig, so wie es ist \cormark[1,2]
, also können Sie im Prinzip nicht mehr als eines \cormark
pro Autor angeben (wer weiß, ob das so beabsichtigt ist oder ein Fehler). Hier ist ein Patch, um das optionale Argument \cormark
wirklich optional zu machen und zuzulassen \cormark[1,2]
(fügen Sie es Ihrer Präambel hinzu):
\ExplSyntaxOn
\makeatletter
\RenewDocumentCommand \process@marks { }
{
\bool_lazy_or:nnTF
{ \cs_if_free_p:c { mark@corau\theauthor } }
{ \tl_if_empty_p:c { mark@corau\theauthor } }
{ \ignorespaces }
{ \str_set:Nx \l_tmpa_str { \use:c{ mark@corau\theauthor } }
\clist_map_inline:Nn \l_tmpa_str
{
\int_case:nn { ##1 }
{
{ 1 } { \sep$\ast$ }
{ 2 } { \sep$\ast\ast$ }
{ 3 } { \sep$\ast\!\ast\!\ast$ }
}
\tex_def:D \sep{\unskip,}
}
}
\cs_if_free:cTF { mark@fnau\theauthor }
{ \ignorespaces }
{ \sep\use:c { mark@fnau\theauthor }
\tex_def:D \sep{\unskip,}
}
}
\makeatother
\ExplSyntaxOff
Zweite:Das optionale Argument von \ead
bewirkt im Grunde nichts. ist genauso gültig wie . Ja :-) Der einzige Unterschied besteht darin, dass , wenn das optionale Argument nicht leer ist, verwendet wird , andernfalls um das Argument herum. Macht nicht viel Sinn, wenn Sie mich fragen. Macht jedenfalls nicht viel Sinn\ead[url]{[email protected]}
\ead[mashed potatoes]{[email protected]}
els-cas
\url
\detokenize
\ead
nicht(ordnungsgemäß) mehr als eine Adresse unterstützen.
In der Dokumentation wird vorgeschlagen, dass Sie aus dem Ganzen eine einzige URL erstellen. Das ist zwar falsch (aber wahrscheinlich in Ordnung, da Ihr Dokument von den Leuten von Elsevier redigiert wird und die LaTeX-Vorlage dabei nicht verwendet wird. Ich würde mich also wahrscheinlich dafür entscheiden).\ead{[email protected], [email protected]}
Eine weitere Möglichkeit ist die zweimalige Verwendung \ead
, wenn Sie zwei Adressen benötigen:
\author[1]{Dummy Author Two}
\ead{[email protected]} % e-mail adrress
\ead[mashed potatoes]{hackingsupplies.com} % website
Antwort2
Ich hatte genau das gleiche Problem. Es wurde durch ein fehlendes year
Feld in einem der BibTeX-Einträge verursacht. Ich konnte das Problem beheben, indem ich das Jahresfeld wie folgt hinzufügte:
@online{arXiv,
title = {arXiv.org e-Print archive},
url = {https://arxiv.org/},
author = {arXiv},
year= {2023},
urldate = {2023-08-07}
}