我从以下链接获取了 STY 文件(elsarticle.zip)- http://www.elsevier.com/wps/find/authorsview.authors/elsarticle#models
我正在使用程序包,我想将关键词添加到我的论文中。但是,每当我添加程序包时,都会出现错误。
! Extra }, or forgotten \endgroup.
\endkeyword ->\par \egroup
l.34 \end{keyword}
这是我的 latex 代码,我已将其删除以查看是否有任何错误。如果我删除程序包,它就可以正常工作。或者,如果我删除关键字部分,它也可以很好地编译。但是,我需要它们两者。有人可以帮忙吗?
\documentclass[preprint,1p]{elsarticle}
\usepackage{etex}
\usepackage{amssymb,amsmath}
\usepackage{cite}
\usepackage{array}
\usepackage{url}
\usepackage{multirow}
\usepackage{listings}
\usepackage{epstopdf}
\usepackage{color}
\usepackage{tikz}
\usepackage{program}
\usepackage{pgfplots}
\usepackage[tight,footnotesize]{subfigure}
\usepackage{comment}
\usepackage{soul}
\graphicspath{{./Figures/}}
\journal{Microprocessors and Microsystems}
\begin{document}
\begin{frontmatter}
\title{Title of my report}
\begin{keyword}
keyword1 \sep keyword2 \sep keyword3 \sep keyword4
\end{keyword}
\end{frontmatter}
\end{document}
答案1
您可以使用以下技巧来保留语法以进行加载program
:
\makeatletter
\let\elsarticle@keyword\keyword
\g@addto@macro\frontmatter{\let\keyword\elsarticle@keyword}
\makeatother
\usepackage{program}
那么你仍然可以说
\begin{frontmatter}
\title{Title of my report}
\begin{keyword}
keyword1 \sep keyword2 \sep keyword3 \sep keyword4
\end{keyword}
\end{frontmatter}
并在文档正文中使用\keyword
按定义。我认为,如果不修改语法,您提交论文的期刊的文字编辑会更高兴。program
答案2
keyword
在加载program
定义其自己的宏的包之前,可以使用不同的名称保存环境宏\keyword
:
\let\elskeyword\keyword
\let\endelskeyword\endkeyword
\usepackage{program}
...
\begin{frontmatter}
\title{Title of my report}
\begin{elskeyword}
keyword1 \sep keyword2 \sep keyword3 \sep keyword4
\end{elskeyword}
\end{frontmatter}