如何禁用外部文档使用的包?

如何禁用外部文档使用的包?

Doxygen 使用自己的doxygen.sty样式文件,但我想保留放置 Doxygen 输出的文档的样式。因此,我更愿意以某种方式关闭其设置。例如,使用let命令,我可以保留由 重新定义的命令的旧定义renewcommand。但是卸载包(即sectsty)或以某种方式禁用其命令(如)怎么办allsectionsfont

编辑: 我试图避免任何修改,doxygen.sty因为它是自动生成的,所以下次我更改源时它会被覆盖,因此需要更新 Doxygen 生成的文档。

编辑2: 选项-wdoxygen作用正如其确切所述:将页眉、页脚和样式写入命令行中指定的文件。所有这些名称对应的是……好吧,请考虑refman.texDoxygen 工具生成的最终文档(即)的以下结构:

  1. 标题;
  2. 身体;
  3. 页脚;
  4. usepackage此外,风格标题

我奋斗的是身体作为文件的一部分标题/页脚毕竟,我可以自己提供。我想保留文档的文本结构,即为input每个源文件生成的章节和 ted 文件,,,class等等struct

此外,Doxygen 的样式文件中仍然存在重新定义几个命令(例如paragraphsubparagraph)的问题。我想禁用它们以保持主文档的样式一致。

答案1

例如,如果是doxygen.sty加载sectsty,则只需在文档序言中写入

\makeatletter
\@namedef{[email protected]}{}
\newcommand{\allsectionsfont}[1]{}
\makeatother

在 之前\usepackage{doxygen}。这样,sectsty当 LaTeX 在处理 时找到相应的请求时,它会认为 已经加载doxygen.sty。当在 LaTeX\allsectionsfont{\sffamily}中找到 时,doxygen.sty将只有上述定义可用,因此该命令将不起作用。

答案2

希望这能回应 Seamus 的评论。

\usepackage{afterpackage}
\makeatletter
% \@namedef{[email protected]}{} 
\AfterPackage{sectsty}{\let\allsectionsfont\@gobble}
% Do the same for all the commands you wish to disable, but you have to know 
% the arguments the commands expect.
\makeatother 

相关内容