我目前正在写论文,但参考书目有问题。我想为每一章都添加参考书目。我添加了命令\usepackage[sectionbib]{chapterbib}
。参考书目现在位于目录列表中,但不是章节。我如何将其更改为sectionbib
而\section
不是\section*
?
答案1
这是另一个解决方案,带有包tocbibind
。
加载chapterbib
为
\usepackage[sectionbib]{chapterbib}
并tocbibind
作为
\usepackage[nottoc,numbib]{tocbibind}
该选项nottoc
避免将目录插入到目录本身中,而该选项numbib
将参考书目转换为无星号的\section
。
MWE(借用自 Harish 的):
\documentclass{report}
\usepackage{filecontents}
\begin{filecontents*}{chap1.tex}
\chapter{First Chapter}
\section{A section}
\blindtext
\cite{book-full}
\bibliographystyle{plain}
\bibliography{xampl}
\end{filecontents*}
\begin{filecontents*}{chap2.tex}
\chapter{Second Chapter}
\section{Another section}
\blindtext
\cite{article-full}
\bibliographystyle{plain}
\bibliography{xampl}
\end{filecontents*}
\usepackage[sectionbib]{chapterbib}
\usepackage{blindtext}
\usepackage[nottoc,numbib]{tocbibind}
\begin{document}
\tableofcontents
\include{chap1}
\include{chap2}
%% this too becomes a section not \chapter*
\bibliographystyle{plain}
\bibliography{xampl}
\end{document}
输出:
答案2
来自chapterbib
文档
报告和书籍文档类通常将参考书目视为未编号的章节(\chapter*),这对于章节中的参考书目来说不太好。 您可以指定 \usepackage[sectionbib]{chapterbib} 将参考书目从 \chapter* 转换为 \section*,并在目录和页眉中有一个条目。根文件中的参考书目仍为 \chapter*。 [sectionbib] 选项会修改现有的 thebibliography 环境(或 \bibsection 命令,如果已存在),因此参考书目中的其他格式应该保持不变。 另一方面,如果您已经定义了非标准参考书目,或者您希望对它们进行编号,则直接重新定义 \thebibliography 可能更容易,而无需对现有命令进行任何棘手的修改。
或者,您可以直接在文档前言中使用 \sectionbib 命令。它需要两个参数:分段命令和分段级别的名称。例如,[sectionbib] 选项执行 \sectionbib{\section*}{section}。同样,为了获得最大的控制权,最好完全重新定义 \thebibliography。
我们按照手册进行操作,并thebibliography
使用\patchcmd
etoolbox
\usepackage{etoolbox}
\patchcmd{\thebibliography}{\chapter*}{\section}{}{}
完整代码:
\documentclass{report}
\usepackage{filecontents}
\begin{filecontents*}{chap1.tex}
\chapter{First Chapter}
\section{A section}
\blindtext
\cite{book-full}
\bibliographystyle{plain}
\bibliography{xampl}
\end{filecontents*}
\begin{filecontents*}{chap2.tex}
\chapter{Second Chapter}
\section{Another section}
\blindtext
\cite{article-full}
\bibliographystyle{plain}
\bibliography{xampl}
\end{filecontents*}
\usepackage{chapterbib}
\usepackage{blindtext}
\usepackage{etoolbox}
\patchcmd{\thebibliography}{\chapter*}{\section}{}{}
\begin{document}
\tableofcontents
\include{chap1}
\include{chap2}
%% this too becomes a section not \chapter*
\bibliographystyle{plain}
\bibliography{xampl}
\end{document}
警告
我已经在代码中包含了一个带有注释的示例。如果您希望在最后的根文件中有一个集体参考书目,它也会被格式化为一个部分(而不是\chapter*
)。希望您不需要它。