我想从 amsart 的目录中排除命名法。
\documentclass[15pt]{amsart}
\usepackage{nomencl}
\renewcommand{\nomname}{List of Notations}
\makenomenclature
\makeindex
\setcounter{tocdepth}{1}
\begin{document}
\tableofcontents
\nomenclature[000]{$Hi$}{World}
\makenomenclature
\printnomenclature[1in]
\section{world}
\end{document}
答案1
该amsart
课程努力包括每一个目录中的节单元,即使是未编号的。
通过一些技巧就有可能实现你想要的结果。
% arara: pdflatex
% arara: nomencl
% arara: pdflatex
\documentclass{amsart}
\usepackage{nomencl}
\usepackage{etoolbox}
\makeatletter
% copy the formatting of section titles
\let\nomencl@section\section
% if the level is greater than 1000, then amsart
% doesn't include the section's title in the toc
\patchcmd{\nomencl@section}{{1}}{{1001}}{}{}
% patch \thenomenclature to call \nomencl@section
% instead of \section*
\patchcmd{\thenomenclature}
{\section*}
{\nomencl@section}
{}{}
\makeatother
\renewcommand{\nomname}{List of Notations}
\makenomenclature
\setcounter{tocdepth}{1}
\nomenclature[000]{$Hi$}{World}
\begin{document}
\tableofcontents
\printnomenclature[1in]
\section{world}
\end{document}
这些arara
指令使得编译文档变得简单(但如果您不使用 arara 也不会造成任何损害)。
请注意,您的第二\makenomenclature
条指令\makeindex
什么也不做,所以我将其删除了。
答案2
有时,需要(或希望)更改或省略目录中的标题。由于 ams 文档类默认甚至包含目录中带星号的章节(和部分等),因此必须明确进行此类更改。
ams 作者常见问题解答中有一条条目是“如何省略或更改目录中的标题?“。它告诉如何创建一个命令\SkipTocEntry
(定义取决于是否hyperref
涉及;给出了两个版本)并使用它来修改目录。这是删除条目的代码。
在序言中,
\DeclareRobustCommand{\SkipTocEntry}[5]{}
(如hyperref
不涉及,则改为[5]
。[4]
)
在将条目写入.toc
文件的命令之前,插入以下行
\addtocontents{toc}{\SkipTocEntry}
在本例中,在之前插入这一行\printnomenclature[1in]
应该可以完成这项工作,但由于 latex 有时会延迟某些命令,直到真正需要它们之后,所以需要通过实验来检查。(例如,如果将SkipTocEntry
放在某一\include
行之前,它将不会被处理,直到\include
d 文件完成后才会被处理,这就太晚了;在这种情况下,必须\SkipTocEntry
将 放在\include
d 文件中。)
请参阅完整的作者常见问题解答条目以了解更多详细信息。