1 % \iffalse meta-comment
3 % Copyright (C) 1992-1994 by David Carlisle, Frank Mittelbach.
6 % This file is part of the validate package.
10 % You are not allowed to change this file. In case of error
11 % write to the email address mentioned in the file readme.val.
18 % Version 0.0, 28 May 1992
19 % Version 0.1, 18 Jun 1992 FMi small updates
20 % Version 1.0a, 28 Jun 1992 FMi small updates for distribution
21 % Version 1.0b, 1993/12/08 DPC update for LaTeX2e
22 % Version 1.0e, add config file.
23 % Version 1.0f, drop \errorstopmode from \loggingoutput
25 % \def\fileversion{v1.0e}
26 % \def\filedate{1994/05/19}
28 % This file should not be used as a package or class file,
29 % it should be \input.
31 % The scope of this \makeatletter will then be the rest of the
32 % document. Put TeX into scroll mode, and stop it showing the
33 % implementation details of macros in error messages.
39 % Use the same \showbox settings as 2.09, unless they are changed in
40 % the test file. (2e sets these to -1)
45 % drop \errorstopmode from \logginoutput so that testing doesn't stop
47 \gdef\loggingoutput{\tracingoutput\@ne
48 \showboxbreadth\maxdimen\showboxdepth\maxdimen}
51 % Start the test, after the optional \documentclass (or \documentstyle)
52 % \begin{document} commands with \START. All lines in the .log file
53 % before this will be ignored. It also prints a docstrip-style
54 % character table in the .tlg file so the .tlg file can easily be
55 % checked for email translations.
57 \def\START{\typeout{START-TEST-LOG^^J^^J
%
58 This is a generated file for the LaTeX2e validation system.
%
59 ^^J^^JDon't change this file in any respect.
%
64 \catcode`\^^A=
\catcode`\%
69 ^^
\endlinechar=`^^\^^J
73 %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
74 %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
75 %% Digits \0\1\2\3\4\5\6\7\8\9
76 %% Exclamation \! Double quote \" Hash (number) \#
77 %% Dollar \$ Percent \% Ampersand \&
78 %% Acute accent \' Left paren \( Right paren \)
79 %% Asterisk \* Plus \+ Comma \,
80 %% Minus \- Point \. Solidus \/
81 %% Colon \: Semicolon \; Less than \<
82 %% Equals \= Greater than \> Question mark \?
83 %% Commercial at \@ Left bracket \[ Backslash \\
84 %% Right bracket \] Circumflex \^ Underscore \_
85 %% Grave accent \` Left brace \{ Vertical bar \|
86 %% Right brace \} Tilde \~}
91 % The test should end with
92 % \END or \end{document}
95 %\let\@ED=\enddocument
96 \def\END{\typeout{END-TEST-LOG
}\@@@end
}
100 % After the \START should come declarations of the format and style
101 % options being used.
103 \def\FORMAT#1{\typeout{Format:
#1}%
104 \def\@tempa
{#1}\ifx\@tempa\@EJ
\else
105 \OMIT\@warning
{Declared format
#1,^^JActual format \@EJ
}\TIMO\fi}
107 % The old version got this information from everyjob,
108 % but that does not work with LaTeX2e as \everyjob is cleared.
109 \edef\@EJ
{\fmtname <
\fmtversion>
}
112 \def\AUTHOR#1{\typeout{Author:
#1}}
113 \def\ADDRESS#1{\typeout{Address:
#1}}
115 % Not all packages declare themselves to the log file, and we can not
116 % rely on TeX`s output as it includes full path names, and does not
117 % include version numbers etc. So for each package included give a
118 % declaration like: \PACKAGES{array v2.0d}
120 \def\STYLE#1{\typeout{Main Style:
#1}}%
121 \def\STYLEOPTIONS#1{\typeout{Style Options:
#1}}
124 % If The class or package is loaded with options, you may
125 % specify the options in the \CLASS (\PACKAGE) declaration. eg:
127 % \CLASS[german,a4page]{article v2.0 1994/01/02}
128 % \PACKAGE{ifthen v2.2 1993/11/12}
129 % \PACKAGE[dvips]{graphics v 3.8 1994/02/02}
131 \def\CLASS{\@ifnextchar
[\OPTCLASS\XCLASS}
132 \def\OPTCLASS[#1]#2{%
133 \typeout{Main Class:
#2^^J\@spaces Options:
#1}}
135 \typeout{Main Class:
#1}}
137 \def\PACKAGE{\@ifnextchar
[\OPTPACKAGE\XPACKAGE}
138 \def\OPTPACKAGE[#1]#2{%
139 \typeout{Package:
#2^^J\@spaces Options:
#1}}
141 \typeout{Package:
#1}}
145 % LaTeX2e always uses NFSS2 so new test files need not use
146 % \FONTSELECTION but it is retained for compatibility for test files
147 % written for 209/NFSS1.
149 \def\FONTSELECTION#1{%
150 \OMIT\@@warning
{\noexpand\FONTSELECTION obsolete.^^J
%
151 LaTeX2e always uses NFSS2
}\TIMO
152 \typeout{Font Selection:
#1}}
156 % Surround commands which produce irrelevant lines in the .log file by
160 \def\OMIT{\typeout{OMIT
}}
161 \def\TIMO{\typeout{TIMO
}}
163 % After the above declarations, and before the main tests, you may
164 % optionally `declare' all the commands in the `module' that you are
165 % about to test. These commands will be registered as defined,
166 % undefined or relaxed (ie \let to \relax). You may wish to declare
167 % commands not currently implemented, so that if they are added at a
168 % later stage, the test will fail, reminding someone to document the
169 % fact that the user interface has changed. So if you are testing
170 % array and tabular environments, you may wish do declare
171 % \extrarowheight. This is undefined in the curent latex, but would
172 % become defined if Mittelbach's array.sty was incorporated into
175 \def\declare@command
#1{%
176 \ifx#1\@undefined
\typeout{Undefined
\string#1}\else
177 \ifx#1\relax\typeout{Relaxed
\space\space\string#1}\else
178 \typeout{Defined
\space\space\string#1}\fi\fi}
181 % To allow testing of possible changes, we allow extra code to be read
182 % in before the test starts. The necessary code should be placed in a
186 \InputIfFileExists{test2e.cfg
}
187 {\typeout{^^J***^^Jtest2e.cfg in operation^^J***^^J
}}{}