问题

问题

问题

多年来,我遇到了几个可以修复 (La)TeX 问题的软件包。似乎默认加载这些软件包是个好主意。但是,我找不到一个权威列表,给出应该加载哪些软件包的合格建议。有了这个问题,我希望你能填补这个空白。

回答什么

请给出尽可能完整的列表。你可以提及:

  • 包裹名字
  • 它解决的问题
  • 应在何种情况下使用
  • 可能的警告

第一次开始

核心修复

为了便于了解,以下是我所知道的一些软件包:

  • fixltx2e
    • 解决的问题:修复了 LaTeX 中的一些基本错误,这些错误不能包含在核心版本中,因为它们可能会破坏向后兼容性
    • 用于:任何 LaTeX 文档
    • 注意事项:在此包之前加载amsthmfootmisc在此包之后加载
  • mparhack
    • 解决的问题:修复了 marginpars 有时出现在错误一侧的问题
    • 用于:任何 LaTeX 文档(使用 marginpars)
    • 注意事项:???

修复文档类别

  • scrhack
    • 解决的问题:修复了与其他软件包的几个冲突
    • 用于:任何使用 KOMA 脚本类 (scrartcl、ETC。
    • 注意事项:???

数学修正

  • mathtools
    • 解决的问题:修复了几个问题amsmath并引入了新命令。加载而不是amsmath
    • 用于:任何包含数学的文档
    • 注意事项:???
  • lualatex-math
    • 解决的问题:修复使用 LuaLaTeX 排版数学时可能出现的一些问题
    • 用于:包含数学并使用 LuaLaTeX 编译的文档
    • 注意事项:???

字体

  • fix-cm
    • 解决的问题:修复原始计算机现代字体的问题
    • 用于:文档使用旧电脑现代字体
    • 注意事项:不要在新文件中使用,仅出于兼容性考虑才使用它。改用lmodern

可能有帮助/最佳实践

  • nag
    • 解决的问题:对不良做法发出警告
    • 用于:任何文件
    • 注意事项:如果你使用旧命令,可能会让你烦恼

答案1

一般来说,我同意这样的观点,你不应该包含尽可能多的扩展。谨慎使用它们,只在真正需要它们的情况下使用。我建议这样做是因为:

  • 你使用的包越多,生成文档所需的时间就越长
  • 您使用的包越少,在其他系统上编译的机会就越大,而其他系统可能没有安装您实际上可能没有使用的特殊包。
  • 你使用的包越多,阅读序言就越困难
  • 您使用的软件包越多,软件包冲突的可能性就越大。在某个软件包更新命令中,其他软件包依赖但有解决方法,这些解决方法可能会失败。

不过,我同意你的观点,有时尽管如此,包含以下软件包仍然很有用:将要用于每一个文件,例如使用 UTF-8 的 inputenc。请查看以下一些候选文件:人们在 LaTeX 中默认加载哪些包?

相关内容