我想在文件中编写一些像这样的 Latex 代码main.tex
:
\documentclass{scrbook}
...
\tableofcontents
\chapter{Chap 1}
...
\section{Sec 1}
\begin{comment-summary}
Some summary text.
\end{comment-summary}
\begin{comment}
Some comment.
\end{comment}
Real text.
\subsection{Sub 1}
...
(它不一定需要通过\begin
/ \end
,它也可以是单个命令。不确定什么会更简单、更干净。我认为 begin/end 可能更干净。)
当我正常编译它时,我希望只看到“真实文本”,而不是注释中的部分(comment
和comment-summary
)。
我可以有另一个 Latex 文件summary.tex
来导入此main.tex
文件。当我编译此 Latex 文件时,我希望只看到来自的文本comment-summary
,即“一些摘要文本”。但不看到其他部分,尤其是“真实文本”。但是,我确实想看到部分结构和完整的目录。
这可能吗?
我想相关的问题是如何发表评论,比如这里。我猜comment
包裹对此非常有用。但这只是回答了我如何完全忽略内容(对吗?)。
我想当我定义comment
和时comment-summary
,我可以这样做\ifnotdefined{comment-summary} \define{comment-summary} <ignore it> ...
(或者无论如何,这在 Latex 中都可以正常工作...)。并且在中summary.tex
,我可以预先定义comment-summary
为不忽略它,而实际上只是打印它。所以这是合理的直接。
但是,这仍然会使“真实文本”保持不变。我不知道如何删除它。或者这有可能吗?我考虑过main.tex
只收集评论摘要,并将其写入临时文件或某个变量,然后在它通过后输出它。我认为这是可能的,但我不知道如何在 Latex 中做这样的事情。
或许这个问题关于注释掉整个部分与此有关。虽然它使用了奇怪的自定义部分,而且我也不想隐藏特定部分,但基本上是所有内容,只是删除了注释摘要。
或许这个问题关于执行的逆操作comment
也非常相关。但那里给出的解决方案是通过额外的预处理,看起来特定于 tikz。
请注意,我在这里使用了comment
和comment-summary
作为示例,comment
最有可能始终被删除(除非我可能只想在某个时候打印那些,谁知道呢……), 和comment-summary
(和只有那个)将用于这样的summary.tex
。但整个方法应该是通用的。可以有很多变化,比如一个 Latex 文件,您可以在其中打印所有内容(详细模式等),等等。您还可以添加更多标签,例如comment-todos
,等等。
请注意,我不太关心间距问题,当我在另一个段落的一部分内或其他奇怪的地方使用注释时可能会出现间距问题,正如讨论的那样这里。就我而言,评论、评论摘要等始终是单独的段落。我认为在这种情况下不会有任何问题(对吗?)。