LaTeX Packages

amssymb and bm

bm, if used, must come after amssymb; otherwise Error: Too many symbol fonts declared ensues.

amssymb, mathdesign and stmaryrd

amssymb and stmaryrd break if used together (\circledS command defined by both). This particular command is also defined by mathdesign. To overcome this, before loading amssymb, do \let\circledS\undefined.

biblatex

Requires etoolbox (provides \patchcmd). This means that commands that require etoolbox can be placed after loading biblatex, and they will work, even if etoolbox has never been \usepackage’d in the current file. However, for readability it is better to just use \usepackage.

mathdesign

\usepackage[bitstream-charter]{mathdesign}
\renewcommand\scdefault{sc}

The second line ensures that small caps continue to function… (otherwise they break).

minted

Loads etoolbox (which provides \patchcmd).

xcolor

The documentclass line contains one option, dvipsnames*, that belongs to the xcolor package, but setting it only when loading xcolor might cause conflicts with other packages that also automagically load that package (namely tikz). Having that option given to documentclass avoids the possibility of any such conflict. (What this particular option does, incidently, is to load a set colours larger then the basic set, which contains the colour MidnightBlue, used for hyperlinks. The starred version loads colour on demand, i.e. requires a \providecolors command.)

June 18, 2022.