
在寫數學結果時,我經常在決定實際結構之前記下幾個準證明。儘管如此,我還是喜歡保留這些替代草圖作為參考,以防我發現我的主要證明有問題,但不會弄亂我的文件或目錄。
在單一文件中實現此目的的最簡單方法是將這些內容移至 \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}