在撰写数学结果时,我经常在决定实际结构之前记下几个准证明。尽管如此,我喜欢保留这些替代草图作为参考,以防我发现主要证明存在问题,但这样做不会弄乱我的文件或目录。
在单个文档中实现此目的的最简单方法是将这些内容移至 \end{document} 行下方,此时 LaTeX 会默默忽略它。但是,现在我正在处理一个更大的项目,我对每个部分都使用 \include{} 命令,现在可以不再使用此解决方法。我知道我可以注释掉(即在每行前面加上符号 %)这些额外的内容,但这会使整个文件变得混乱。我知道我也可以将它们全部移动到其他文件,但这太麻烦了,因为我通常不再需要这些东西了(如果需要,我宁愿在当前文档的末尾搜索)。
是否有人知道类似“\end{include}”的命令,它会告诉编译器默默忽略当前文件中剩余的内容?
例子。在一个文件中,我的工作流程如下所示:最初,我写下我想到的几种替代方案,例如
\begin{document}
sketchA
sketchB
sketchC
\end{document}
这样,我就可以始终以完整的 LaTeX 格式阅读每个草图。然后,假设我选择了选项 C,我将这个输入得很好,并将其余部分移到 \end{document} 命令下方:
\begin{document}
niceC
\end{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
sketchA
sketchB
现在,如果我发现 niceC 中有一个大错误,我并没有失去之前的想法,而且这个过程也没有花费我任何额外的努力。
如果所有这些都发生在一个文件中输入然而,在另一个文档中,我目前没有类似简单、整洁且不需要切换文件的替代方案。而且我不太喜欢“注释掉”替代方案,因为 sketchA 可能已经有一些注释行,如果我注释掉注释,当我想恢复旧内容时,我总是冒着意外取消注释太多次的风险。
所以我的问题是,如果我的输入文件如下所示,是否有任何命令 \X 可以忽略草图部分
niceC
\X
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
sketchA
sketchB
?
答案1
使用命令“\endinput”显示文件的明确结束。LaTeX 编译器不会读取此命令后的任何内容。为了清楚起见,我建议您按如下方式使用它
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput %%%%%%%%%%%%%%%%% Every thing ignored after this line
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
答案2
如果您将不同的草图放在单独的文件中,则可以根据需要输入:
\documentclass{article}
\usepackage{tikz}
\newcommand{\MultInput}[2]{%
\foreach \i in {#1} {%
\pgfmathparse{{#2}[\i-1]}%
\input{\pgfmathresult}}%
}
\begin{document}
% inputs sketchB.tex
\MultInput{2}{"sketchA","sketchB","sketchC"}
% inputs sketchC.tex then sketchA.tex
\MultInput{3,1}{"sketchA","sketchB","sketchC"}
\end{document}