在我用 `renewcommand` 命令更新 `report` 类中的 `chapter` 命令后,参考书目标题打印出奇怪的星号 (*)

在我用 `renewcommand` 命令更新 `report` 类中的 `chapter` 命令后,参考书目标题打印出奇怪的星号 (*)

我使用reportclass 进行工作,并根据自己的喜好更新了所有分段命令,包括命令chapter,这显然会影响 biblatex 在工作末尾打印参考书目部分标题的方式。下面是我重新定义命令chapter以使其工作的方式:

\renewcommand\chapter[1]{
    % Counter Step:
    \refstepcounter{chapter}
    
    % Chapter Heading:
    \begin{center}
    \textbf{\thepart\thechapter\enspace #1}
    \end{center}
    
    % Update Table of Contents:
    \addcontentsline{toc}{chapter}{\normalsize\numberline{\thechapter}#1}
    \chaptermark{#1}
}

以下是它造成的损害: 在此处输入图片描述

突然,标题分裂成两个标题:标题“II *”和其下方的实际“引用的作品”,以纯文本形式左对齐。此外,我不想在参考书目章节中使用计数器,我不知道它们为什么突然出现,默认情况下“引用的作品”没有计数器。我怎样才能在不破坏参考书目标题的情况下更新章节命令?


根据 Frabjous 的回答,我重写了chapter命令以处理 的带星号和不带星号版本chapter。但是,我的uncountedChapter子句被调用为 的不带星号版本chapter(相反),这非常令人困惑。也许我不明白它是如何@ifstar工作的:

% The new `chapter`
\renewcommand\chapter[1]{\@ifstar\uncountedChapter\countedChapter}
% Uncounted (i.e. starred)
\newcommand\uncountedChapter[1]{
    \begin{center}
        \textbf{#1}
    \end{center}
    
    \addcontentsline{toc}{chapter}{\normalsize\numberline #1}
    \chaptermark{#1}
}
% Counted (i.e. nonstarred)
\newcommand\countedChapter[1]{
    \refstepcounter{chapter}
    
    \begin{center}
        \textbf{\thepart\thechapter\enspace #1}
    \end{center}
    
    \addcontentsline{toc}{chapter}{\normalsize\numberline{\thechapter}#1}
    \chaptermark{#1}
}

奇怪的是,结果是: 在此处输入图片描述

最后,删除新的参数数量chapter即可解决问题。

% The new `chapter`
\renewcommand\chapter{\@ifstar\uncountedChapter\countedChapter}

答案1

默认情况下,biblatex 创建的参考书目标题\printbibliography使用命令,\chapter*该命令在其正常定义下会创建不带数字的章节标题。通过重新定义\chapter它,使其不具有带星号的版本,您已经使参考书目标题命令本质上\chapter使用参数进行调用*,然后“引用的作品”就出现在后面,不再是参数\chapter

Luckylybiblatex允许您更改参考书目标题的工作方式。请参阅包装文档,第 99 页。你可能想要类似这样的内容:

\defbibheading{bibliography}[Works Cited]{%
    \begin{center}
    \textbf{#1}
    \end{center}
}

(可能带有或不带有要添加到目录的命令。)我会让你解决细节问题。

另一种方法是使用类似标题安全改变分段命令的格式而不弄乱带星号的版本。

相关内容