我使用该pagenote
软件包将尾注放在每章末尾。例如,请参阅此问题的可接受答案:如何在每章末尾获得尾注?
简而言之:
\chapter{First Chapter}
some text
\printnotes*
我怎样才能更新\chapter
命令以便不必\printnotes*
在每一章末尾都包含它?
我不想让\printnotes*
命令在命令之前发生,\chapter
因为这样我会在第一章之前得到笔记(这没有意义)。
答案1
\pretocmd
这是使用提供的解决方案etoolbox
包裹。
\documentclass{book}
\usepackage{etoolbox}
\usepackage{pagenote}
\makepagenote
\begin{document}
\chapter{Chap 1}
\pretocmd{\chapter}{\printnotes*}{}{}
\chapter{Chap 2}
\chapter{Chap 3}
\chapter{Chap 4}
\printnotes*
\end{document}
正如您所见,该命令可以在初始之后使用\chapter
。
编辑#1
由于我对上面的代码进行了更正,因此\printnotes*
在最后一章结束时需要另一个命令。
编辑#2
借助逻辑,在序言中自动化该过程可能会更方便。
\documentclass{book}
\usepackage{etoolbox}
\usepackage{pagenote}
\makepagenote
\renewcommand*{\notedivision}{\section*{\notesname\ to chapter~\thechapter}}
\renewcommand*{\pagenotesubhead}[2]{}
\pretocmd{\chapter}{%
\ifnum\value{chapter}>0\relax\printnotes*\fi%
}{}{}
%\pretocmd{\backmatter}{\printnotes*}{}{}
\AtEndDocument{\printnotes*}
\begin{document}
\chapter{Chap 1}
\chapter{Chap 2}
\chapter{Chap 3}
\end{document}
backmatter
在存在该行的情况下\pretocmd{\backmatter}{\printnotes*}{}{}
可以取消注释而\AtEndDocument
可以省略。
答案2
如果您确定要将所有尾注放在每章末尾,则此处给出的解决方案有效。但是,如果您决定将所有尾注都恢复到末尾,该怎么办?如果您在前言中也有一些尾注,如\chapter*{Preface}
在 之前所示,该怎么办\mainmatter
?
etoolbox
我已经扩展了这个解决方案,以便我使用切换按钮 来做出选择\newtoggle{chapternotes}
。
\usepackage{etoolbox}
\newtoggle{chapternotes}
\toggletrue{chapternotes}
%\togglefalse{chapternotes}
\iftoggle{chapternotes}{%
% using chapternotes
\renewcommand{\notedivision}{\section*{\notesname\ to Chapter~\thechapter}}%
\renewcommand{\pagenotesubhead}[2]{}%
% \pretocmd{\chapter}{\printnotes*}{}{}%
\pretocmd{\chapter}{%
\ifnum\value{chapter}>0\relax\printnotes*\fi%
}{}{}
\pretocmd{\mainmatter}{\printnotes*}{}{}% Notes in Preface
\pretocmd{\backmatter}{\printnotes*}{}{}%
}{%
% using notes at end of book
\renewcommand{\notedivision}{\chapter*{\notesname}}
}
在我的主文件中,我添加了另一个文件\iftoggle
来决定是否在最后打印注释,
\backmatter
% Endnotes, whether in chapters or all at the end
\iftoggle{chapternotes}{%
\relax % using chapternotes
}{%
% using notes at end of book
\addcontentsline{toc}{chapter}{Notes}
\printnotes
}
相关问题,将脚注改为尾注,但允许使用一些旧脚注,介绍了如何将部分脚注切换为尾注。