额外括号错误,europasscv + biblatex

额外括号错误,europasscv + biblatex

正在尝试使用europasscv并将biblatex出版物分成几类,但出现错误。

pdflatex <file>
[...]
! Argument of \end has an extra }.
<inserted text> 
                \par 
l.23 \printbibtabular[title=A,category=aa]

这是 Latex 文件:

\documentclass[swedish,a4paper,10pt]{europasscv}
\usepackage[T1]{fontenc}
\usepackage[backend=bibtex,sorting=ynt,style=numeric,maxnames=99]{biblatex}
\usepackage{europasscv-bibliography}

\addbibresource{mwe}

\DeclareBibliographyCategory{aa}
\DeclareBibliographyCategory{bb}

\begin{document}

\begin{europasscv}

\addtocategory{aa}{A:2019}
\addtocategory{bb}{B:2019}

\nocite{A:2019}
\nocite{B:2019}

\renewcommand{\section}[2]{\ecvitem{#2}}

\printbibtabular[title=A,category=aa]
\printbibtabular[title=B,category=bb]

\end{europasscv}
\end{document}

文件如下.bib

@Book{A:2019,
  author =   {A},
  title =    {A},
  publisher =    {A},
  year =     {2019}
}
@Book{B:2019,
  author =   {B},
  title =    {B},
  publisher =    {B},
  year =     {2019}
}

编辑:如何让它运行而不出现错误产生好的输出吗?

答案1

根据 europasscv文档 \ecvitem接受一个可选参数和两个强制参数。

\ecvitem[vspace]{left}{right}

随着重新定义

\renewcommand{\section}[2]{\ecvitem{#2}}

\section{#1}{#2}将被替换\ecvitem{#2},因此\ecvitem缺少第二个参数。它将继续吞噬接下来作为其第二个参数的任何内容。可以理解的是,这并不总是顺利的。(请注意,这里的\section{#1}{#2}有点误导。由于biblatex使用\section*作为默认标题,因此#1实际上只是*。所以我们实际上用替换\section*{#2}\ecvitem{#2}当然,如果使用\section{Title}甚至更糟,这会出现错误\section[Short]{Long}。)

我不完全确定你到底想要什么,但你可以尝试

\renewcommand{\section}[2]{\ecvitem{#2}{}}

或者

\renewcommand{\section}[2]{\ecvitem{#2}{#2}}

我对此并不太高兴,因为这种重新定义实际上并没有反映出该命令\section在大多数文档类(您可能有\section*{Unnumbered}\section[Short]{Long})中的正常用法,但对于这种用例,它可以毫无错误地工作。

注意defernumbers选项。

\documentclass[swedish,a4paper,10pt]{europasscv}
\usepackage[T1]{fontenc}
\usepackage[backend=bibtex, style=numeric, sorting=ynt, defernumbers, maxnames=99]{biblatex}
\usepackage{europasscv-bibliography}

\addbibresource{biblatex-examples.bib}

\DeclareBibliographyCategory{aa}
\DeclareBibliographyCategory{bb}

\begin{document}

\begin{europasscv}

\addtocategory{aa}{sigfridsson}
\addtocategory{bb}{nussbaum}

\nocite{sigfridsson,nussbaum}

\renewcommand{\section}[2]{\ecvitem{#2}{}}
\printbibtabular[title=A,category=aa]
\printbibtabular[title=B,category=bb]

\end{europasscv}
\end{document}

简历

相关内容