我写了一些数学讲义,并对定义和定理进行了编号。现在我想创建一个较短的版本以用作讲义,不带证明和示例。但如果我删除一些,讲义和笔记的编号就不一样了。显然...
有没有一种解决方案,可以在不改变编号的情况下删除一些定义、定理和例子,而其余内容的编号仍然相同?
答案1
\startignore
一个简单的解决方案:用和把您想要在精简版本中忽略的语句括起来\stopignore
。
如果该行\abridgedtrue
被注释掉,那么文档将正常编译;否则,要忽略的定理将排版在一次性框中;这将增加计数器但不打印任何内容。
\documentclass{article}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}
\newif\ifabridged
%\abridgedtrue % remove the leading % for ignoring theorems
\ifabridged
\long\def\startignore{\setbox0=\vbox\bgroup}
\def\stopignore{\egroup}
\else
\let\startignore\relax
\let\stopignore\relax
\fi
\begin{document}
\begin{definition}
This is an important definition
\end{definition}
\begin{theorem}
This is an important theorem
\end{theorem}
\startignore
\begin{theorem}
This is a not so important theorem
\end{theorem}
\stopignore
\begin{theorem}
This is an important theorem
\end{theorem}
\end{document}