问题
多年来,我遇到了几个可以修复 (La)TeX 问题的软件包。似乎默认加载这些软件包是个好主意。但是,我找不到一个权威列表,给出应该加载哪些软件包的合格建议。有了这个问题,我希望你能填补这个空白。
回答什么
请给出尽可能完整的列表。你可以提及:
- 包裹名字
- 它解决的问题
- 应在何种情况下使用
- 可能的警告
第一次开始
核心修复
为了便于了解,以下是我所知道的一些软件包:
fixltx2e
- 解决的问题:修复了 LaTeX 中的一些基本错误,这些错误不能包含在核心版本中,因为它们可能会破坏向后兼容性
- 用于:任何 LaTeX 文档
- 注意事项:在此包之前加载
amsthm
;footmisc
在此包之后加载
mparhack
- 解决的问题:修复了 marginpars 有时出现在错误一侧的问题
- 用于:任何 LaTeX 文档(使用 marginpars)
- 注意事项:???
修复文档类别
scrhack
- 解决的问题:修复了与其他软件包的几个冲突
- 用于:任何使用 KOMA 脚本类 (scrartcl、ETC。)
- 注意事项:???
数学修正
mathtools
- 解决的问题:修复了几个问题
amsmath
并引入了新命令。加载而不是amsmath
- 用于:任何包含数学的文档
- 注意事项:???
- 解决的问题:修复了几个问题
lualatex-math
- 解决的问题:修复使用 LuaLaTeX 排版数学时可能出现的一些问题
- 用于:包含数学并使用 LuaLaTeX 编译的文档
- 注意事项:???
字体
可能有帮助/最佳实践
nag
- 解决的问题:对不良做法发出警告
- 用于:任何文件
- 注意事项:如果你使用旧命令,可能会让你烦恼
答案1
一般来说,我同意这样的观点,你不应该包含尽可能多的扩展。谨慎使用它们,只在真正需要它们的情况下使用。我建议这样做是因为:
- 你使用的包越多,生成文档所需的时间就越长
- 您使用的包越少,在其他系统上编译的机会就越大,而其他系统可能没有安装您实际上可能没有使用的特殊包。
- 你使用的包越多,阅读序言就越困难
- 您使用的软件包越多,软件包冲突的可能性就越大。在某个软件包更新命令中,其他软件包依赖但有解决方法,这些解决方法可能会失败。
不过,我同意你的观点,有时尽管如此,包含以下软件包仍然很有用:将要用于每一个文件,例如使用 UTF-8 的 inputenc。请查看以下一些候选文件:人们在 LaTeX 中默认加载哪些包?