blob: 9e8a305a84f0334b197ae89edd21f7dc43a0fc43 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Version control macros. These let you define environments whose contents
% will be optionally added to or deleted from the text when you run LaTeX.
% Usage: place either of the following near the start of your file:
% \includeversion{NAME}
% \excludeversion{NAME}
% Here, "NAME" is any name you choose. The first one indicates that text
% between \begin{NAME} and \end{NAME} will be processed in the normal way.
% The second indicates that text between \begin{NAME} and \end{NAME} will
% be totally deleted.
% You can define environments for as many versions as you want.
% A ``comment'' environment has already been pre-defined for you with
% \excludeversion{comment}; you can override this using \includeversion.
%
% Example:
% \includeversion{abridged}\excludeversion{unabridged}
% Text for the
% \begin{abridged}
% short
% \end{abridged}
% \begin{unabridged}
% long and really longwinded, opaque and boring
% \end{unabridged}
% version of the paper. Punctuation works correctly\begin{unabridged}
% because sphack is used\end{unabridged}.
% \begin{comment} This is deleted by default. \end{comment}
%
% Stephen Bellantoni 1990, loosely based on "annotation.sty" by Tom Hofmann.
%
% Additional Notes: This package still works in LaTeX2e. Large
% tracts of excluded text will likely cause a "TeX capacity exceeded"
% error though. See also comment.sty, verbatim.sty, optional.sty.
% -- Donald Arseneau April, 2000
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begingroup
\catcode`@=11\relax%
\catcode`{=12\relax\catcode`}=12\relax%
\catcode`(=1\relax \catcode`)=2\relax%
\gdef\includeversion#1(%
\expandafter\gdef\csname #1\endcsname%
()%
\expandafter\gdef\csname end#1\endcsname%
()%
)%
\gdef\excludeversion#1(%
\expandafter\gdef\csname #1\endcsname%
(\@bsphack\catcode`{=12\relax\catcode`}=12\relax\csname #1@NOTE\endcsname)%
\long\expandafter\gdef\csname #1@NOTE\endcsname ##1\end{#1}%
(\csname #1END@NOTE\endcsname)%
\expandafter\gdef\csname #1END@NOTE\endcsname%
(\@esphack\end(#1))%
)%
\endgroup
\excludeversion{comment}
|