背景
elsarticle
私は現在、ジャーナル原稿の提出に取り組んでおり、クラスから提出した原稿をElsevierからのフィードバックと推奨事項に基づいて変換しようとしていますcas-dc
。私のコードは文書を正常にタイプセットします。1回おきに実行して次のエラー メッセージを作成し、再度実行すると.aux
ファイルが削除され、正常にコンパイルされます。
エラーメッセージ:! Missing = inserted for \ifnum.
通常、これは問題にはなりませんが、@PhelypeOleinikが指摘したように、私の最初の質問に対する彼の答え、文書を正常にコンパイルする必要があります2回著者やタイトルのメモなどを機能させるためです。
類似の質問
私は以下の回答/質問を見ましたが、あまり成果がありませんでした。
siunitx のコンパイルの問題 (ifnum に関するエラーが返される): これはバージョンの管理と日付付けの方法に問題があると主張し、ユーザーに Tex ディストリビューションを更新することを提案しています。MikTex のすべてを更新し、更新が利用できなくなるまで繰り返し更新を確認しましたが、問題は解決しません。
欠落=\ifnumに挿入: 回答がない場合は、潜在的な問題があることが示唆されます
beamer
。私は使用していないのでbeamer
、問題ではないと思います。natbib を使用して参考文献を生成するときに、\ifnum エラーのために = が挿入されません: bib
aux
ファイルを削除して再実行することを提案します。aux
すべてのメモを表示するには、ファイルを削除せずに再実行する必要があるため、これは機能しません。欠落 = \ifnum に挿入されました。\usepackage: 代わりに、このリストの最初の回答を確認し、パッケージ/MikTex ディストリビューションを更新することをお勧めします。すでに何も更新していません。
エラー「\ifnum に = が挿入されていません」: ユーザーがパッケージ
pgfmath
内の関数をどのように使用していたかに問題があることを示唆しています。tikz
tikz
私の知る限り、MWE では直接使用していないため、問題は解決しません。
ムウェ
以下は、問題を再現する最小限の動作例です。私は\input
個別のファイルをクリーンな状態に保つために lot を使用し、何らかの関連がある場合に備えてその構造をここに再現しました。個別のファイルはすべて同じフォルダー内にあります。
でdraft_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}
でsettings_options_parameters.tex
\usepackage{natbib}
\usepackage{lipsum}
\ExplSyntaxOn
\keys_set:nn { stm / mktitle } { nologo }
\ExplSyntaxOff
でfrontmatter.tex
主に以下の文書に基づいているcas-dc
ここ。
\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
結果
これらは最終結果の画像です。最初はコンパイルされますが、2回目は上記のエラーが発生し、タイトルの注釈\tnotemark
や著者の注釈は表示されません。\cormark
log
エラーが発生した後のファイルはここが\listfiles
追加されましたが、他に追加すべきものがあればお知らせください。
この問題に関してご協力いただければ幸いです。
答え1
els-cas
問題が... 2 つ見つかりました。
初め:オプション文書の\cormark
しなければならない数字であり、それはないオプション: これを省略するとエラーが発生します。はい、 :-) は
\cormark[]
と同様に無効であるため\cormark[1,2]
、原則として著者ごとに 1 つ以上を配置することはできません\cormark
(これが設計によるものかバグによるものかはわかりません)。 のオプション引数を\cormark
本当にオプションにして許可するパッチを以下に示します\cormark[1,2]
(これをプリアンブルに追加します)。
\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
2番目:のオプション引数は\ead
基本的に何もしません。は と同じくらい有効です。はい :-) 唯一の違いは、オプション引数が空でない場合は を使用し、そうでない場合は引数の周囲に を使用することです。私に言わせれば、あまり意味がありません。いずれにせよ、は\ead[url]{[email protected]}
\ead[mashed potatoes]{[email protected]}
els-cas
\url
\detokenize
\ead
ない(適切に)複数のアドレスをサポートします。
ドキュメントでは、全体を 1 つの URL にして使用することを推奨していますが、これは間違っています (ただし、論文は Elsevier の担当者によって編集され、そのプロセスでは LaTeX テンプレートは使用されないため、おそらく問題ありません)。そのため、この方法を採用するでしょう。\ead{[email protected], [email protected]}
\ead
別のオプションとしては、2 つのアドレスが必要な場合に 2 回使用することです。
\author[1]{Dummy Author Two}
\ead{[email protected]} % e-mail adrress
\ead[mashed potatoes]{hackingsupplies.com} % website
答え2
私もまったく同じ問題を抱えていました。これは、BibTeX エントリの 1 つにフィールドが欠落していたために発生しましたyear
。次のように年フィールドを追加することで、この問題を解決できました。
@online{arXiv,
title = {arXiv.org e-Print archive},
url = {https://arxiv.org/},
author = {arXiv},
year= {2023},
urldate = {2023-08-07}
}