回忆录 3.7e:将参考书目视为一个部分,而不是一个章节

回忆录 3.7e:将参考书目视为一个部分,而不是一个章节

更新:正如指出的那样莫威在下面的评论中,‘罪魁祸首’不是memoir,而是biblatex。这一变化是在 3.0 版中引入的biblatex,因此,除非\printbibliography[heading=subbibliography]指定,否则参考书目将作为一章打印。


使用该类memoir(v. 3.7c),并使用该article选项,可以将参考书目格式化为一个章节。

例如:

\documentclass[article]{memoir}

\usepackage[style=authoryear-comp,backend=biber]{biblatex}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@article{Bli74,
  author = {Blinder, Alan S.},
  year = {1974},
  title = {The economics of brushing teeth},
  journaltitle = {Journal of Political Economy},
  volume = {82},
  number = {4},
  pages = {887--891},
}
\end{filecontents}

\bibliography{\jobname}

\counterwithout{section}{chapter}
\makechapterstyle{mydefault}{
\addtocounter{secnumdepth}{2}
\setsecheadstyle{\raggedright\scshape}
\setsubsecheadstyle{\raggedright\itshape}
\setsubsubsecheadstyle{\raggedright\itshape}
}

\chapterstyle{mydefault}


\begin{document}

\section{First section}

This paper really is very good: \cite{Bli74}.

\printbibliography

\end{document}

得出以下结果:

在此处输入图片描述

memoir但是,使用v 3.7e 则会产生以下结果:

在此处输入图片描述

通过查看.aux文件,以下行表明参考文献部分现在被视为一个章节:

\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {chapter}{References}{1}}

使用 3.7c 的文件中的相应位.aux改为:

\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{References}{1}}

这是有意为之吗?我在最新版本的手册中找不到任何证据表明这是有意为之。

memoir我应该补充一点,升级到 2015 时,我切换到了 的新版本。texlive我还没有尝试看看如果使用memoir2015的旧版本会发生什么texlive,所以我一直切换到texlive2014 以便使用 的旧版本memoir。但我的猜测是问题不在于较新的texlive发行版,而在于 的较新版本memoir

无论如何,我希望能够强制回忆录将参考书目视为一个部分,至少在使用该article选项时。我尝试明确重新定义\bibsection,如 v 3.7e 手册第 300 页所建议的那样,但这似乎没有什么区别::

\documentclass[article]{memoir}

\usepackage[style=authoryear-comp,backend=biber]{biblatex}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@article{Bli74,
  author = {Blinder, Alan S.},
  year = {1974},
  title = {The economics of brushing teeth},
  journaltitle = {Journal of Political Economy},
  volume = {82},
  number = {4},
  pages = {887--891},
}
\end{filecontents}

\bibliography{\jobname}

\counterwithout{section}{chapter}
\makechapterstyle{mydefault}{
\addtocounter{secnumdepth}{2}
\setsecheadstyle{\raggedright\scshape}
\setsubsecheadstyle{\raggedright\itshape}
\setsubsubsecheadstyle{\raggedright\itshape}
}

\chapterstyle{mydefault}



\begin{document}

\renewcommand{\bibsection}{%
   \section{\bibname}
   \prebibhook}

\section{First section}

This paper is very good: \cite{Bli74}.

\printbibliography

\end{document}

答案1

biblatex软件包禁用或重新定义了 许多功能memoir,使其变得\renewcommand{\bibsection}{...}无用。

手册biblatex在第 3.12.2 节中指出:与回忆录类一起使用:

当 Biblatex 与 memoir 类一起使用时,大多数用于调整参考书目的类功能均无效。请改用此包的相应功能(§§ 3.6.2、3.6.8、3.6.9)。不要重新定义 memoir 的 \bibsection,而要使用 \printbibliography 和 \defbibheading 的标题选项(§§ 3.6.2 和 3.6.8)。不要使用 \prebibhook 和 \postbibhook,而要使用 \printbibliography 和 \defbibnote 的 prenote 和 postnote 选项(§§ 3.6.2 和 3.6.9)。所有默认标题都在加载时进行调整,以便与此类的默认布局很好地融合。

重新定义\defbibheading等以改为\section\section*代替!

\documentclass[article]{memoir}

\usepackage[style=authoryear-comp,backend=biber]{biblatex}



\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@article{Bli74,
  author = {Blinder, Alan S.},
  year = {1974},
  title = {The economics of brushing teeth},
  journaltitle = {Journal of Political Economy},
  volume = {82},
  number = {4},
  pages = {887--891},
}
\end{filecontents}

\bibliography{\jobname}

\counterwithout{section}{chapter}
\makechapterstyle{mydefault}{
\addtocounter{secnumdepth}{2}
\setsecheadstyle{\raggedright\scshape}
\setsubsecheadstyle{\raggedright\itshape}
\setsubsubsecheadstyle{\raggedright\itshape}
}

\chapterstyle{mydefault}


\defbibheading{bibliography}[\bibname]{%
\section*{#1}%
\markboth{#1}{#1}}


\AtBeginDocument{%
  \renewcommand{\bibname}{References}
}

\begin{document}
\tableofcontents

\section{First section}

This paper is very good: \cite{Bli74}.


\printbibliography

\end{document}

相关内容