我的 MWE 称为 texfile.tex 是:
% Paper template
\documentclass[reprint,aps,amsmath,amssymb,amsfonts]{revtex4-2}
%%% External packages
\usepackage{graphicx,bm,xspace,dcolumn,mcite}
%%% Document settings if required
%\include{common-defs}
% define page size
\setlength{\textheight}{235mm}
\setlength{\topmargin}{6mm}
\setlength{\headheight}{0mm}
\setlength{\headsep}{0mm}
\setlength{\footskip}{15mm}
\setlength{\textwidth}{163mm}
\setlength{\oddsidemargin}{1mm}
\setlength{\evensidemargin}{1mm}
% width of abstract
\newlength{\abstwidth}
\setlength{\abstwidth}{\textwidth}
\addtolength{\abstwidth}{-25mm}
% allow figure and text to better coexist on same page
\renewcommand{\floatpagefraction}{0.8}
\renewcommand\labelitemi{$\circ$}
%%% Begin document
\begin{document}
% set sloppy attitude to line breaks
\sloppy
\pagestyle{empty}
\headnote{
\begin{flushright}
\small{Preprint no:\\}
\hspace{-2cm}
\end{flushright}
}
\title{paper title}
\author{author1, author2}
\email[autho.r1@email]{autho.r1@email}
\affiliation{Institute}
\abstract{Some text here }
\textit{Introduction} -more text and we cite this reference \cite{author:2022now}.
\biblipgraphy{bibfile}
\end{document}
我在根目录中有 revtex4-2.cls、revsymb4-2.sty 和 aps4-2.rtx 文件。我使用的是 ubuntu 20.04。我遇到了错误pdflatex texfile.tex
。 Class revtex4-2 Error: The cite package cannot be used with revtex4-2
我还尝试使用列出的参考文献而\bibitem{}
不是外部 .bib 文件(这不是我最喜欢的,我想保留 .bib 文件)来编译它,但这并没有解决问题。但是 bibfile 有一个author:2022now
条目,类型为
@article{ParticleDataGroup:2012pjm,
author = "Beringer, J. and others",
collaboration = "Particle Data Group",
title = "{Review of Particle Physics (RPP)}",
reportNumber = "SLAC-REPRINT-2014-001",
doi = "10.1103/PhysRevD.86.010001",
journal = "Phys. Rev. D",
volume = "86",
pages = "010001",
year = "2012"
}
我该如何编译文档而不出现这些错误?我查看了一些关于这个问题的旧帖子,但没有帮助。
答案1
编译时我在日志中发现
! Class revtex4-2 Error: The mcite package cannot be used with revtex4-2.
See the revtex4-2 class documentation for explanation.
Type H <return> for immediate help.
...
l.29 \begin{document}
I cannot continue. You must remove the \usepackage\ statement that caused that package to be loaded.
这似乎是不言自明的,的功能由/mcite
提供(不一定以相同的方式),因此可以很容易地被删除。revtex
natbib
\usepackage{mcite}
在日志文件的帮助下进行一些其他更改:
纠正拼写错误\bibiography
! Undefined control sequence.
l.52 \biblipgraphy
{bibfile}
\headnote
删除似乎未定义的用途(可能来自common-defs.tex
?)
! Undefined control sequence.
l.35 \headnote
{
并用所提供的内容替换引文ParticleDataGroup:20212pjm
。
不幸的是,最后一个错误有点难以理解,但修复起来也同样简单
! You can't use `\end' in internal vertical mode.
\enddocument ...cument/end}\deadcycles \z@ \@@end
l.53 \end{document}
在 revtex 中,抽象是一个环境,因此用作\abstract{Foo}
,latex 会迷失方向寻找\end{abstract}
,正确的用法是
\begin{abstract}
Some text here
\end{abstract}
现在可以编译了,但是缺少标题内容,因为这是按\maketitle
which 排版的,应该插入到abstract
环境之后。