在 \chapter{} 和 \begin{description} 之前使用语法环境时出错

在 \chapter{} 和 \begin{description} 之前使用语法环境时出错

我希望你可以帮助我。

我正在使用一个空grammar环境,该环境包含在syntax包中名为的文件中appendix_c.tex,其内容如下:

\chapter{Modified version of the grammar of VHDL}\label{short-vhdl-grammar}

\begin{grammar}
\end{grammar}

然后,在一个名为的文件中acronyms.tex插入以下代码:

\chapter{List of acronyms}

\begin{description}
\item[ASIC] Application-Specific Integrated Circuit

\item[CORBA] Common Object Request Broker Architecture

\item[DCS] Digital Communications System
\item[DSML] Domain-Specific Modeling Language
...
\end{description}

我使用的acronym是 而不是description,但遇到了同样的问题。每次处理主文件时都会出现以下错误thesis.tex

! LaTeX Error: Something's wrong--perhaps a missing \item.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              

l.11 \begin{description}

其内容thesis.tex大致如下:

\documentclass[letterpaper, 12pt]{report}

\usepackage{acronym}
\usepackage{amssymb}
\usepackage{captcont}
\usepackage{graphicx}
\usepackage[hang]{subfigure}
\usepackage{rotating}
\usepackage[T1]{fontenc}
\usepackage[nounderscore]{syntax}

\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{3}

\linespread{1.3}

% Top margin
\setlength{\voffset}{0pt}
\setlength{\topmargin}{0pt}
% Heading space
\setlength{\headheight}{13pt}
\setlength{\headsep}{30pt}
% Left side margin
\setlength{\hoffset}{0pt}
\setlength{\oddsidemargin}{0.25in}
% Text dimensions
\setlength{\textheight}{596pt}
\setlength{\textwidth}{6in}
% Page number space
\setlength{\footskip}{27.10125pt}
% Margin notes
\setlength{\marginparsep}{0pt}
\setlength{\marginparwidth}{0pt}

\pagestyle{headings}

...

\begin{document}

\maketitle

\pagenumbering{roman}

\begin{abstract}
\end{abstract}

\renewcommand{\abstractname}{Resumen}

\begin{abstract}
\end{abstract}

\renewcommand{\abstractname}{Acknowledgments}

\begin{abstract}
\end{abstract}

\tableofcontents
\listoffigures
\listoftables

\newpage
\pagenumbering{arabic}

\include{./chapter_1/chapter_1}
\include{./chapter_2/chapter_2}
\include{./chapter_3/chapter_3}
\include{./chapter_4/chapter_4}
\include{./chapter_5/chapter_5}
\include{./chapter_6/chapter_6}
\include{./chapter_7/chapter_7}

\appendix

\include{./appendix_a/appendix_a}
\include{./appendix_b/appendix_b}
\include{./appendix_c/appendix_c}
\include{./acronyms/acronyms}

\bibliographystyle{abbrv}
\bibliography{bibliography}{}

\end{document}

问题似乎出在从appendix_c.tex和 的转换中acronyms.tex。有人知道发生了什么吗?由于这个问题,我甚至无法开始输入任何语法。我尝试摆脱环境,acronym但问题仍然存在。

答案1

不要让grammar环境为空;它是使用 构建的list,因此让它没有内容(在另一个类似列表的环境存在的情况下!)将触发错误。这个最小示例重现了错误

\documentclass{article}
\usepackage{syntax}

\begin{document}

\begin{grammar}
\end{grammar}

\begin{description}
\item[a]
\end{description}

\end{document}

您可以注释掉开始和结束环境的行:

%\begin{grammar}
%\end{grammar}

或者,如果由于某种原因你需要没有实际内容的环境,那么只需用它期望的东西填充它:

\documentclass{article}
\usepackage{syntax}

\begin{document}

\begin{grammar}
<statement> ::= <ident> ‘=’ <expr>
\end{grammar}

\begin{description}
\item[a]
\end{description}

\end{document}

你也可以使用更简单的方法,例如

\begin{grammar}
\item a
\end{grammar}

相关内容