独立于经理修改书目标题

独立于经理修改书目标题

我正在尝试编写一个自定义类文件,我想修改参考书目布局的样式,例如在参考书目前放置一个空白页,将其设置为单倍行距等。请注意,我不想更改书目样式(即条目的格式),只想更改参考书目部分的样式。为了清楚起见,假设我想在在参考书目之后,尽管原则上我想运行任意命令。

问题在于,我想独立于用户决定如何创建参考书目来执行此操作,并且我想以用户所需的最少额外文本来完成此操作。

一个简单而丑陋的解决方案是仅定义用户需要放在参考书目之前和之后的宏。例如

% class.cls
\newcommand\beforebib{\newpage}
\newcommand\afterbib{\newpage}

% main.tex
\beforebib
% Create bib here e.g. \printbibliography, \bibliography{ref}, \begin{thebibliography}\end{thebibliography}
\afterbib

这需要在用户空间创建宏,然后人们必须记住,所以我不满意。

另一种选择是列举所有已知类型的书目渲染,例如

% class.cls (note: this has to be called after biblatex is imported, but I've handled that)
\ifdefined\printbibliography
    \let\@oldprintbib\printbibliography
    \renewcommand\printbibliography{\newpage\@oldprintbib\newpage}
\fi
\ifdefined % etc...

这是我目前正在做的事情,但它很容易出错,而且不太美观。理想情况下,每个参考书目包都会调用一些通用宏,我可以将其挂载到其中来更改样式,但要找到有关如何实际处理参考书目的文档却很困难。

相关内容