编译相同的内容但使用不同的序言

编译相同的内容但使用不同的序言

我为我的学生写了笔记,我想创建不同的版本:一个简短的版本,用于打印,另一个长版本,用于通过互联网分发。因此对于相同的内容,我想用不同的行为编译两次。

以下是我所做工作的 MWE:

  • 第一章的内容是content1.tex
\begin{document}

This is some text.

\important{This is very important.}

\remark{This is a remark.}

\end{document}
  • 第 2 章的内容是content2.tex
\begin{document}

\important{This is very very very important.}

\remark{This is a useless remark.}

This is some text

\end{document}
  • 该文件full_version.tex包含第一组\newcommand
\documentclass{standalone}

\newcommand{\important}[1]{\textbf{#1}}
\newcommand{\remark}[1]{\textit{Remark: #1}}
  • 该文件short_version.tex包含第二组\newcommand
\documentclass{standalone}

\newcommand{\important}[1]{\textbf{#1}}
\newcommand{\remark}[1]{}

我的解决方案如下:为了编译content1带有full_version序言的,我在 Linux shell 上写入此命令:

 cat full_version.tex content1.tex | latex

它可以工作,但是不是很令人满意(许多奇怪的消息);并且依赖于 Linux-shell。

有没有更好的方法来实现这一点?也许使用预编译的前言?

答案1

您可以使用类似如下的方法进行编译:

latex -jobname="full_chapter1" "\input{full_version}\input{chapter1}"

相关内容