# BibLaTeX incompatibility with titlesec

The titlesec package redefines user-level document division commands such as \chapter or \section. This approach is not compatible with internal command changes applied by the biblatex refsection and refsegment option settings described in § 3.1.2.1.

In contrast to this question, I cannot see any problem in my document. Nevertheless, I ask myself if there could be other problems I didn't see (until now).

So my question is the following: Will I run into problems if I use biblatex and titlesec like this:

\usepackage[
backend=biber,
style=alphabetic,
natbib=false,
maxbibnames=100,
maxcitenames=3,
hyperref=true,
isbn=false,
doi=false,
url=false]{biblatex}
% ...
\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


As stated in the BibLaTeX documentation, the incompatibility affects options refsection and refsegment. I do not use these options. Do I have to expect any unwanted side effects?

• Well, if you don't use (automatically generated) refsections or refsegments, you should be fine from a technical point of view. But titlesec alters the output of section/chapter headings and headers and footers, biblatex might not give the exact output you expect. You need to double-check the headers and footers on the bibliography pages generated by biblatex. – moewe Jan 30 '18 at 9:43

There are three points in biblatex.sty where \chapter, \section and friends are patched.

1. To enable the refsection option which automatically starts a new refsection each \chapter, \section, ... The default value is refsection=none in which case nothing needs to be patched.
2. To enable the refsegment option which automatically starts a new refsegment each \chapter, \section, ... The default value is refsegment=none in which case nothing needs to be patched.
3. To enable the citereset option which automatically resets all citation trackers each \chapter, \section, ... The default value is citereset=none in which case nothing needs to be patched.

See §3.1.1 Load-time Options, pp. 51-52 for more details on these options.

So the bit of the documentation you quote should read

The titlesec package redefines user-level document division commands such as \chapter or \section This approach is not compatible with internal command changes applied by the biblatex refsection, refsegment and citereset option settings described in §3.1.2.1.

This will be the case in the next release: https://github.com/plk/biblatex/commit/77141cd205df6348bb7c203705f4bcc535026d27.

From a technical point of view this is all you need to worry about for proper functionality of the package. If you don't use any of the three options, you should be fine.

But titlesec has influence not only on section and chapter headings, but also on headers and footers. It could be that biblatex's default headings don't play nicely along with titlesec definitions as expected. So you should definitely check the output of headers, footers and headings on the bibliography pages created by biblatex.

• For headers and footers I additionally use the fancyhdr package. It is loaded between biblatex and titlesec. Possibly, it would be a good idea to place fancyhdr after titlesec in order to overwrite titlesec's headers and footers? – lukasl1991 Jan 30 '18 at 11:05
• @lukasl1991 That might work, but the effects of loading order depends on the exact implementation of the packages. So you really need to double-check that the output is as you expect. – moewe Jan 30 '18 at 11:08
• If you use titlesec, why not use titleps rather than fancyhdr. It's generally so much simpler to use… – Bernard Jan 30 '18 at 11:09
• I'm customizing a LaTeX template provided by my university for my purposes. The template used fancyhdr and titlesec (and BibTeX instead of BibLaTex). – lukasl1991 Jan 30 '18 at 12:08
• @moewe What exactly do you mean with double-check? Simply pay attention if the output looks as I expect? – lukasl1991 Jan 30 '18 at 12:12