包 newfloat 与 hyperref 和算法包的加载顺序正确吗?

包 newfloat 与 hyperref 和算法包的加载顺序正确吗?

hyperref最后必须加载大量文档。具体来说,以下是这些特定包的正确加载顺序:

\usepackage{float}
\usepackage{hyperref}
\usepackage{algorithm}

现在,我遇到了一点麻烦。我正在使用minted带有选项的包newfloat=true,即使用newfloat包。

加载顺序建议是否保持不变?即

\usepackage[newfloat=true]{minted}  % <-- Replacement for the float package?
\usepackage{hyperref}
\usepackage{algorithm}

或者我还应该另外加载该float包?(这听起来不对。)

答案1

装载顺序通知在这方面有点令人困惑。不过,加载float, 前newfloat已加载,因为newfloat与其兼容。

虽然不再被提及现行newfloat手册, 一个旧版本讨论了newfloat的实现细节。第 5.10.1 节概述了newfloatfloat部分内容如下:

如果float使用该包,我们\float@exts也会用我们的文件扩展名填充。由于此列表将用于插入章节间隙,因此我们仅添加为章节间隙配置的扩展名。

newfloat可能无法取代floatalgorithm包,因此最好也加载它。

因此,您只需执行以下操作即可:

\usepackage{float}
\usepackage[newfloat=true]{minted}
\usepackage{hyperref}
\usepackage{algorithm}

相关内容