我使用集成代码knitr
创建文档。现在我想读出一些外部参数(保存在 TXT 或 CSV 文件中)并根据此文档中指定的条件创建文档。例如,在 CSV 文件中可能会有类似以下内容:LaTeX
R
documenttype \t report1
并且可能有两种以上的报告类型(例如 report1、report2、report3、report4、report5)。然后我必须从 CSV 文件中读出文档类型并根据报告类型执行不同的 LaTeX 代码(我可能会将 LaTeX 代码保存在文件 report1.rnw、report2.rnw 等中,然后从主文档中调用正确的代码)。我读过一种etoolbox
设置条件标志的方法。但是,我可以根据 CSV 或 TXT 文件的内容设置这些标志吗?那么,我是否可以先读出另一个文件的内容,提取标志,然后根据这些条件执行其他文件(这些条件不仅是真或假,而且是真正不同的标志)?还是我必须先执行此操作R
,然后执行相应的 knitr 文件,进而R
调用不同的R
源文件作为代码块?
答案1
这可能无法满足您的所有要求,但您可以根据 R 变量使用子文档的条件包含。示例:
<<output_a_child_doc, child=if (r_flag_is_true) "child_doc.Rnw">>=
@