我在同时使用 silent 和 authblk 时遇到了麻烦。我有这个 MWE:
\documentclass{article}
\usepackage{silence}
\usepackage{authblk}
\begin{document}
Hi
\end{document}
跑步pdflatex temp_mwe.tex
给了我这个:
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./temp.tex
LaTeX2e <2019-10-01> patch level 3
(/home/zach/.local/texlive/2019/texmf-dist/tex/latex/base/article.cls
Document Class: article 2019/10/25 v1.4k Standard LaTeX document class
(/home/zach/.local/texlive/2019/texmf-dist/tex/latex/base/size10.clo))
(/home/zach/.local/texlive/2019/texmf-dist/tex/latex/silence/silence.sty)
(/home/zach/.local/texlive/2019/texmf-dist/tex/latex/preprint/authblk.sty
! Undefined control sequence.
\sl@StoreMessage ...expand \string \def \sl@Tempa
{#1}\sl@RemoveGobble #1\sl...
l.113 \xdef\AB@author{\noexpand\AB@blk@and\@author
}
因此,问题发生在处理 authblk 时,但似乎涉及一行无声内容,以 \sl@ 开头的宏就是证据。这是我对 tex/latex 的了解。任何帮助都将不胜感激。
答案1
您可以通过以下方式解决此问题:
\documentclass{article}
\usepackage{etoolbox}
\usepackage{silence}
\makeatletter
\robustify\@latex@warning@no@line
\makeatother
\usepackage{authblk}
\begin{document}
Hi
\end{document}
错误发生在加载 时,其中修改的authblk
版本需要通过。灾难随之而来。宏没有被 扩展,运行可以顺利进行。\@latex@warning@noline
silence
\xdef
\robustify
\xdef