在哪里可以找到 LaTeX 命令源代码?

在哪里可以找到 LaTeX 命令源代码?

我想知道在哪里可以找到原始命令的定义。也就是说,假设我想重新定义命令,\ref这样当我输入它时,不仅显示输入标签的编号,还显示“图形”或“表格”或其他任何指\label代的内容(这可能是一个愚蠢的例子,但请尝试理解我的观点)。

嗯,我想象着我可以调整 \ref给出了代码,但由于我对 LaTeX 了解不多,或者我很懒,我不知道该怎么做更新它凭空。

那么,有没有什么地方可以查看原始代码,并进行一些修改来解决这种情况呢?

感谢大家的关注。

答案1

有多种方法可以解决这个问题,主要取决于您想要的细节程度。

获取任何命令的原始代码定义都很简单;有一个 TeX 原语\meaning,它将扩展为宏的当前一级扩展(即,它不会尝试扩展其中的那些宏)。如果您使用的是复杂的包设置,或者宏的定义正在发生变化,这是最可靠的方法。否则,您可以使用 Perl 脚本节省一些时间texdef

$ texdef -t latex large

\large:
\long macro:->\@setfontsize \large \@xiipt {14}

请注意,这仅解析 TeX 的输出,如下所示,但对于简单查询来说它可以节省大量时间。

意义输出

请参阅其maninfo页面以获取有关该工具的文档,或使用texdoc texdef,这将带我们进入新的水平。

由于 TeX 是一种排版语言,因此许多软件包作者/团队也非常优秀、透彻的作家。该texdoc工具将采用其论点并搜索所有可用的文档以找到您的术语。现在,它不会搜索深度但在宽度;它不会搜索内容所有可用的文档。(那会花很长时间!)我的大部分需求都可以通过 来满足texdoc;通常您可以提供命令所属的包名称,然后:您的文档就会在您的默认阅读器中打开。

LaTeX 内核的文档也可以通过 获得texdoc source2e(以及精简版、未完成的macros2e);至于该文档的细节 — 嗯 — 简直就是乌龟文。请参阅man texdocinfo texdoc和 — 您猜对了 —texdoc texdoc了解有关此工具的更多信息。

如果texdoc这还不能满足你,那么最后的手段就是纸质书籍和谷歌,印刷书籍一般仅汇编已经免费提供的信息。

相关内容