BibLaTeX 与 titlesec 不兼容

BibLaTeX 与 titlesec 不兼容

首先:我知道问题以及有关 BibLaTeX 文档中的声明:

titlesec 包重新定义了用户级文档划分命令,例如 \chapter 或 \section。此方法与 § 3.1.2.1 中描述的 biblatex refsection 和 refsegment 选项设置所应用的内部命令更改不兼容。

相反这个问题,我没在文档中发现任何问题。尽管如此,我还是问自己是否还有其他我至今未发现的问题。

所以我的问题是:如果我像这样使用 biblatex 和 titlesec 会遇到问题吗:

\usepackage[
backend=biber,
style=alphabetic,
natbib=false,
maxbibnames=100,
maxcitenames=3,
hyperref=true,
isbn=false,
doi=false,
url=false]{biblatex}
\addbibresource{literature/lit.bib}
% ...
\usepackage{titlesec}
\setcounter{secnumdepth}{3}
\titleformat{\chapter}[display]%
    {\huge\center\bf}%
    {\large\mdseries CHAPTER \thechapter}%
    {0cm}{}[\vspace{2ex}\titlerule]
\titlespacing*{\chapter}{0pt}{0ex}{8ex}
\titleformat{\subsubsection}{\normalsize\bfseries}{\thesubsubsection}{.75em}{}
\titleformat{\paragraph}[runin]{\bfseries}{}{0pt}{}[.]
\titleformat{\subparagraph}[runin]{\itshape}{}{0pt}{}[.]
% ...
\printbibliography

正如 BibLaTeX 文档中所述,不兼容性会影响选项 refsection 和 refsegment。我不使用这些选项。我是否需要预料到任何不良副作用?

答案1

biblatex.sty其中,有三点\chapter\section并且朋友已经修补。

  1. 要启用自动启动每个refsection新项目的选项,,...默认值为,在这种情况下无需修补任何内容。refsection\chapter\sectionrefsection=none
  2. 要启用自动启动每个refsegment新项目的选项,,...默认值为,在这种情况下无需修补任何内容。refsegment\chapter\sectionrefsegment=none
  3. 要启用citereset自动重置所有引用跟踪器的选项,每个\chapter,,\section...默认值为,citereset=none在这种情况下无需修补任何内容。

参见 §3.1.1加载时选项,第 51-52 页,了解有关这些选项的更多详细信息。

因此,您引用的文档部分应该阅读

titlesec软件包重新定义了用户级文档划分命令,例如\chapter或这种方法与应用的内部命令更改和§3.1.2.1中描述的选项设置\section 不兼容。biblatex refsectionrefsegmentcitereset

在下一版本中就会出现这种情况:https://github.com/plk/biblatex/commit/77141cd205df6348bb7c203705f4bcc535026d27

从技术角度来看,您只需要担心这些,以确保软件包正常运行。如果您不使用这三个选项中的任何一个,那么应该没问题。

titlesec不仅对章节标题有影响,而且对页眉和页脚也有影响。可能是biblatex的默认标题与定义不能titlesec按预期很好地配合。因此,您一定要检查 创建的参考书目页面上的页眉、页脚和标题的输出biblatex

相关内容