带标签的段落

带标签的段落

我希望能够标记文档中的某些段落,并且在使用 PdfLaTeX 编译文档时,选择要在文档中保留哪些标签。更清楚地说,我想定义一个环境\begin{labeledparagraph}[label]...\end{labeledparagraph}label作为的参数labeledparagraph)和一个函数\selectlabels{label1,label2,label4}(例如),我会将其放在文档的序言中。

以下是一个例子:

\documentclass[a4paper,10pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{comment}

\selectlabels{label1,label2,label4}

\begin{document}

\begin{labeledparagraph}[label1]
  Paragraph1
\end{labeledparagraph}

\begin{labeledparagraph}[label2]
  Paragraph2
\end{labeledparagraph}

\begin{labeledparagraph}[label3]
  Paragraph3
\end{labeledparagraph}

\begin{labeledparagraph}[label4]
  Paragraph4
\end{labeledparagraph}

\end{document}

当编译该文档时,我希望我的 PDF 文档仅包含第 1、2 和 4 段。这样做的目的是避免仅对\begin{comment}...\end{comment}我想从输出文档中排除的每个段落使用。

环境labeledparagraph可能是这样的:

\newenvironment{labeledparagraph}[1]{\begin{#1}}{\end{#1}}

相当于\selectlabels{label1,label2,label4}

\includecomment{label1}
\includecomment{label2}
\excludecomment{label3}
\includecomment{label4}

但我不知道如何自动完成(标签数量可能很大)。谢谢你的帮助!

答案1

% arara: pdflatex

\documentclass{article}
\usepackage{tagging}
\usetag{1,2,4}

\begin{document}
\tagged{1}{
111111111111111111111111

111111111111111111111111

111111111111111111111111
}

\tagged{2}{
222222222222222222222222

222222222222222222222222

222222222222222222222222
}

\tagged{3}{
333333333333333333333333

333333333333333333333333

333333333333333333333333
}

\tagged{4}{
444444444444444444444444

444444444444444444444444

444444444444444444444444
}
\end{document}

在此处输入图片描述

当然,您可以\selectlabels{}根据需要定义自己的命令。如果您想像在 MWE 中一样使用环境,则可以使用\begin{taggedblock}{<taglist>}...\end{taggedblock}

相关内容