summaryrefslogtreecommitdiff
path: root/macros/plain/contrib/misc/rcs.tex
blob: da6e55769da959e9e274bd8602e90291381ff5c4 (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
\catcode`\@=11
%%
%% REVISION CONTROL [by kris@diku.dk].
%%
%% \thedate
%% \therevision
%%	These contain the date and revision of this paper, set by the
%%	following revision control commands.  Default to the current date and
%%	to nothing.
%%
%% \RCSdate$...$
%% \RCSrevision$...$
%%	Modify the date and revision of the paper as given by the RCS
%%	variables Date and Revision (not inserted above because then RCS
%%	would interfere with this comment).  Use before \Draft.
%%
%% \Draft
%% \ifdraft...\else...\fi
%%	\Draft prepends ``Draft'' to \therevision and sets \drafttrue.
%%
\edef\today{\ifcase\month\or January\or February\or March\or April\or
  May\or June\or July\or August\or September\or October\or November\or
  December\fi\space\number\day, \number\year}
\def\eat@#1{}
%%
\def\thedate{\today}
\def\therevision{}
%%
\def\RCSdate$Date{%
 \def\next@{%
  \ifx\next$\let\nextii@=\eat@\else\let\nextii@=\RCSdate@\fi\nextii@}%
 \futurelet\next\next@}
\def\RCSdate@: #1/#2/#3 #4 ${\xdef\thedate{%
  \ifcase#2\or January\or February\or March\or April\or
   May\or June\or July\or August\or September\or October\or November\or
   December\fi\space\ignorespaces#3, \ifnum#1<100\relax19\fi#1}}
%%
\def\RCSrevision$Revision{%
 \def\next@{%
  \ifx\next$\let\nextii@=\eat@\else\let\nextii@=\RCSrevision@\fi\nextii@}%
 \futurelet\next\next@}
\def\RCSrevision@: #1 ${\xdef\therevision{[#1]}}
%%
\newif\ifdraft
\def\Draft{\xdef\therevision{Draft \therevision}\drafttrue}
%%
\catcode`\@=\active