使用2019/11/18
版本Springer 的sn-jnl.cls
模板(存档为要点这里),我得到以下信息:
\documentclass{sn-jnl}
\usepackage{xparse}
\NewDocumentCommand{\githublink}{m m o}{\href{}{\texttt{}}}
\begin{document}
. \githublink{}{}[]
\end{document}
! Argument of \XKV@d@fine@k@y has an extra }.
<inserted text>
\par
l.5 . \githublink{}{}[]
这是怎么回事?我该如何解决这个问题?
编辑
这可以进一步最小化为
\documentclass{article}
\RequirePackage{hyperref}%
%%\RequirePackage{hypcap}%
\gdef\breakurldefns{%
%\if@pdflatex\else%
\RequirePackage[hyphenbreaks]{breakurl}%
\let\href\burlalt%
%\fi
}%
\breakurldefns%
% \bgroup
\usepackage{hyperref}
\begin{document}
. \href{}{\texttt{}}
\end{document}
答案1
breakurl 包不应与 pdflatex 一起使用,但为了避免加载它,您必须使用该选项加载该类,pdflatex
因为该类有点转储并且不使用现有方法来自动检测输出模式。
\documentclass[pdflatex]{sn-jnl}
\begin{document}
\href{abc}{\texttt{abc}}
\end{document}