Update LuaTeX testfiles for ^@ change
[latex2e.git] / trunk / base / ltnews.cls
bloba9e5f7651135a935bef515c141c7fbbd30dcc52e
1 % \iffalse meta-comment
3 % Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
4 % The LaTeX3 Project and any individual authors listed elsewhere
5 % in this file.
6 %
7 % This file is part of the LaTeX base system.
8 % -------------------------------------------
9 %
10 % It may be distributed and/or modified under the
11 % conditions of the LaTeX Project Public License, either version 1.3c
12 % of this license or (at your option) any later version.
13 % The latest version of this license is in
14 % http://www.latex-project.org/lppl.txt
15 % and version 1.3c or later is part of all distributions of LaTeX
16 % version 2005/12/01 or later.
18 % This file has the LPPL maintenance status "maintained".
20 % The list of all files belonging to the LaTeX base distribution is
21 % given in the file `manifest.txt'. See also `legal.txt' for additional
22 % information.
24 % The list of derived (unpacked) files belonging to the distribution
25 % and covered by LPPL is defined by the unpacking scripts (with
26 % extension .ins) which are part of the distribution.
28 % \fi
29 % Filename: ltnews.cls
30 % Author: Alan Jeffrey et al
31 % Version: 1.03
33 % This is the LaTeX2e document class for the `LaTeX News' information
34 % sheet which comes with every LaTeX release. It may be useful for
35 % newsletters, or as an example of how simple newsletters can be set
36 % with LaTeX. The changes log is at the end of the file.
38 % Copyright 1994 1995 1996 1997 1999 2000 2001 2002 2003 2004
39 % Alan Jeffrey and the LaTeX3 project.
41 % This is a LaTeX2e document class.
43 \NeedsTeXFormat{LaTeX2e}
45 \ProvidesClass{ltnews}[2017/03/07 v1.05 Standard LaTeX class]
47 % The configuration file, used for passing options.
49 \InputIfFileExists{ltnews.cfg}{%
50 \ClassInfo{ltnews}{Using local configuration file}%
51 }{%
52 \ClassInfo{ltnews}{No local configuration file}%
55 % The lw35fonts option uses the fonts:
57 % Adobe Palatino (main text)
58 % Adobe Helvetica Bold (headings)
59 % Courier (program listings)
60 % Mathptm math italic (2e logo)
61 % Mathptm symbol font (AMS logo)
63 % The type1fonts option uses the fonts:
65 % Adobe Utopia (main text)
66 % URW Grotesk-T Bold (headings)
67 % Lucida Sans typewriter (program listings)
68 % Mathptm math italic (2e logo)
69 % Mathptm symbol font (AMS logo)
71 % The Adobe Palatino fonts:
73 \DeclareFontFamily{OT1}{ppl}{}
74 \DeclareFontShape{OT1}{ppl}{m}{n}{<-> pplr7t}{}
75 \DeclareFontShape{OT1}{ppl}{bx}{n}{<-> pplb7t}{}
76 \DeclareFontShape{OT1}{ppl}{m}{sc}{<-> pplrc7t}{}
77 \DeclareFontShape{OT1}{ppl}{m}{it}{<-> pplri7t}{}
78 \DeclareFontShape{OT1}{ppl}{m}{sl}{<-> pplro7t}{}
80 \DeclareFontFamily{T1}{ppl}{}
81 \DeclareFontShape{T1}{ppl}{m}{n}{<-> pplr8t}{}
82 \DeclareFontShape{T1}{ppl}{bx}{n}{<-> pplb8t}{}
83 \DeclareFontShape{T1}{ppl}{m}{sc}{<-> pplrc8t}{}
84 \DeclareFontShape{T1}{ppl}{m}{it}{<-> pplri8t}{}
85 \DeclareFontShape{T1}{ppl}{m}{sl}{<-> pplro8t}{}
87 % The Adobe Helvetica fonts:
89 \DeclareFontFamily{OT1}{phv}{}
90 \DeclareFontShape{OT1}{phv}{m}{n}{<-> s*[0.86] phvr7t}{}
91 \DeclareFontShape{OT1}{phv}{b}{n}{<-> phvb7t}{}
93 \DeclareFontFamily{T1}{phv}{}
94 \DeclareFontShape{T1}{phv}{m}{n}{<-> s*[0.86] phvr8t}{}
95 \DeclareFontShape{T1}{phv}{b}{n}{<-> phvb8t}{}
97 % The Adobe Courier fonts:
99 \DeclareFontFamily{OT1}{pcr}{\hyphenchar\font=-1}
100 \DeclareFontShape{OT1}{pcr}{m}{n}{<-> s*[0.89] pcrr7t}{}
102 \DeclareFontFamily{T1}{pcr}{\hyphenchar\font=-1}
103 \DeclareFontShape{T1}{pcr}{m}{n}{<-> s*[0.89] pcrr8t}{}
105 % The Utopia fonts:
107 \DeclareFontFamily{OT1}{put}{}
108 \DeclareFontShape{OT1}{put}{m}{n}{<-> putr7t}{}
109 \DeclareFontShape{OT1}{put}{m}{sc}{<-> putrc7t}{}
110 \DeclareFontShape{OT1}{put}{m}{it}{<-> putri7t}{}
112 % The URW Grotesk fonts:
114 \DeclareFontFamily{OT1}{ugq}{}
115 \DeclareFontShape{OT1}{ugq}{b}{n}{<-> ugqb7t}{}
117 % The Lucida Sans Typewriter fonts:
119 \DeclareFontFamily{OT1}{hlct}{\hyphenchar\font=-1}
120 \DeclareFontShape{OT1}{hlct}{m}{n}{<-> hlct7t}{}
122 % The mathptm math italic:
124 \DeclareFontFamily{OML}{ptmcm}{\skewchar\font=127}
125 \DeclareFontShape{OML}{ptmcm}{m}{it}{<-> zptmcmrm}{}
127 % The mathptm symbol font:
129 \DeclareFontFamily{OMS}{pzccm}{}
130 \DeclareFontShape{OMS}{pzccm}{m}{n}{<-> zpzccmry}{}
132 % The TeX logo for use with Palatino.
134 \def\pplTeX{T\kern-.15em\lower.4ex\hbox{E}\kern-.1emX\@}
136 % The LaTeX logo for use with Palatino.
138 \DeclareRobustCommand{\pplLaTeX}{L\kern-.3em
139 {\setbox0\hbox{T}%
140 \vbox to\ht0{\hbox{%
141 \csname S@\f@size\endcsname
142 \fontsize\sf@size\z@
143 \math@fontsfalse\selectfont
145 \vss}%
147 \kern-.07em
148 \TeX}
150 % The TeX logo for use with Utopia.
152 \def\putTeX{T\kern-.1667em\lower.4ex\hbox{E}\kern-.075emX\@}
154 % The LaTeX logo for use with Utopia.
156 \DeclareRobustCommand{\putLaTeX}{L\kern-.2em
157 {\setbox0\hbox{T}%
158 \vbox to\ht0{\hbox{%
159 \csname S@\f@size\endcsname
160 \fontsize\sf@size\z@
161 \math@fontsfalse\selectfont
163 \vss}%
165 \kern-.05em
166 \TeX}
168 % The TeX logo for use with Helvetica.
170 \def\phvTeX{T\kern-.1em\lower.4ex\hbox{E}\kern-.05emX\@}
172 % The LaTeX logo for use with Helvetica.
174 \DeclareRobustCommand{\phvLaTeX}{L\kern-.3em
175 {\calculate@math@sizes
176 \setbox0\hbox{T}%
177 \vbox to\ht0{\hbox{%
178 \csname S@\f@size\endcsname
179 \fontsize\sf@size\z@
180 \math@fontsfalse\selectfont
182 \vss}%
184 \kern-.05em
185 \TeX}
187 % The TeX logo for use with Grotesk.
189 \def\ugqTeX{T\kern-.1em\lower.4ex\hbox{E}\kern-.05emX\@}
191 % The LaTeX logo for use with Grotesk.
193 \DeclareRobustCommand{\ugqLaTeX}{L\kern-.15em
194 {\calculate@math@sizes
195 \setbox0\hbox{T}%
196 \vbox to\ht0{\hbox{%
197 \csname S@\f@size\endcsname
198 \fontsize\sf@size\z@
199 \math@fontsfalse\selectfont
201 \vss}%
203 \kern-.01em
204 \TeX}
206 % The TeX logo for use with CMSS.
208 \def\cmssTeX{T\kern-.2em\lower.4ex\hbox{E}\kern-.05emX\@}
210 % The LaTeX logo for use with CMSS.
212 \DeclareRobustCommand{\cmssLaTeX}{L\kern-.22em
213 {\setbox0\hbox{T}%
214 \vbox to\ht0{\hbox{%
215 \csname S@\f@size\endcsname
216 \fontsize\sf@size\z@
217 \math@fontsfalse\selectfont
219 \vss}%
221 \kern-.17em
222 \TeX}
224 % The eTeX logo.
226 \DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX}
228 % Switch off some of the article options.
230 \DeclareOption{a4paper}{\OptionNotUsed}
231 \DeclareOption{a5paper}{\OptionNotUsed}
232 \DeclareOption{b5paper}{\OptionNotUsed}
233 \DeclareOption{letterpaper}{\OptionNotUsed}
234 \DeclareOption{legalpaper}{\OptionNotUsed}
235 \DeclareOption{executivepaper}{\OptionNotUsed}
236 \DeclareOption{landscape}{\OptionNotUsed}
237 \DeclareOption{twoside}{\OptionNotUsed}
238 \DeclareOption{titlepage}{\OptionNotUsed}
239 \DeclareOption{onecolumn}{\OptionNotUsed}
241 % The CM fonts
243 \newcommand{\@titlefont}{\normalfont\Huge}
244 \newcommand{\@indiciafont}{\normalfont\footnotesize}
245 \newcommand{\@headingfont}{%
246 \large\sffamily\slshape
247 \let\LaTeX\cmssLaTeX\let\TeX\cmssTeX
249 \newcommand{\@subheadingfont}{%
250 \normalsize\sffamily\slshape
251 \let\LaTeX\cmssLaTeX\let\TeX\cmssTeX
254 % The LW 35 fonts option
256 %% The size of the haeding font was reduced (from 14pt) here to
257 %% try and ensure that the pagination does not change whilst the
258 %% line count remains the same.
259 \DeclareOption{lw35fonts}{%
260 \renewcommand{\rmdefault}{ppl}%
261 \renewcommand{\ttdefault}{pcr}%
262 \renewcommand{\sfdefault}{phv}%
263 \renewcommand{\@titlefont}{%
264 \fontsize{50}{60}\fontfamily{phv}\fontseries{b}\selectfont
265 \let\LaTeX\phvLaTeX\let\TeX\phvTeX
267 \renewcommand{\@indiciafont}{%
268 \fontsize{8}{10}\fontfamily{ppl}\fontshape{it}\selectfont
270 \renewcommand{\@headingfont}{%
271 \fontsize{12}{13.5}\fontfamily{phv}\fontseries{b}\selectfont
272 \let\LaTeX\phvLaTeX\let\TeX\phvTeX
274 \renewcommand{\@subheadingfont}{%
275 \fontsize{10}{12}\fontfamily{phv}\fontseries{b}\selectfont
276 \let\LaTeX\phvLaTeX\let\TeX\phvTeX
278 \DeclareSymbolFont{letters}{OML}{ptmcm}{m}{it}%
279 \DeclareSymbolFont{symbols}{OMS}{pzccm}{m}{n}%
280 \let\LaTeX\pplLaTeX
281 \let\TeX\pplTeX
282 \AtEndOfClass{\addtolength\textheight\baselineskip}%
285 % The type 1 fonts option
287 \DeclareOption{type1fonts}{%
288 \renewcommand{\rmdefault}{put}%
289 \renewcommand{\ttdefault}{hlct}%
290 \renewcommand{\sfdefault}{ugq}%
291 \renewcommand{\@titlefont}{%
292 \fontsize{50}{60}\fontfamily{ugq}\fontseries{b}\selectfont
293 \let\LaTeX\ugqLaTeX\let\TeX\ugqTeX
295 \renewcommand{\@indiciafont}{%
296 \fontsize{8}{10}\fontfamily{put}\fontshape{it}\selectfont
298 \renewcommand{\@headingfont}{%
299 \fontsize{12}{14}\fontfamily{ugq}\fontseries{b}\selectfont
300 \let\LaTeX\ugqLaTeX\let\TeX\ugqTeX
302 \renewcommand{\@subheadingfont}{%
303 \fontsize{10}{12}\fontfamily{ugq}\fontseries{b}\selectfont
304 \let\LaTeX\ugqLaTeX\let\TeX\ugqTeX
306 \renewcommand{\verbatim@font}{%
307 \fontsize{9}{12}\fontfamily{hlct}\selectfont
309 \DeclareSymbolFont{letters}{OML}{ptmcm}{m}{it}%
310 \DeclareSymbolFont{symbols}{OMS}{pzccm}{m}{n}%
311 \let\LaTeX\putLaTeX
312 \let\TeX\putTeX
315 % The default action for any option is to pass it to the article
316 % class.
318 \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
320 % Execute the options.
322 \ProcessOptions
324 % Load the article class.
326 \LoadClass[twocolumn,oneside]{article}
329 % The package url.sty takes care of breaking url's that are too long
330 % to fit in a two-column design
331 % but it might not be available on all installations.
332 % Therefore we need to check if the file url.sty can be found.
334 % Also, it uses a verbatim input mode so Chris does not use it for
335 % urls as he wants to control layout and use macros within it. Also
336 % he usuually wants to hand-craft the line-breaks in such text.
338 \IfFileExists{url.sty}{%
339 \RequirePackage{url}
340 \newcommand\email{\begingroup \Url}}{%
341 \newcommand*{\url}[1]{\texttt{##1}}
342 \newcommand*{\email}[1]{\texttt{##1}}
345 % The package html.sty defines a number of things needed for the LaTeX
346 % to HTML conversion; noticeable the latexonly and htmlonly
347 % environments.
348 % Again, let's check if it exists and if not provide necessary stubs
350 \IfFileExists{html.sty}{%
351 \RequirePackage{html}}{%
352 % When it couldn't be found, provide some necessary stuff...
353 \newenvironment{latexonly}{}{}
354 \newcommand{\latex}[1]{##1}
356 % Code for excludecomment from html.sty
357 % by Robin Fairbairns, 22 September 1997
359 \newcommand\@gobbleenv{\let\reserved@a\@currenvir\@gobble@nv}
360 \long\def\@gobble@nv##1\end##2{%
361 \def\reserved@b{##2}%
362 \ifx\reserved@a\reserved@b
363 \edef\reserved@a{\noexpand\end{\reserved@a}}%
364 \expandafter\reserved@a
365 \else
366 \expandafter\@gobble@nv
369 \newcommand{\excludecomment}[1]{%
370 \csname newenvironment\endcsname{##1}{\@gobbleenv}{}}
371 \excludecomment{htmlonly}
375 % If pdf is being produced add some info to the pdf file and use hyperref.
376 % But move this after other packages are, possibly, loaded.
377 % LuaTeX support.
378 \ifx\pdfoutput\@undefined
379 \let\pdfoutput\outputmode
380 \protected\def\pdfinfo{\pdfextension info }
382 \ifx\pdfoutput\@undefined\else
383 \ifx\pdfoutput\relax\else
384 \ifcase\pdfoutput\else
385 \pdfinfo{%
386 /Title (LaTeX News)
387 /Author (The LaTeX Project)
389 \IfFileExists{hyperref.sty}{%
390 \RequirePackage[hidelinks]{hyperref}}{}
394 % This should be further enhanced so that links other than those
395 % naively generated by \url can be produced in the pdf file.
397 %% Please DO NOT load any packages after this point.
401 % The page style.
403 \pagestyle{empty}
404 \setlength{\parindent}{1em}
405 % Why \textwidth?
406 \setlength{\rightskip}{0pt plus \textwidth}
407 \setlength{\@rightskip}{\rightskip}
408 \setlength{\parfillskip}{0pt plus 2\textwidth}
409 \setlength{\columnsep}{2em}
411 % The text size, which tries to work with both A4 and letter paper
412 % sizes.
414 \setlength{\textheight}{230mm}
415 \setlength{\topmargin}{-10mm}
417 \setlength{\textwidth}{180mm}
418 \setlength{\oddsidemargin}{-10mm}
420 % \maketitle parameters.
422 \newcommand{\publicationmonth}{\renewcommand{\@month}}
423 \newcommand{\@month}{\ClassError{ltnews}
424 {No \protect\publicationmonth~given}\@eha}
426 \newcommand{\publicationyear}{\renewcommand{\@year}}
427 \newcommand{\@year}{\ClassError{ltnews}
428 {No \protect\publicationyear~given}\@eha}
430 \newcommand{\publicationissue}{\renewcommand{\@issue}}
431 \newcommand{\@issue}{\ClassError{ltnews}
432 {No \protect\publicationissue~given}\@eha}
433 \newcommand{\issuename}{Issue}
435 \newcommand{\indicia}{\renewcommand{\@indicia}}
436 \newcommand{\@indicia}{%
437 \LaTeXNews, and the \LaTeX{} software,
438 are brought to you by the \LaTeX3 Project Team;
439 Copyright \@year, all rights reserved.
442 \title{\LaTeXNews}
444 % The \maketitle for the LaTeX News.
446 \renewcommand{\maketitle}{%
447 \twocolumn[{%
448 \parbox[t][7\baselineskip]{\textwidth}{%
449 \@titlefont\@title\\[\medskipamount]
450 \normalfont\normalsize\issuename~\@issue, \@month~\@year
453 \thispagestyle{titlepage}
456 \newcommand{\ps@titlepage}{%
457 \renewcommand{\@oddhead}{\hfill}%
458 \renewcommand{\@evenhead}{\hfill}%
459 \renewcommand{\@oddfoot}{\@indiciafont\@indicia\hfill}%
460 \renewcommand{\@evenfoot}{\@indiciafont\@indicia\hfill}%
463 % When PostScript fonts are use we want the first section heading
464 % to come out a little bit higher on the page.
466 \newcommand{\raisefirstsection}{%
467 \ifx\TeX\pplTeX
468 \vspace*{-30pt} % typesetting with lw35fonts
469 \setlength{\topskip}{18pt}
470 \else
471 \vspace*{-36pt}
474 % Sectioning commands.
476 \renewcommand{\section}{%
477 \@startsection
478 {section}{1}{\z@}{-1.5ex \@plus -1ex \@minus -.2ex}%
479 {1ex \@plus.2ex}{\@headingfont}%
482 \renewcommand{\subsection}{%
483 \@startsection
484 {subsection}{1}{\z@}{-1.5ex \@plus -1ex \@minus -.2ex}%
485 {1sp}{\@subheadingfont}%
488 \renewcommand{\subsubsection}{%
489 \@startsection
490 {subsection}{1}{\z@}{-1.5ex \@plus -1ex \@minus -.2ex}%
491 {1sp}{\normalsize\bfseries}%
494 % No section numbers.
496 \setcounter{secnumdepth}{0}
498 % Set lists tighter, but brought in by 1em (otherwise the first line
499 % always looks very wide). Should this be done with \rightskip?
500 % It actually does nothing since after this \rightskip is set to
501 % \@rightskip: I think \rightmargin was intended but should we change
502 % it now?
503 % FMi 1999/12/11: in fact it needs to go as it would affect the
504 % paragraph before the list making it flush right and indented while
505 % the rest of the document is set ragged.
507 \renewcommand{\@listI}{%
508 \setlength{\leftmargin}{\leftmargini}%
509 \setlength{\topsep}{\medskipamount}%
510 \setlength{\itemsep}{0pt}%
511 \setlength{\listparindent}{1em}%
512 % \setlength{\rightskip}{1em}%
514 \let \@listi \@listI
516 % set defaults so that trivlist eg verbatim use tighter spacing
517 \@listi
518 \setlength\topsep{4pt plus 1pt minus 2pt}
520 % But have a list type with no indentation on either side:
522 \renewenvironment{description}
523 {\list{}{\labelwidth\z@
524 \leftmargin \z@
525 \rightmargin \z@
526 \itemindent-\leftmargin
527 \let\makelabel\descriptionlabel}}
528 {\endlist}
530 \newenvironment{citations}{%
531 \list{}{%
532 \renewcommand{\makelabel}[1]{\itshape{##1},}%
535 \endlist
538 % Some logos:
540 \newcommand{\NFSS}{NFSS}
541 \newcommand{\LaTeXNews}{\LaTeX~News}
542 \newcommand{\AW}{Addison Wesley}
543 \newcommand{\SLiTeX}{\textsc{Sli}\TeX}
544 \newcommand{\AmS}{$${\protect\the\textfont2 A}\kern-.1667em\lower
545 .5ex\hbox{\protect\the\textfont2 M}\kern
546 -.125em{\protect\the\textfont2 S}}
547 \newcommand{\AmSLaTeX}{\mbox{\AmS-\LaTeX}}
548 \newcommand{\ctan}{\textsc{CTAN}}
549 \newcommand{\PSNFSS}{\textsc{PSNFSS}}
550 \newcommand{\babel}{\textsf{babel}}
552 % Abbreviations:
554 \newcommand{\ctanhttp}{http://mirror.ctan.org/}
556 % Needed for 09:
558 \newcommand\cs[1]{\texttt{\textbackslash#1}}
560 % Some logical markup:
562 \newcommand*\class[1]{\texttt{#1}}
563 \newcommand*\package[1]{\textsf{#1}}
564 \let \pkg \package % backward compatibility
565 \newcommand*\file[1]{\texttt{#1}}
568 % Hacking to make <...> produce italics in verbatim. NB: this can be
569 % done more cleanly using the verbatim package. But the ltnews class
570 % has to run on any LaTeX installation, even those without the
571 % verbatim package.
573 % Here we extend the font-setting command to include making <> active
574 % (ie adjusting the input encoding).
575 \renewcommand \verbatim@font {%
576 \normalfont \ttfamily
577 \catcode`\<=\active
578 \catcode`\>=\active
581 % Make active <...> produce italics surrounded by angle brackets
582 % (used in verbatim and \verb);
583 % << produces a less-than, and >> produces a greater-than.
585 \begingroup
586 \catcode`\<=\active
587 \catcode`\>=\active
588 \gdef<{\@ifnextchar<\@lt\@meta}
589 \gdef>{\@ifnextchar>\@gt\@gtr@err}
590 \gdef\@meta#1>{{\reset@font\normalsize\itshape#1\/}}
591 \gdef\@lt<{\char`\<}
592 \gdef\@gt>{\char`\>}
593 \endgroup
594 \def\@gtr@err{%
595 \ClassError{ltxguide}{%
596 Isolated \protect>%
598 In this document class, \protect<...\protect>
599 is used to indicate a parameter.\MessageBreak
600 I've just found a \protect> on its own.
601 Perhaps you meant to type \protect>\protect>?
604 \def\verbatim@nolig@list{\do\`\do\,\do\'\do\-}
606 % That's it!
608 \endinput
610 % CHANGELOG
612 % 20 May 1994, v0.01: Created file.
614 % 21 May 1994, v0.02: Made <...> produce italics inside verbatim.
615 % Added the indicia, \publicationyear, \publicationmonth and
616 % \publicationissue. Added the citations environment. Switched off
617 % some of the article class options.
619 % 21 May 1994, v0.03: Fixed a bug with ragged right. Fixed a bug
620 % which was causing underfull hbox messages.
622 % 27 May 1994, v0.04: Added SliTeX logo, and proper AMS LaTeX logo.
623 % Added angle brackets to <...>.
625 % 31 May 1994, v0.05: Added downloaded PS fonts options. Removed
626 % angle brackets from <...> since these were the last remaining
627 % bitmaps! Added variants of the LaTeX logo. Added the ltnews.cfg
628 % file. Added the lw35fonts option.
630 % 27 Jul 1994, v0.06: Corrected a typo `\PassOptionToClass' should
631 % have been `\PassOptionsToClass'. Manas Mandal pointed that one
632 % out.
634 % 29 Nov 1994, v0.07: Made <...> only active in verbatim.
636 % 09 Dec 1995, v0.08: Upper case for Project Team.
638 % 20 Dec 1995, v0.09: Tidied up the list stuff.
640 % 03 Jun 1996, v0.10: Changed fonts for lw35 option, for logical and
641 % aesthetic reasons.
643 % 06 Jun 1996, v0.11: Corrected grammar in footer.
645 % 10 June 1996 v0.12: Add extra line in lw35fonts option,
646 % so 04 and 05 do not run over the page.
647 % Make font scaling messages go to log only.
649 % 22 Nov 1997, v0.13: Added new form of description.
650 % Found all sorts of strange things involving \rightskip
652 % 23 Feb 1999, v0.14: Added some logos etc.
654 % 02 Jul 1999, v0.15: Added some logical markup
656 % 03 Jul 1999, v0.16: Amended \pkg and added \email
658 % 21 Dec 1999, v0.17: Added PDF info, load package url.sty
660 % 23 Dec 1999, v0.18: Don't depend on url.sty being present
662 % 21 Jul 2000, v0.19: Extra short-cuts, added to doc re v0.17;
663 % and more fonts
665 % 31 Aug 2000, v0.20: Fixed typo in URL (JLB)
667 % 06 Jun 2001, v0.21: Corrected undocumented stubs for html.sty
669 % 12 Jul 2001, v0.22: Added eTeX logo (from ltugboat.cls)
671 % 26 Feb 2004, v1.00: If pdf is being produced, use hyperref.
672 % But move this after other packages are, possibly, loaded.
674 % 28 Feb 2004 v1.01 Heading font in lw35, size change.
676 % 21 Oct 2004 v1.02 Improve check for PDF generation (taken from ifpdf.sty)
678 % 01 May 2014 v1.03 hidelinks option for hyperref
680 % BUGS
682 % Switching between logos like this is a mess.
684 % The last column should be set flush bottom.