根据文档中的命令加载包

根据文档中的命令加载包

我有一个自定义类,我从中取出了一些“重”组件,并将其放入自己的包中(即加载和配置 minted、chemfig)。目前,如果我开始做数学题、写化学题、包括代码块等,我需要记住添加类选项或加载我的一个子包。

我真正想做的是在运行所有\import/\input命令之后,在文档中搜索相关命令,然后根据需要加载相关的子包,这样我就可以获得全套功能,而不必考虑我需要哪些子包,或者遭受启用它们全部造成的性能损失。

TLDR;

我想根据要在文档上运行的搜索字符串动态确定是否需要一个包(例如\begin{minted}),然后根据需要加载它们。

有人知道这是否可能吗?

答案1

TeX 从不将文档保存在内存中,它只是逐行处理输入,因此它无法提前扫描以查看包中命令的使用情况。

您可以使用 grep 或 perl 等工具进行外部搜索,查看文档并猜测所需的包,尽管这种方法不太可能可靠。像 minted 这样的东西很可能通过简单的搜索就可以看到,因为逐字参数必然位于顶层,因此\begin{minted} 很可能在文档中明确显示,但如果您发现,如果没有庞大且难以维护的查找表,详细列出数千个命令和定义它们的可能包,\Question您将无法轻松知道要加载stix2包(或stix包,或从 pdflatex 切换到 lualatex 或 xelatex 并使用unicode-math)。

相关内容