我如何将文档源代码递归添加到附录中?

我如何将文档源代码递归添加到附录中?

为了好玩,我想把源代码作为附录。是的,这有点多余,但令人费解。

我通常有如下结构的文档:

main.tex
includes: part_1.tex
          includes: subsection_a.tex
          includes: subsection_b.tex
          .... etc
includes: part_2.tex
.... etc ....
includes: appendix.tex

我想以编程方式遍历我的文档(作为一个整体),并提取除代码清单之外的所有内容的源代码,然后将提取的源代码作为代码清单包含在附录中。有人知道从哪里开始吗?

答案1

您可以使用文档条程序来执行此操作。这仍然是一个完全技术性的解决方案!

但是,不要像以前那样拆分文档,而是使用\input使用文档条将所有文件按正确顺序合并在一起。(当然,您仍然可以使用\input它来找出在多个位置出现的文本。)

文档条允许您选择性地包含/排除部分代码。对于您的列表,您可以编写

A common operating system is basically coded like this:
%<*listings>
\begin{lstlisting}[language={[Sharp]C}]
try
{
    do_weired_stuff();
}
catch (Exception e)
{
    show_blue_screen();
}
\end{lstlisting}
%</listings>

现在,如果你告诉文档条\generate{\file{doc.tex}{\from{doc.dtx{listings}}}它将写入完整的代码,如上所示doc.tex(当然假设示例在文件中doc.dtx)。如果listings省略,<*listings>则和之间的所有内容</listings>之间的所有内容。这样您就可以制作文档条将两个文档合并在一起,然后\lstinputlisting将后者放在前者的末尾。

我做了一个简单的演示,基本上就是你帖子的结构。我似乎无法将其上传到这里,但你可以从这里

不幸的是,我还没有找到解决 cookies 问题的办法。如果其他人有想法,请发布!

相关内容