Nomencl 带有 nomentbl 选项和目录中的自定义章节

Nomencl 带有 nomentbl 选项和目录中的自定义章节

我正在尝试使用nomentblnomencl包中的选项,同时向目录中添加一个编号章节,其中我为命名法章节标题指定了一个自定义名称。

如果不尝试使用该nomentbl选项,自定义章节部分可以正常工作,但使用该选项时,它会失败。输出显示如下错误:

l.4   \item &
         {a}&\begingroup acceleration\endgroup &\begingroup \meter/\seco...
./test.nls:4: Misplaced alignment tab character &.

thenomenclature我从其他问题中重新定义了这个) 我猜我的问题就在这里,但我不知道如何使它适应我的需要。

梅威瑟:

\documentclass[a4paper,12pt]{report}
\usepackage{lipsum}
\usepackage[nomentbl]{nomencl}
\makenomenclature

\makeatletter
\def\thenomenclature{%
\@ifundefined{chapter}%
{
    \section{\nomname}
    \if@intoc\addcontentsline{toc}{section}{\nomname}\fi%
}%
{
    \chapter{\nomname}
    \if@intoc\addcontentsline{toc}{chapter}{\nomname}\fi%
}%

\nompreamble
\list{}{%
    \labelwidth\nom@tempdim
    \leftmargin\labelwidth
    \advance\leftmargin\labelsep
    \itemsep\nomitemsep
    \let\makelabel\nomlabel}
}
\makeatother

\begin{document}

\tableofcontents

\chapter{Introduction}
\lipsum[1]

\nomenclature{COM}{Commissioning}{}{}%
\nomenclature{a}{acceleration}{\meter/\second\squared}{}%

\renewcommand{\nomname}{My title for definitions}
\printnomenclature

\end{document}

答案1

以下示例中的更改似乎修复了此问题。摘自文档。

\documentclass[a4paper,12pt]{report}
\usepackage{lipsum}
\usepackage[nomentbl]{nomencl}
\makenomenclature
\makeatletter
\def\thenomenclature{%
\@ifundefined{chapter}%
{
    \section{\nomname}
    \if@intoc\addcontentsline{toc}{section}{\nomname}\fi%
}%
{
    \chapter{\nomname}
    \if@intoc\addcontentsline{toc}{chapter}{\nomname}\fi%
}%

\nompreamble
\let\itemOrig=\item
\def\item{\gdef\item{\\}}%
\expandafter\longtable\expandafter{\@nomtableformat}%
}
\makeatother

\begin{document}

\tableofcontents

\chapter{Introduction}
\lipsum[1]

\nomenclature{COM}{Commissioning}{}{}%
\nomenclature{a}{acceleration}{\meter/\second\squared}{}%

\renewcommand{\nomname}{My title for definitions}
\printnomenclature%

\end{document}

相关内容