summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xBuild/tools/ctan2tl13
-rw-r--r--Master/texmf-dist/bibtex/bst/tugboat/ltugbib.bst4
-rw-r--r--Master/texmf-dist/doc/plain/tugboat/README4
-rw-r--r--Master/texmf-dist/doc/plain/tugboat/tubguide.pdfbin117297 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/plain/tugboat/tubguide.tex869
-rw-r--r--Master/texmf-dist/source/latex/tugboat/tugboat.dtx138
-rw-r--r--Master/texmf-dist/tex/latex/tugboat/ltugboat.cls60
-rw-r--r--Master/texmf-dist/tex/latex/tugboat/ltugboat.sty5
-rw-r--r--Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty18
-rw-r--r--Master/texmf-dist/tex/latex/tugboat/ltugproc.cls14
-rw-r--r--Master/texmf-dist/tex/latex/tugboat/ltugproc.sty5
-rw-r--r--Master/texmf-dist/tex/plain/tugboat/tugboat.cmn1060
-rw-r--r--Master/texmf-dist/tex/plain/tugboat/tugboat.sty2245
-rw-r--r--Master/texmf-dist/tex/plain/tugboat/tugproc.sty366
-rw-r--r--Master/texmf-dist/tpm/tugboat.tpm14
-rw-r--r--Master/texmf/lists/tugboat6
16 files changed, 152 insertions, 4669 deletions
diff --git a/Build/tools/ctan2tl b/Build/tools/ctan2tl
index 0e01ef482f0..622656c691f 100755
--- a/Build/tools/ctan2tl
+++ b/Build/tools/ctan2tl
@@ -96,19 +96,6 @@ else
cp -pr $ctan_dir1/. $pkg
fi
-# Another special case: annoyingly, tugboat plain and tugboat latex are
-# stored in two different places on ctan. we'll assume we're invoked
-# with the latex dir, and now arrange to also copy in the plain stuff to
-# a `plain' subdirectory, which ctan2tds.pl has a further special case
-# to handle. Maybe we'll come across other cases like this, in which
-# case we can generalize this.
-#
-if test "$pkg" = tugboat; then
- ctan_dir2=`echo $ctan_dir1 | sed s/latex/plain/`
- destdir2=$pkg/plain
- cp -r $ctan_dir2 $destdir2
-fi
-
fi # end of copying from CTAN.
diff --git a/Master/texmf-dist/bibtex/bst/tugboat/ltugbib.bst b/Master/texmf-dist/bibtex/bst/tugboat/ltugbib.bst
index 7c62871ae2f..181f94c0875 100644
--- a/Master/texmf-dist/bibtex/bst/tugboat/ltugbib.bst
+++ b/Master/texmf-dist/bibtex/bst/tugboat/ltugbib.bst
@@ -2,7 +2,7 @@
%% to the ltug* LaTeX classes.
%%
%% \iffalse (this is a meta-comment (so they say))
-%% Copyright (C) 1995,1996,1997,1998,2000,2004,2006 TeX Users Group.
+%% Copyright (C) 1995,1996,1997,1998,2000,2004,2006,2007 TeX Users Group.
%%
%% It may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -222,7 +222,7 @@ FUNCTION {format.names}
namesleft #1 >
{ ", " * t * }
{
- numnames #2 >
+ numnames #1 >
{ "," * }
'skip$
if$
diff --git a/Master/texmf-dist/doc/plain/tugboat/README b/Master/texmf-dist/doc/plain/tugboat/README
deleted file mode 100644
index 996049fd4fe..00000000000
--- a/Master/texmf-dist/doc/plain/tugboat/README
+++ /dev/null
@@ -1,4 +0,0 @@
-(This file in the public domain.)
-
-The plain style files for TUGboat, the journal of the TeX Users Group.
-See http://tug.org/TUGboat for back issues, author information, and more.
diff --git a/Master/texmf-dist/doc/plain/tugboat/tubguide.pdf b/Master/texmf-dist/doc/plain/tugboat/tubguide.pdf
deleted file mode 100644
index 5e00b9eea76..00000000000
--- a/Master/texmf-dist/doc/plain/tugboat/tubguide.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/plain/tugboat/tubguide.tex b/Master/texmf-dist/doc/plain/tugboat/tubguide.tex
deleted file mode 100644
index 56a18c8602b..00000000000
--- a/Master/texmf-dist/doc/plain/tugboat/tubguide.tex
+++ /dev/null
@@ -1,869 +0,0 @@
-%% @texfile{
-%% filename = "tubguide.tex",
-%% version = "1.03",
-%% date = "2006/05/24",
-%% time = "09:48:56 EDT",
-%% checksum = "12752 869 4993 34296",
-%% filetype = "TUGboat Authors' Guide",
-%% copyright = "Copyright 1989, 1992, 2006 TeX Users Group.
-%% Unlimited copying and redistribution of this file
-%% are permitted as long as this file is not
-%% modified. Modifications (and redistribution of
-%% modified versions) are also permitted, but only if
-%% the resulting file is renamed."
-%% author = "TeX Users Group",
-%% address = "TeX Users Group,
-%% P.O.Box 2311,
-%% Portland, OR 97208-2311,
-%% USA",
-%% telephone = "+1 503 223-9994",
-%% FAX = "+1 206 203-3960",
-%% email = "TUGboat@tug.org",
-%% codetable = "ISO/ASCII",
-%% keywords = "tex users group, tugboat, authors' guide",
-%% supported = "yes",
-%% abstract = "This file is an updated version of the file
-%% that produced the original Authors' Guide in
-%% TUGboat 10, no. 3, November 1989.",
-%% docstring = "The checksum field above contains a CRC-16
-%% checksum as the first value, followed by the
-%% equivalent of the standard UNIX wc (word
-%% count) utility output of lines, words, and
-%% characters. This is produced by Robert
-%% Solovay's checksum utility.",
-%% }
-%% *********************************************************
-%%
-%% TeXing this file requires the following files:
-%% TUGBOAT.STY (version 1.09+)
-%% TUGBOAT.CMN (version 1.08+) (loaded by TUGBOAT.STY)
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\input tugboat.sty
-
-\enablemetacode
-\everyverbatim{\enablemetacode}
-\def\halfline{\vskip 0.5\baselineskip \ignoreendline}
-
-% ****************************************************************
-
-\pageno=1
-\def\rtitlex{\def\tubfont{\tenpoint\rm}\TUB{} Authors' Guide, May 2006}
-\def\midrtitle{}
-
-\title *\TUB\/ Authors' Guide*
-
-\author * Ron Whitney *
-\address * \TUG\\
- \POBox 9506\\
- Providence, RI 02940-9506 *
-%\netaddress * TUGboat@Math.AMS.com *
-
-\author * Barbara Beeton *
-\address * American Mathematical Society\\
- 201 Charles Street\\
- Providence, RI 02904-2294 *
-\netaddress * TUGboat@tug.org *
-
-
-\vfootnote{}{Revised March 1992, May 2006; the original appeared in
-\tubissue 10(3), November 1989.}
-
-\article
-
-With this article we hope to fill a lacuna (some might say ``void'')
-whose existence we have been attributing to the usual factors: tight
-schedules, alternative priorities and warty \TeX\ code. We now feel
-the macros in use for \TUB\/ have stabilized to the extent that
-documentation and suggestions for authors will remain fairly constant,
-and we hope this article can serve as a reasonable guide to
-preparation of manuscripts for \TUB. Authors who have used the \TUB\/
-macros before will note several changes (including more modern names
-for the style files). Suggestions and comments are quite welcome at
-the addresses listed below.
-
-\TUB\/ was originally typeset with a package based only on \plain.
-Later, as demand for style files follows wherever
-\LaTeX-devotees wander, a \TUB\/ variant of the \LaTeX\ {\tt article}
-style was also created. The two macro sets yield
-much the same output, differing in certain ways for input. Below we
-make comment on various aspects of the \TUB\/ package, first for the
-\plain-based macros, then for \LaTeX. The macro sets share
-the file |tugboat.cmn|,\footnote{$^1$}{This file used to be named
-{\tt tugboat.com}, but that notation was in conflict with conventions
-of \acro{MS-DOS} and other operating systems; no conflicts are known to
-exist for the new name.} and users of either style should read the
-section entitled ``Common Abbreviations and Utilities''. We conclude
-with some general suggestions to help make the lives of those on the
-receiving end of (any kind of) electronic copy a little easier.
-
-
-\head * The \plain-based macros: {\tt tugboat.sty} *
-
-The macros are contained in two files, |tugboat.sty| and |tugboat.cmn|.$^1$
-
-\subhead * General description of tags *
-We attempt wherever possible to tag the various elements of \TUB\/
-articles in a ``generic'' way, modified in some respects by
-convenience. Authors and editors, of course, need tools to shape
-their articles to the form they desire, but we also wish to encourage
-a tagging style which is appropriate for electronic interchange. It
-seems unfair to expect much thought from authors concerning the
-markup of their information if we only provide a bag of widgets and
-do-hickies to hack and pound an article together. The tags whose use
-we encourage are the higher-level tags that mark the logical
-document structure. Below these are formatting macros that we
-recognize may be essential for certain applications. Both sorts of
-tags are described in the following article.
-
-Generally, to ``mark up'' the data <foo>, a tag |\xxx| will precede
-<foo> and |\endxxx| will follow (thus: |\xxx <foo>\endxxx|). We use
-the |{...}| form to delimit arguments of lower-level formatting
-macros. Optional commands follow tags and are enclosed in
-|[\lastoption][...]|, \`a la \LaTeX. Several options may be enclosed
-within one set of square brackets, or each
-option may be enclosed in its own set of brackets. These ``options''
-are actually just \TeX{} commands, and it is always possible to
-insert raw \TeX{} code as an option. Such practice violates truly
-generic markup, but it is {\it helpful\/} and at least confines
-The Raw and Dirty to a smaller area.
-\subtext
-Perhaps a little more detail is of use to some readers here.
-Upon encountering a tag, the general operational scheme of the
-macros is as follows:
-\verbatim[\makecomment\%]%
-[\def\lquote{`}\def\rquote{'}\makeescape\|\makebgroup\`\makeegroup\']%
-[\displaystyle{\everypar{\hangindent2\parindent}\advance\baselineskip by 1pt}]
-<read tag>
-\begingroup
-<set defaults>
-\the\every...
-<read options>
-<branch to appropriate action,|hfil|break|ignoreendline
-using `|rm|lquote|lquote'argument|/`|rm|rquote|rquote' as necessary>
-<cleanup>
-\endgroup
-\endverbatim
-The scheme shows that code inserted as an option is localized and that
-it may be used to override certain defaults and to guide branching.
-Things are not always simple, however. Sometimes parameters are set
-after a branch is taken (e.g.\ the macros might only call |\raggedright|
-after determining whether the mode is ``|\inline|'' or
-``|\display|''), and, despite localization, parameter setting might
-affect the current paragraph if a branch has yet to be taken.
-This is {\it not\/} to say the macros don't work, but rather that
-those authors who venture beyond the documented regions of the
-macros should do so with their eyes open.
-\endtext
-
-For convenience, we also allow the |*| as a delimiter for the
-higher-level tags; thus we could use either
-||\title \TUB\/ Authors' Guide \endtitle||
-or
-||\title * \TUB\/ Authors' Guide *||
-to indicate the title of this paper. To typeset a \ast{} within text
-delimited by |*|, the \plain\ control sequence |\ast| has been extended
-to give
-\ast{} in text and the usual $\ast$ in math.
-\subtext
-This markup scheme may suffer at the hands of \TeX's parsing mechanism
-when tagged data is nested. In these cases, one may group (|{...}|)
-embedded data so that \TeX{} knows to proceed to the next |\end...|
-or |*|.
-\endtext
-
-In the cases where we show extra spaces and carriage returns around
-arguments in this article, those (discretionary) spaces are
-accommodated in the macros. Thus, for example, when the argument to
-|\title| above is typeset, |\ignorespaces| and |\unskip| surround it
-and the extra spaces have no untoward effect. Spaces are also
-gobbled between options.
-
-
-\subhead * Outer form *
-At the outermost level, a source file will have the form (using the
-|*...*| delimiters):
-\verbatim[\makeescape\|]
-\input tugboat.sty
-|halfline
-<perhaps additional macros for article>
-|halfline
-\title * <title> *
-\author * <author> *
-\address * <address> *
-\netaddress * <network address> *
-|halfline
-\article
-|vellipsis
-<body of article>
-|vellipsis
-\makesignature
-\endarticle
-\endverbatim
-
-Data preceding |\article| is saved and typeset when |\article|
-is encountered. Each author should have his/her own
-||
-\author ...
-\address ...
-\netaddress ...
-||
-block, and the macros will do their best to combine the information
-properly in the appropriate places. Explicit linebreaks can be
-achieved within any of these items via |\\|. Title and authors are,
-of course, set at the beginning of an article; the address
-information is listed separately in a ``signature'' near the end of
-an article, and is present for the convenience of those who might
-photocopy excerpts from an issue of \TUB. |\makesignature| does the
-typesetting work. Generally authors are listed separately in the
-signature. In cases where authors and addresses are to be combined,
-one may use |\signature{...}| and |\signaturemark| with some or all
-of
-||
-\theauthor {<author number>}
-\theaddress {<author number>}
-\thenetaddress {<author number>}
-||
-to get the desired result. For example, for an article with%
-\footnote{$^2$}{\xEdNote The \TUB{} address shown in examples
-was current when this article first appeared, but is now obsolete;
-it has been left intact to avoid other problems. The correct address
-is now {\tt TUGboat@tug.org}.}
-\verbatim[\outputtofile{ray.vbm}]
-\author * Ray Goucher *
-\address * \TUG *
-\netaddress *TUG@Math.AMS.com*
-
-\author * Karen Butler *
-\address * \TUG *
-\netaddress *TUG@Math.AMS.com*
-\endverbatim
-we could say
-\verbatim[\outputtofile{sig.vbm}]
-\signature {
- \signaturemark
- \theauthor1 and \theauthor2\\
- \theaddress1\\
- \thenetaddress1}
-\endverbatim
-to obtain the signature
-\begingroup
-\authornumber=0
-\input ray.vbm
-\input sig.vbm
-\makesignature
-\medskip
-\endgroup
-
-\noindent
-Use of at least |\thenetaddress| is recommended for this just so that
-the network address gets formatted properly. The optional command
-|[\lastoption][\network{...}]| will introduce the network address
-with a network name, so
-||[\outputtofile{code.vbm}]
-\netaddress[\network{Internet}]
- * TUGboat@Math.AMS.com *
-||
-produces
-{\authornumber=1
- \input code.vbm
- \figure[\mid\nofloat] \leftline{\kern\parindent\thenetaddress1} \endfigure
-}
-
-\leavevmode|\endarticle| marks the end of input and is defined as
-|\vfil\end| for most uses. We redefine it as |\endinput| to
-assemble streams of articles in \TUB.
-
-
-\subhead * Section Heads *
-Heads of sections, subsections, etc.\ are introduced with |\head|,
-|\subhead|, etc., respectively. The underlying macros all use
-|\head|, so |\endhead| is the long-form ending for all these tags.
-For example, the first two heads of this article could have been
-keyed as
-||
-\head The \plain-based macros:
- {\tt tugboat.sty} \endhead
-||
-and
-||
-\subhead General description of
- tags \endhead
-||
-
-In \TUB\/ style, the paragraph following a first-level head is not
-indented. This is achieved by a look-ahead mechanism which gobbles
-|\par|s and calls |\noindent|. Actually all of the |\...head| tags
-gobble pars and spaces after their occurrence. This allows one to
-enter a blank line in the source file between head and text, such
-practice being a visual aid to your friendly \TUB\/ editors (if not to
-you). Be careful of that |\noindent| after a first-level head:
-you will be in horizontal mode after the |\head *...*|, so spaces
-which {\it appear\/} innocuous, may not be so.
-
-
-\subhead * Lists *
-Lists are everywhere, of course, and a simple list hierarchy can
-transform a one-dimensional typesetting problem into something
-nasty. All of which is to say, we are certainly not done with
-this area of tagging, but here are the available macros.
-
-Not surprisingly, |\list| marks the beginning of a list. A list
-can be itemized, wherein each item is tagged with |\item|, or
-unitemized wherein items are delimited by |^^M| (the end of your
-input line). The itemized
-style is the default and |[\lastoption][\unitemized]| will get
-the other. Tags for the items default to the |\bullet|
-($=\bullet$), but can be changed by feeding an argument to
-|\tag{...}|. The |[\lastoption][\tag{...}]| option
-used with |\list| assigns the tag for each item of the entire
-list, while |[\lastoption][\tag{...}]| used with |\item| changes
-only the tag for that item. The obvious dynamical tags are available
-with options
-\verbatim[\makeescape\|\makebgroup\`\makeegroup\']
-\numbered
-\romannumeraled
-\lettered `|rm(lowercase)'
-\Lettered `|rm(uppercase)'
-\endverbatim
-
-Lists can be set in several columns by setting |\cols=...|. The
-columns are aligned on their top baselines and the user must
-break the columns with |\colsep|. Thus,
-\verbatim[\outputtofile{code.vbm}]
-\list[\unitemized\numbered][\cols=2]
-Fourscore
-and seven
-years ago
-our fathers
-\colsep
-brought forth
-on this
-continent
-\endlist
-\endverbatim
-yields
-\input code.vbm
-
-|\everylist| is a token register which is scanned at the beginning
-of each list
-after the default parameters are set and before
-options are read. If you want all your lists numbered, for example,
-you might insert ||\everylist{\numbered}|| at the top of your file
-rather than giving an option to each list.
-
-Implementation of sublists is under construction.
-
-\subhead * Verbatim Modes *
-
-There are several variations on this theme. In each case, text is
-printed in a typewriter font and (almost) all input characters
-produce the glyph in the font position of their character-code (i.e.\
-you get what you type, no escaping it). In addition to the long form
-||\verbatim...\endverbatim|| the \verbinline|\endverbatim\ character
-can be used to enter and leave verbatim mode, acting as a toggle much
-as the |$| does with math. \verbinline|...|\endverbatim\space
-produces inline verbatim text, while \verbinline||...||\endverbatim
-displays its output. |\verbatim| itself defaults to display form,
-but |\verbatim[\inline]| and its contraction |\verbinline| (both
-terminated by |\endverbatim|) produce the inline form. |^^M| yields
-a space inline, and a new paragraph in display. Generally, for
-snippets of text we use the \verbinline|...|\endverbatim form, and
-for longer items the
-||[\makeescape\!]
-\verbatim
-!vellipsis
-\endverbatim
-||
-form (although \verbinline||...||\endverbatim is a good way to
-display a single line of code).
-
-In addition to formatting text between |\verbatim| and
-|\endverbatim|, |\verbatim| may read and write data from and to
-files. We find this variant useful in ({\it almost\/}) guaranteeing
-consonance between macros in use and their published listings.
-||[\makeescape\!]
-\verbatim[\inputfromfile{foo.inp}]
-!vellipsis
-\endverbatim
-||
-will incorporate the contents of file |foo.inp| in the listing before
-the text between |\verbatim| and |\endverbatim|. The shortened form
-||\verbfile{foo.inp}\endverbatim|| accomplishes the above in the case
-that the text is empty. While the code around the data, |foo.inp|,
-above looks excessively long, do remember the implementation
-uses the basic |\verbatim| macro, so options can also be read after
-the filename. For example,
-||
-\verbfile{foo.inp}[\numbered]
-\endverbatim
-||
-would number the lines of the listing.
-
-We often rearrange code supplied to us so
-that it fits in the narrow measure of \TUB's two-column format, and
-we sometimes make corrections to macro sets (you thought you were
-perfect!). Since errors can (and do\Dash we aren't perfect either)
-creep in with these modifications, we use the above technique to
-maintain consistency between the listing published in \TUB\/ and the
-underlying macros used for examples.
-
-To write out information, use
-||[\makeescape\!]
-\verbatim[\outputtofile{foo.out}]
-!vellipsis
-\endverbatim
-||
-An added bonus here is that characters which get internalized as
-moribund ``letters'' or ``others'' in the process of listing them,
-can return revitalized for perhaps their real use when written out to
-another file and read in again. The example above involving Ray
-and Karen was coded as
-||[\makeescape\/][\makeactive\!][\def!{\VertChar}]
-... to get the desired result. For
-example, for an article with
-\verbatim[\outputtofile{ray.vbm}]
-\author * Ray Goucher *
-/vellipsis
-\endverbatim
-we could say
-\verbatim[\outputtofile{sig.vbm}]
-\signature {
- \signaturemark
- \theauthor1 and \theauthor2\\
- \theaddress1\\
- \thenetaddress1}
-\endverbatim
-to obtain the signature
-\begingroup
-\authornumber=0
-\input ray.vbm
-\input sig.vbm
-\makesignature
-\endgroup
-||
-This is perhaps not the most edifying example, but you get the gist.
-(We localize the process of storing and retrieving these
-authors and addresses so as not to clobber our own.)
-We would encourage our authors to use these mechanisms for connecting
-verbatim text to external files for the sake of maintaining
-consistency between active code and its documentation.
-
-\leavevmode|\verbatim| scans to |\endverbatim| (a 12-token sequence
-since the |\| is of type `other' after |\verbatim| gets going). Only
-this sequence of characters will interrupt the scan. On the other
-hand, \verbinline|\endverbatim and \verbinline||\endverbatim scan to
-the next \verbinline|\endverbatim and \verbinline||\endverbatim,
-respectively. Needless to say, one should use forms of |\verbatim|
-to set text which contains \verbinline|\endverbatim (and
-\verbinline|\endverbatim or \verbinline||\endverbatim to set text
-containing |\endverbatim| if you are writing an article like this
-one). Both the \verbinline|\endverbatim and |\verbatim| tags scan
-ahead for the usual |[\lastoption][| to check for options. In those
-rare cases when the |[\lastoption][| is really supposed to be the
-first character of the verbatim text, use the option
-|[\lastoption][\lastoption]| to stop option parsing. For example, to
-show ||[\lastoption][\lastoption]|| we keyed
-\verbatim
-|[\lastoption][\lastoption]|
-\endverbatim
-
-There are situations where one wants to typeset most things verbatim,
-but ``escape'' to format something exceptional. For example, the
-insertions of metacode given in the listings above require some
-access to the italic font. By giving the option
-|[\lastoption][\makeescape\!]| to |\verbatim|, the |!| is made an
-escape character in that block. Thus,
-||[\makeescape\/]
-\verbatim[\makeescape\!]
-/vellipsis
-...!it...
-/vellipsis
-\endverbatim
-||
-really calls the italic font in the middle of the listing (one might
-also want to use |\makebgroup| and |\makeegroup| in the options to define
-characters to localize this call; see p.~7). Situations
-will dictate preferences for what character may be used as an escape
-(we use the \verbinline|\endverbatim, |!|, and |/| in this article).
-There is also a means of changing the setup of every occurrence of
-verbatim mode. The contents of token register |\everyverbatim|
-is scanned after the defaults of verbatim mode
-have been set. In this article, for example, we have made
-|[\makeother\<]<| active and defined it in such a way that
-|[\makeother\<]<...>| typesets as metacode. Since |\verbatim|
-ordinarily changes |[\makeother\<]<| to type `other' on startup, we key
-||\everyverbatim{\enablemetacode}|| at the beginning of the file
-to have the proper adjustment made whenever verbatim is started.
-
-When ``escaping'' within a verbatim block, one should be aware that
-spaces and carriages returns are {\it active\/} and hence not gobbled
-as usual. Using the |!| as the active character, one might key
-||[\makeescape\/]
-\verbatim[\makeescape\!]
-/vellipsis
-!vskip .5!baselineskip
-/vellipsis
-\endverbatim
-||
-to get an extra half line of space in the middle of the listing. The
-space and carriage return on this line, however, cause problems. The
-space expands to |\ifvmode\indent\fi\space| and \TeX\ will not like
-the |\indent| after |\vskip|. The |^^M| expands to
-|\leavevmode\endgraf|, and therefore puts an extra line into the
-listing. The solutions, in this case, are to drop the space and to
-use |!ignoreendline| (which just gobbles the |^^M|), but one should
-be aware, generally, that some thought may be required in these situations.
-
-The option |[\lastoption][\numbered]| causes the lines of a
-verbatim listing to be numbered, while |[\lastoption][\ruled]|
-places rules around the whole thing:
-\verbatim[\numbered\ruled]
-<code>
-<more code>
-<yet more code>
-...
-\endverbatim
-The option |[\lastoption][\continuenumbers]| picks up the numbering
-where it last left off.
-\verbatim[\continuenumbers]
-<more>
-<and more>
-...
-\endverbatim
-
-The code underlying |\verbatim| in display style implements each line
-as a paragraph and places math-display-size whitespace above and
-below the verbatim section. Page and column breaks {\it are\/}
-permitted within these listings. To prohibit breaks at specific
-points or globally, one must insert penalties or redefine |^^M| to
-insert |\nobreak| in the vertical list at the end of each
-``paragraph'' (i.e.\ line). We should also note that the bottom of
-such a verbatim listing is implemented so that ensuing
-text may or may not start a new paragraph depending on whether an
-intervening blank line (or |\par|) is or is not present.
-
-
-\subhead * Figures and Page Layout *
-Figures are keyed as
-\verbatim[\makeescape\|]
-\figure
-|halfline
-<vertical mode material>
-|halfline
-\endfigure
-\endverbatim
-These are generally implemented as single-column floating
-top-insertions, but the options |[\lastoption][\mid]| and
-|[\lastoption][\bot]| can change specific items to be mid- or
-bottom-insertions, respectively. Here we recommend that the
-long-form terminator be used ({\it not\/} the |*...*| form). One can
-think of the information ``passed'' as being ``long'' in the sense of
-possibly containing paragraphs, this being a mnemonic device only.
-The primary reason for the recommendation is that one is (in some
-sense, maybe) more likely to encounter a rogue |*| in longer text
-than in shorter text and hence more likely to encounter a surprising
-result due to a macro stopping short at the wrong |*|.
-
-\subtext
-Perhaps here is a natural place to mention also that these macros
-sometimes read their arguments and then act, and sometimes act on the
-fly, not actually storing an argument as a string of tokens at all.
-|\title|, for example, is in the former category, while |\figure| is
-in the latter. Reasons may vary for the choice in
-methods. Storing a string of tokens as an argument does not allow
-re-interpretation of the category codes of the underlying
-character string. Thus, storing
-the ``argument'' of |\figure| all at once might misinterpret some
-characters which should appear as verbatim text. For this reason we
-set figures as we go and just close off the box with |\endfigure|. On
-the other hand, using information in multiple situations (e.g.\
-titles and running heads) requires storing the information as a token
-string, not as a typeset list.
-
-When text delimited by |*...*| is read as an argument, the |*|s are
-dropped by the parsing process. When the text is handled on the fly,
-the first |*| is gobbled and the second is made active to perform
-whatever action is necessary at the close of the macro. When
-possible, we prefer to operate on the fly since nested tags are
-handled properly in that case and no memory is consumed to store
-arguments. Examination of |tugboat.sty| will show which case applies
-in a given situation, but this general knowledge may help when trying
-to debug those situations in which an unexpected |*| has disrupted
-things.
-\endtext
-
-
-A primitive |\caption{...}| option is available to |\ulap|
-(i.e.\ lap upward) its argument into the figure space, but
-formatting of the caption is left to the user. For example,
-the code:
-\verbatim[\outputtofile{code.vbm}]
-\figure[\top]
- [\caption{\centerline{Odd Fig.~1}}]
-\vbox to 5pc{}
-\endfigure
-\endverbatim
-produces the figure at the top of this column or the next.
-
-\input code.vbm
-
-Figures spanning columns at the top and bottom of a page are currently
-supported only on the first page of an article, but we expect they
-will soon be allowed on any page (a general rewrite of the output
-routine is in progress). |\twocolfigure| (terminated by |\endfigure|)
-starts up such a figure and currently {\it must\/} occur before any
-material has been typeset on the first page (i.e.\ {\it before\/}
-|\article|).
-
-
-Macros |\onecol|, |\twocol|, and |\threecol| provide one-, two-, and
-three-column layouts, but these cannot currently be intermixed on a
-page. We hope to provide automatic column-balancing and convenient
-switching between one- and two-column format within a year.
-|\newpage| in each format is defined to fill and eject enough columns
-to get to the next page. |\newcol| is just |\par\vfill\eject|.
-
-\subhead * Command List Summary *
-Tags are listed in the order discussed. Options are
-listed under tags.
-||
-\title
-\author
-\address
-\netaddress
- \network
-\signature
-\article
-\makesignature
-\endarticle
-\head
-\subhead
-\subsubhead
-\list
- \numbered
- \romannumeraled
- \lettered
- \Lettered
- \ruled
- \tag{...}
-\item
- \tag{...}
-\everylist
-\verbatim
- \numbered
- \ruled
- \inputfromfile{...}
- \outputtofile{...}
-\verbinline
-\verbfile
-\figure
- \mid
- \bot
- \caption{...}
-\twocolfigure
-||
-and, of course, \verbinline|\endverbatim and \verbinline||\endverbatim.
-
-\head * The \LaTeX\ macros: {\tt ltugboat.sty}%
-\footnote{$^3$}{This discussion of {\tt ltugboat.sty} is now of
-historical interest only; it has been superseded by a \LaTeXe{}
-documentclass, {\tt ltugboat.cls}, available from \CTAN.} *
-
-|ltugboat.sty| is the primary macro file, and is based on the \LaTeX{}
-|article.sty|. |tugboat.cmn|, a collection of items common to both
-\LaTeX\ and \plain\ input, is also required. Articles will have
-the form:\footnote{$^4$}{{\tt ltugboat} used to be a substyle; it now
-stands on its own, by automatically inputting {\tt article.sty}.}
-\verbatim[\makeescape\|]
-\documentstyle{ltugboat}
-|halfline
-<perhaps additional macros for article>
-|halfline
-\title {<title>}
-\author{<author>}
-\address{<address>}
-\netaddress{<netaddress>}
-
-\begin{document}
-\maketitle
-|vellipsis
-<body of article>
-|vellipsis
-\makesignature
-\end{document}
-\endverbatim
-This is the usual form for \LaTeX\ documents, of course, except
-that now each author will have his/her own
-\verbatim
-\author{...}
-\address{...}
-\netaddress{...}
-\endverbatim
-block. As with the \plain{} style, the author and address
-macros will store their information for later display.
-See the discussion of |\address|, |\netaddress| and |\makesignature|
-on the second page of this article to understand more. Linebreaks
-within |\title|, |\author|, and |\...address| are specified with |\\|.
-
-We refer the user to the \LaTeX\ manual for description of section
-heads, verbatim mode, insertions, and movement between one- and
-two-column format. The style of printed output has, of course, been
-somewhat modified to fit \TUB\/ style. |ltugboat.sty| might be of some
-use to others wishing to modify the |article| option in this
-direction.
-
-
-
-\head * Common Abbreviations and Utilities *
-
-Definitions of a number of commonly used abbreviations such as |\MF|
-and |\BibTeX| are contained in |tugboat.cmn|. Please use these whenever
-possible rather than creating your own. We will add to the list as
-necessary.
-
-A nicety for the sake of appearance is the command |\acro|, which
-sets an acronym in caps one size smaller than the surrounding text.
-Compare CTAN (full size), \CTAN{} (|\acro{CTAN}|) and {\smc ctan}
-(small caps). Acronyms in |tugboat.cmn| use |\acro| consistently.
-
-Several other constructions that we have found useful for both
-\plain- and \LaTeX-style input have been incorporated in
-|tugboat.cmn|. Various |\*lap|\,s (|\ulap|, |\dlap|, |\xlap|,
-|\ylap|, |\zlap|) and |\*smash|\,es provide means of setting type
-which ``laps'' into neighboring regions. |\dash| and |\Dash| are en-
-and em-dashes that break properly. |\slash| is a breakable slash.
-The macro
-\verbatim
-\makestrut [<ascender dimen>;
- <descender dimen>]
-\endverbatim
-allows {\it ad hoc\/} construction of
-struts.
-
-|\makeatletter| |\catcode|s the |@| for internal control-sequences.
-There are also more general functions
-\verbatim
-\makeescape
-\makebgroup
-\makeegroup
-\makeletter
-\makeother
-\makeactive
-\endverbatim
-that change the category of a given character into the type mentioned
-at the end of the macro name. For example, |\makeactive\!| changes the
-category of the |!| to 13. We have given many other examples of these in
-this article. Readers may look at the end of |tugboat.cmn| after the
-|\endinput| statement to see further documentation on the contents of the file.
-
-
-\subhead * Issue Makeup *
-Constructing an entire issue of \TUB\/ requires use of a few features
-that authors may notice when articles are returned for proofing.
-|\xrefto| allows for symbolic cross-referencing, but is enabled only
-late in the production process. The distribution version of
-|tugboat.cmn| defines |\xrefto| so that ``???'' is typeset whenever it
-is called. Not to worry.
-
-We also put notes into the file since there are many things to
-remember, and these appear as |\TBremark{...}|. Authors can look for
-such things, if they are interested.
-
-
-\head * General Coding Suggestions *
-
-Probably 90\% of the code we receive is easily handled, and for this
-we are most appreciative. We do have suggestions of a general nature
-that authors should keep in mind as they create articles for
-transmission here or anywhere else.
-
-Those who create code find it much easier to read and understand their
-own code than do others who read the ``finished'' product. In fact,
-some people seem to forget that the electronic file will be viewed (in
-fact, studied) in addition to the printed copy. Documentation and
-uniform habits of presentation always help. Blank lines are easier to
-digest by eye than |\par|s. Tables and display math can often be
-keyed in such a way that rows and columns are clear in the source file
-on a display screen as well as in print. Explanations or warnings of
-tricky code can be {\it very} helpful. Authors should place font and
-macro definitions in one location at the beginning of an article
-whenever possible.
-
-Authors should anticipate that articles will undergo some
-transformation, and that positioning of some elements may change
-simply because articles are {\it run together\/} in \TUB. Decisions
-on linebreaks, pagebreaks, figure and table placement are generally
-made after the text is deemed correct. We avoid inserting ``hard''
-line- and page-breaks whenever possible, and will not do so, in any
-case, until the last minute. We also use floating insertions for
-figure and table placement when we first receive an article. It is
-easier for us to work with a clean file containing some bad breaks,
-overfull boxes or other unsightliness, than it is to handle a document
-containing {\it ad hoc\/} code dedicated to a beauteous (albeit
-narrowly specific) result.
-
-
-When authors proof their articles in formats other than that of \TUB\/
-(for example), they should expect that \TUB's changes in pagewidth and
-pagedepth may drastically alter text layout. Paragraphs are rebroken
-automatically when |\hsize| and |\vsize| change, but |\centerline|
-does not break, and we often see tables and math displays which are
-rigidly laid out. When possible, authors might use paragraphing
-techniques instead of calls to, say, |\centerline| (Beeton will be
-writing up her lectures on paragraphing techniques for a future issue
-of \TUB\/), and they should try to code tables in such a way that
-widths of columns can be changed easily. Generally, authors should
-attempt to anticipate the work that might be necessary if requests for
-other reasonable formats of their texts are made. In the case of
-\TUB, we make a strong effort to stuff macro listings and tables into
-the two-column format. Since these types of items are not generally
-susceptible to automatic line-breaking, we give thanks to stuffings
-made by authors ahead of time. In this context, we recommend the use
-of |\verbfile{...}| (see the section {\bf Verbatim Modes}) to maintain
-consistency between documentation and reality.
-
-Specifically in the domain of \TeX\ macros, we find that many authors
-throw in unnecessary |%| characters to end code lines. Except in
-cases where the |^^M| means something other than end-of-line,
-linebreaks can reliably be placed after control-words and numerical
-assignments. We have seen \TeX's buffer size exceeded when |%|
-was placed after {\it every\/} line.
-
-A wider perspective in the matter of naming macros can prevent
-problems that occur when definitions are overwritten as articles are
-run together. The names of control sequences used in \plain, \LaTeX,
-and \AmSTeX\ are documented and authors should avoid using them for
-other purposes. It is also wise to avoid commonly used names such as
-|\temp|, |\result|, |\1|, and |\mac| in presenting code that might be
-cribbed by other users. The frequently used technique of temporarily
-|\catcode|ing a character to be a letter (e.g.\ the |@|) provides a
-good method of hiding control sequences so that they will not be
-clobbered later. Readers are in need of small macros to do little
-tricks, and they often try suggestions brought forth in \TUB. A
-little extra effort in making these macros consistent with the macros
-in wide distribution and in making them robust will be much
-appreciated.
-
-\TBremark{Anything about formatting macros?}
-
-
-\head * Electronic Documentation and Submission Procedure *
-
-In addition to |tugboat.sty|, |ltugboat.sty|, and |tugboat.cmn|,
-a copy of this article, |tubguide.tex|, will be available at
-most \TeX{} archives, in particular \CTAN.
-
-Please address all electronic correspondence to the \TUB{} maildrop:
-||TUGboat@tug.org||
-Mail to personal addresses is liable to go unseen if
-vacation or illness intervenes. We also request that you supply
-an abstract of any expository article. This will be used as the
-basis for translation of abstracts to languages other than that
-in which the article is published.
-
-
-\makesignature
-
-\endarticle
diff --git a/Master/texmf-dist/source/latex/tugboat/tugboat.dtx b/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
index e5fa41ababe..9eac928b928 100644
--- a/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
+++ b/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
@@ -3,7 +3,8 @@
% tugboat.dtx - main source for LaTeX TUGboat classes.
%
% \iffalse (this is a meta-comment (so they say))
-%% Copyright 1994,1995,1996,2001,2005,2006 TeX Users Group.
+%% Copyright 1994,1995,1996,1997,1998,2000,2001,2004,2005,2006,2007
+%% TeX Users Group.
%%
%% This file is part of the tugboat package.
%%
@@ -40,7 +41,7 @@
%<ltugboatsty>\ProvidesPackage{ltugboat}
%<ltugprocsty>\ProvidesPackage{ltugproc}
%<ltugcomn> \ProvidesPackage{ltugcomn}
- [2006/05/05 v2.0
+ [2007/03/19 v2.1
%<ltugboatcls> TUGboat journal class%
%<ltugproccls> TUG conference proceedings class%
%<ltugboatsty|ltugprocsty> TUG compatibility package%
@@ -62,7 +63,7 @@
%
% RCS identification of this file (lest I fail to update the above ;-)
%
-% $Id: tugboat.dtx,v 1.46 2006/03/22 11:27:54 rf10 Exp rf10 $
+% $Id: tugboat.dtx,v 1.3 2007/03/30 13:55:31 rf10 Exp rf10 $
%
% Note that the RCS version relates to the number of times the file
% has been checked-in, which relates to a development process taking
@@ -117,7 +118,8 @@
\title{The \textsf{tugboat} package\thanks{This file
has version number \fileversion, last
revised \filedate}}
- \author{Robin Fairbairns\\\small\texttt{robin.fairbairns@cl.cam.ac.uk}}
+ \author{The \TUB{} team\\
+ \small(Distributed by Robin Fairbairns)}
\date{\filedate}
\maketitle
\tableofcontents
@@ -127,13 +129,12 @@
% \end{macrocode}
%
% \fi
-% \CheckSum{4458}
+% \CheckSum{4455}
%
% \section{Introduction}
%
% This file contains all the macros for typesetting \TUB{} with
-% \LaTeXe.
-%
+% both plain \TeX\ and \LaTeXe.
% \subsection{Summary of control sequences}
%
% Abbreviations. Just a listing with indications of expansion where
@@ -151,6 +152,8 @@
% |\ConTeXt|& \ConTeXt\\
% |\Cplusplus|& C++\\
% |\DTD|&\\
+% |\DVI|&\\
+% |\DVD|&\\
% |\DVIPDFMx|& \DVIPDFMx\\
% |\DVItoVDU|& DVItoVDU\\
% |\eTeX|& \eTeX\\
@@ -158,6 +161,7 @@
% |\Hawaii|& \Hawaii\\
% |\HTML|&\\
% |\ISBN|& ISBN\\
+% |\ISO|&\\
% |\ISSN|& ISSN\\
% |\JTeX|&\\
% |\JoT|& The Joy of \TeX\\
@@ -190,6 +194,7 @@
% |\slMF|& Metafont (slanted)\Dash deprecated: use
% \cs{textsl} instead \\
% |\stTeX|& \TeX{} for the Atari ST\\
+% |\SVG|&\\
% |\TANGLE|&\\
% |\TB|& The \TeX book\\
% |\TeX|& (Although nearly every package defines this,
@@ -200,9 +205,11 @@
% |\TeXtures|&\\
% |\TeXXeT|&\\
% |\Thanh|&\\
+% |\TFM|& \TFM\\
% |\TUB|& \TUB\\
% |\TUG|& \TeX{} Users Group\\
% |\UNIX|&\\
+% |\UTF|&\\
% |\VAX|&\\
% |\VorTeX|&\\
% |\XeT|&\\
@@ -624,7 +631,17 @@
\def\ASCII{\acro{ASCII}}
\def\aw{A\kern.1em-W}
\def\AW{Addison\kern.1em-\penalty\z@\hskip\z@skip Wesley}
-\def\BibTeX{\textsc{Bib}\kern-.08em\TeX}
+%
+% make \BibTeX work in slanted contexts too; it's common in titles, and
+% especially burdensome to hack in .bib files.
+\def\BibTeX{%
+ \ifdim \fontdimen1\font>0pt
+ B{\SMC\SMC IB}%
+ \else
+ \textsc{Bib}\kern-.08em
+ \fi
+ \TeX}
+%
\def\CandT{\textsl{Computers \& Typesetting}}
% \end{macrocode}
% We place our \cs{kern} after \cs{-} so that it disappears if the
@@ -636,6 +653,7 @@
\def\CTAN{\acro{CTAN}}
\def\DTD{\acro{DTD}}
\def\DVD{\acro{DVD}}
+\def\DVI{\acro{DVI}}
\def\DVIPDFMx{\acro{DVIPDFM}$x$}
\def\DVItoVDU{DVIto\kern-.12em VDU}
\DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX}
@@ -648,6 +666,7 @@
\def\HTML{\acro{HTML}}
\def\HTTP{\acro{HTTP}}
\def\ISBN{\acro{ISBN}}
+\def\ISO{\acro{ISO}}
\def\ISSN{\acro{ISSN}}
\def\JPEG{\acro{JPEG}}
\def\JTeX{\leavevmode\hbox{\lower.5ex\hbox{J}\kern-.18em\TeX}}
@@ -734,6 +753,7 @@
\kern-.06em\TeX}}
\def\slMF{\textsl{\MF}} % should never be used
\def\stTeX{\textsc{st}\kern-0.13em\TeX}
+\def\SVG{\acro{SVG}}
\def\TANGLE{\texttt{TANGLE}\@}
\def\TB{\textsl{The \TeX book}}
\def\TIFF{\acro{TIFF}}
@@ -745,6 +765,7 @@
\def\TeXtures{\textit{Textures}}
\let\Textures=\TeXtures
\def\TeXXeT{\TeX-{}-\XeT}
+\def\TFM{\acro{TFM}}
\def\Thanh{H\`an~Th\^e\llap{\raise 0.5ex\hbox{\'{}}}~Th\`anh}
\def\ttn{\textsl{TTN}\@}
\def\TTN{\textsl{\TeX{} and TUG News}}
@@ -754,6 +775,7 @@
\def\tug{\acro{TUG}}
\def\UG{Users Group}
\def\UNIX{\acro{UNIX}}
+\def\UTF{\acro{UTF}}
\def\VAX{V\kern-.12em A\kern-.1em X\@}
\def\VorTeX{V\kern-2.7\p@\lower.5ex\hbox{O\kern-1.4\p@ R}\kern-2.6\p@\TeX}
\def\XeT{X\kern-.125em\lower.424ex\hbox{E}\kern-.1667emT\@}
@@ -2110,11 +2132,10 @@
% \end{macrocode}
%
% \subsection{Headings}
-%
-% Redefine style of section headings for \TUB: |\vskip 8pt| |plus2pt|
-% |minus2pt| \penalty0|\vskip\parskip| before; |\vskip 4pt plus.5pt|
-% after. Negative beforeskip suppresses following parindent. (So
-% negate the stretch and shrinktoo).
+%
+% Redefine style of section headings to match plain \TUB.
+% Negative beforeskip suppresses following parindent. (So
+% negate the stretch and shrink too).
%
% These macros are called \cs{*head} in the plain styles.
%
@@ -2131,20 +2152,20 @@
\def\section{\TB@startsection{{section}%
1%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
- {4\p@\@plus.5\p@}%
+ {-8\p@}%
+ {4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsection{\TB@startsection{{subsection}%
2%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
- {4\p@\@plus.5\p@}%
+ {-8\p@}%
+ {4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsubsection{\TB@startsection{{subsubsection}%
3%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
- {4\p@\@plus.5\p@}%
+ {-8\p@}%
+ {4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\paragraph{\TB@startsection{{paragraph}%
4%
@@ -2164,21 +2185,21 @@
\TB@startsection{{section}%
1%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
- {4\p@\@plus.5\p@}%
+ {-8\p@}%
+ {4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsection{\TB@nolimelabel
\TB@startsection{{subsection}%
2%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
+ {-8\p@}%
{-0.5em\@plus-\fontdimen3\font}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsubsection{\TB@nolimelabel
\TB@startsection{{subsubsection}%
3%
\parindent
- {-8\p@\@plus-2\p@\@minus-2\p@}%
+ {-8\p@}%
{-0.5em\@plus-\fontdimen3\font}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\fi
@@ -2426,13 +2447,12 @@
% typeset them in \cs{small}.
%
% \begin{macrocode}
-\def\@makecaption#1#2{%
+\long\def\@makecaption#1#2{%
\vskip\abovecaptionskip
- \def\@makecaptiontext{\small \parindent=1em\noindent #1: #2}%
- \setbox\@tempboxa=\vbox{\@makecaptiontext\par}%
+ \sbox\@tempboxa{#1: #2}%
\ifdim \wd\@tempboxa >\hsize
- \raggedright\hyphenpenalty=\@M
- \@makecaptiontext
+ \raggedright\hyphenpenalty=\@M \parindent=1em
+ \small \noindent #1: #2%
\else
\global \@minipagefalse
\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
@@ -2440,6 +2460,14 @@
\vskip\belowcaptionskip}
% \end{macrocode}
%
+% Also use \cs{small} for the caption labels, and put the label itself
+% (Figure xx) in bold.
+%
+% \begin{macrocode}
+\def\fnum@figure{{\small \bf \figurename\nobreakspace\thefigure}}
+\def\fnum@table{{\small \bf \tablename\nobreakspace\thetable}}
+% \end{macrocode}
+%
% \subsection{Size changing commands}
%
% Apart from their `normal' effects, these commands are
@@ -3049,11 +3077,33 @@
%% \hskip0.27778\fontdimen6\textfont\z@\relax
%% #1%
%% }
-
-
-\def\fnum@figure{{\small\bf Figure \thefigure}}
% \end{macrocode}
%
+% \begin{macro}{\creditfootnote}
+% \begin{macro}{\supportfootnote}
+% Sometimes we want the label ``Editor's Note:'', sometimes not.
+%
+% \begin{macrocode}
+\def\creditfootnote{\nomarkfootnote\xEdNote}
+\def\supportfootnote{\nomarkfootnote\relax}
+% \end{macrocode}
+%
+% General macro \cs{nomarkfootnote} to make a footnote without a
+% reference mark, etc. |#1| is an extra command to insert, |#2| the
+% user's text.
+% \begin{macrocode}
+\gdef\nomarkfootnote#1#2{\begingroup
+ \def\thefootnote{}%
+ % no period, please, also no fnmark.
+ \def\@makefntext##1{##1}%
+ \footnotetext{\noindent #1#2}%
+ \endgroup
+}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+%
% \subsection{Initialization}
%
% If we're going to use Harvard-style bibliographies, we set up the
@@ -3483,30 +3533,6 @@
% \end{macro}
% \end{environment}
%
-% \begin{macro}{\creditfootnote}
-% \begin{macro}{\supportfootnote}
-% Sometimes we want the label ``Editor's Note:'', sometimes not.
-%
-% \begin{macrocode}
-\def\creditfootnote{\nomarkfootnote\xEdNote}
-\def\supportfootnote{\nomarkfootnote\relax}
-% \end{macrocode}
-%
-% General macro \cs{nomarkfootnote} to make a footnote without a
-% reference mark, etc. |#1| is an extra command to insert, |#2| the
-% user's text.
-% \begin{macrocode}
-\gdef\nomarkfootnote#1#2{\begingroup
- \def\thefootnote{}%
- % no period, please, also no fnmark.
- \def\@makefntext##1{##1}%
- \footnotetext{\noindent #1#2}%
- \endgroup
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
% \begin{macro}{\makesignature}
% \cs{makesignature} is improper in proceedings, so we replace it with a
% warning (and a no-op otherwise)
@@ -3610,7 +3636,7 @@
% \end{macro}
%
% \subsection{Section divisions}
-%
+%
% Neither sections nor subsections are numbered by default in the
% proceedings style: note that this puts a degree of stress on authors'
% natural tendency to reference sections, which is a matter that needs
diff --git a/Master/texmf-dist/tex/latex/tugboat/ltugboat.cls b/Master/texmf-dist/tex/latex/tugboat/ltugboat.cls
index cc5248c88cc..cab16ced271 100644
--- a/Master/texmf-dist/tex/latex/tugboat/ltugboat.cls
+++ b/Master/texmf-dist/tex/latex/tugboat/ltugboat.cls
@@ -30,7 +30,8 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-%% Copyright 1994,1995,1996,2001,2005,2006 TeX Users Group.
+%% Copyright 1994,1995,1996,1997,1998,2000,2001,2004,2005,2006,2007
+%% TeX Users Group.
%%
%% This file is part of the tugboat package.
%%
@@ -55,7 +56,7 @@
%% extension .ins) which are part of the distribution.
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
\ProvidesClass {ltugboat}
- [2006/05/05 v2.0
+ [2007/03/19 v2.1
TUGboat journal class%
]
\csname tugstyloaded@\endcsname
@@ -186,7 +187,13 @@
\def\ASCII{\acro{ASCII}}
\def\aw{A\kern.1em-W}
\def\AW{Addison\kern.1em-\penalty\z@\hskip\z@skip Wesley}
-\def\BibTeX{\textsc{Bib}\kern-.08em\TeX}
+\def\BibTeX{%
+ \ifdim \fontdimen1\font>0pt
+ B{\SMC\SMC IB}%
+ \else
+ \textsc{Bib}\kern-.08em
+ \fi
+ \TeX}
\def\CandT{\textsl{Computers \& Typesetting}}
\newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt}
\newcommand\Cplusplus{C\raisebox{.7ex}{$_{++}$}}
@@ -194,6 +201,7 @@
\def\CTAN{\acro{CTAN}}
\def\DTD{\acro{DTD}}
\def\DVD{\acro{DVD}}
+\def\DVI{\acro{DVI}}
\def\DVIPDFMx{\acro{DVIPDFM}$x$}
\def\DVItoVDU{DVIto\kern-.12em VDU}
\DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX}
@@ -206,6 +214,7 @@
\def\HTML{\acro{HTML}}
\def\HTTP{\acro{HTTP}}
\def\ISBN{\acro{ISBN}}
+\def\ISO{\acro{ISO}}
\def\ISSN{\acro{ISSN}}
\def\JPEG{\acro{JPEG}}
\def\JTeX{\leavevmode\hbox{\lower.5ex\hbox{J}\kern-.18em\TeX}}
@@ -259,6 +268,7 @@
\kern-.06em\TeX}}
\def\slMF{\textsl{\MF}} % should never be used
\def\stTeX{\textsc{st}\kern-0.13em\TeX}
+\def\SVG{\acro{SVG}}
\def\TANGLE{\texttt{TANGLE}\@}
\def\TB{\textsl{The \TeX book}}
\def\TIFF{\acro{TIFF}}
@@ -270,6 +280,7 @@
\def\TeXtures{\textit{Textures}}
\let\Textures=\TeXtures
\def\TeXXeT{\TeX-{}-\XeT}
+\def\TFM{\acro{TFM}}
\def\Thanh{H\`an~Th\^e\llap{\raise 0.5ex\hbox{\'{}}}~Th\`anh}
\def\ttn{\textsl{TTN}\@}
\def\TTN{\textsl{\TeX{} and TUG News}}
@@ -279,6 +290,7 @@
\def\tug{\acro{TUG}}
\def\UG{Users Group}
\def\UNIX{\acro{UNIX}}
+\def\UTF{\acro{UTF}}
\def\VAX{V\kern-.12em A\kern-.1em X\@}
\def\VorTeX{V\kern-2.7\p@\lower.5ex\hbox{O\kern-1.4\p@ R}\kern-2.6\p@\TeX}
\def\XeT{X\kern-.125em\lower.424ex\hbox{E}\kern-.1667emT\@}
@@ -936,20 +948,20 @@
\def\section{\TB@startsection{{section}%
1%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
- {4\p@\@plus.5\p@}%
+ {-8\p@}%
+ {4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsection{\TB@startsection{{subsection}%
2%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
- {4\p@\@plus.5\p@}%
+ {-8\p@}%
+ {4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsubsection{\TB@startsection{{subsubsection}%
3%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
- {4\p@\@plus.5\p@}%
+ {-8\p@}%
+ {4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\paragraph{\TB@startsection{{paragraph}%
4%
@@ -963,21 +975,21 @@
\TB@startsection{{section}%
1%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
- {4\p@\@plus.5\p@}%
+ {-8\p@}%
+ {4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsection{\TB@nolimelabel
\TB@startsection{{subsection}%
2%
\z@
- {-8\p@\@plus-2\p@\@minus-2\p@}%
+ {-8\p@}%
{-0.5em\@plus-\fontdimen3\font}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsubsection{\TB@nolimelabel
\TB@startsection{{subsubsection}%
3%
\parindent
- {-8\p@\@plus-2\p@\@minus-2\p@}%
+ {-8\p@}%
{-0.5em\@plus-\fontdimen3\font}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\fi
@@ -1079,18 +1091,19 @@
\long\def\@firstofthree#1#2#3{#1}
\long\def\@secondofthree#1#2#3{#2}
\long\def\@thirdofthree#1#2#3{#3}
-\def\@makecaption#1#2{%
+\long\def\@makecaption#1#2{%
\vskip\abovecaptionskip
- \def\@makecaptiontext{\small \parindent=1em\noindent #1: #2}%
- \setbox\@tempboxa=\vbox{\@makecaptiontext\par}%
+ \sbox\@tempboxa{#1: #2}%
\ifdim \wd\@tempboxa >\hsize
- \raggedright\hyphenpenalty=\@M
- \@makecaptiontext
+ \raggedright\hyphenpenalty=\@M \parindent=1em
+ \small \noindent #1: #2%
\else
\global \@minipagefalse
\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
\fi
\vskip\belowcaptionskip}
+\def\fnum@figure{{\small \bf \figurename\nobreakspace\thefigure}}
+\def\fnum@table{{\small \bf \tablename\nobreakspace\thetable}}
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xpt\@xiipt
\abovedisplayskip=3\p@\@plus 3\p@\@minus\p@
@@ -1405,8 +1418,15 @@
%% \hskip0.27778\fontdimen6\textfont\z@\relax
%% #1%
%% }
-
-\def\fnum@figure{{\small\bf Figure \thefigure}}
+\def\creditfootnote{\nomarkfootnote\xEdNote}
+\def\supportfootnote{\nomarkfootnote\relax}
+\gdef\nomarkfootnote#1#2{\begingroup
+ \def\thefootnote{}%
+ % no period, please, also no fnmark.
+ \def\@makefntext##1{##1}%
+ \footnotetext{\noindent #1#2}%
+ \endgroup
+}
\if@Harvardcite
\AtBeginDocument{%
\bibliographystyle{ltugbib}%
diff --git a/Master/texmf-dist/tex/latex/tugboat/ltugboat.sty b/Master/texmf-dist/tex/latex/tugboat/ltugboat.sty
index a1e3f406310..b9c92e19137 100644
--- a/Master/texmf-dist/tex/latex/tugboat/ltugboat.sty
+++ b/Master/texmf-dist/tex/latex/tugboat/ltugboat.sty
@@ -30,7 +30,8 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-%% Copyright 1994,1995,1996,2001,2005,2006 TeX Users Group.
+%% Copyright 1994,1995,1996,1997,1998,2000,2001,2004,2005,2006,2007
+%% TeX Users Group.
%%
%% This file is part of the tugboat package.
%%
@@ -54,7 +55,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
\ProvidesPackage{ltugboat}
- [2006/05/05 v2.0
+ [2007/03/19 v2.1
TUG compatibility package%
]
\@obsoletefile{ltugboat.cls}{ltugboat.sty}
diff --git a/Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty b/Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty
index a3b82056f30..886e3765904 100644
--- a/Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty
+++ b/Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty
@@ -30,7 +30,8 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-%% Copyright 1994,1995,1996,2001,2005,2006 TeX Users Group.
+%% Copyright 1994,1995,1996,1997,1998,2000,2001,2004,2005,2006,2007
+%% TeX Users Group.
%%
%% This file is part of the tugboat package.
%%
@@ -55,7 +56,7 @@
%% extension .ins) which are part of the distribution.
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
\ProvidesPackage{ltugcomn}
- [2006/05/05 v2.0
+ [2007/03/19 v2.1
TUGboat `common macros' package%
]
\IfFileExists{mflogo.sty}%
@@ -131,7 +132,13 @@
\def\ASCII{\acro{ASCII}}
\def\aw{A\kern.1em-W}
\def\AW{Addison\kern.1em-\penalty\z@\hskip\z@skip Wesley}
-\def\BibTeX{\textsc{Bib}\kern-.08em\TeX}
+\def\BibTeX{%
+ \ifdim \fontdimen1\font>0pt
+ B{\SMC\SMC IB}%
+ \else
+ \textsc{Bib}\kern-.08em
+ \fi
+ \TeX}
\def\CandT{\textsl{Computers \& Typesetting}}
\newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt}
\newcommand\Cplusplus{C\raisebox{.7ex}{$_{++}$}}
@@ -139,6 +146,7 @@
\def\CTAN{\acro{CTAN}}
\def\DTD{\acro{DTD}}
\def\DVD{\acro{DVD}}
+\def\DVI{\acro{DVI}}
\def\DVIPDFMx{\acro{DVIPDFM}$x$}
\def\DVItoVDU{DVIto\kern-.12em VDU}
\DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX}
@@ -151,6 +159,7 @@
\def\HTML{\acro{HTML}}
\def\HTTP{\acro{HTTP}}
\def\ISBN{\acro{ISBN}}
+\def\ISO{\acro{ISO}}
\def\ISSN{\acro{ISSN}}
\def\JPEG{\acro{JPEG}}
\def\JTeX{\leavevmode\hbox{\lower.5ex\hbox{J}\kern-.18em\TeX}}
@@ -204,6 +213,7 @@
\kern-.06em\TeX}}
\def\slMF{\textsl{\MF}} % should never be used
\def\stTeX{\textsc{st}\kern-0.13em\TeX}
+\def\SVG{\acro{SVG}}
\def\TANGLE{\texttt{TANGLE}\@}
\def\TB{\textsl{The \TeX book}}
\def\TIFF{\acro{TIFF}}
@@ -215,6 +225,7 @@
\def\TeXtures{\textit{Textures}}
\let\Textures=\TeXtures
\def\TeXXeT{\TeX-{}-\XeT}
+\def\TFM{\acro{TFM}}
\def\Thanh{H\`an~Th\^e\llap{\raise 0.5ex\hbox{\'{}}}~Th\`anh}
\def\ttn{\textsl{TTN}\@}
\def\TTN{\textsl{\TeX{} and TUG News}}
@@ -224,6 +235,7 @@
\def\tug{\acro{TUG}}
\def\UG{Users Group}
\def\UNIX{\acro{UNIX}}
+\def\UTF{\acro{UTF}}
\def\VAX{V\kern-.12em A\kern-.1em X\@}
\def\VorTeX{V\kern-2.7\p@\lower.5ex\hbox{O\kern-1.4\p@ R}\kern-2.6\p@\TeX}
\def\XeT{X\kern-.125em\lower.424ex\hbox{E}\kern-.1667emT\@}
diff --git a/Master/texmf-dist/tex/latex/tugboat/ltugproc.cls b/Master/texmf-dist/tex/latex/tugboat/ltugproc.cls
index 74c20ca9bbe..5b357913cd0 100644
--- a/Master/texmf-dist/tex/latex/tugboat/ltugproc.cls
+++ b/Master/texmf-dist/tex/latex/tugboat/ltugproc.cls
@@ -30,7 +30,8 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-%% Copyright 1994,1995,1996,2001,2005,2006 TeX Users Group.
+%% Copyright 1994,1995,1996,1997,1998,2000,2001,2004,2005,2006,2007
+%% TeX Users Group.
%%
%% This file is part of the tugboat package.
%%
@@ -55,7 +56,7 @@
%% extension .ins) which are part of the distribution.
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
\ProvidesClass {ltugproc}
- [2006/05/05 v2.0
+ [2007/03/19 v2.1
TUG conference proceedings class%
]
\def\@tugclass{ltugproc}
@@ -239,15 +240,6 @@
\fi}
\def\@abstract@end{\ifnum0=`{\fi}%
\expandafter\end\expandafter{\@abstract@}}
-\def\creditfootnote{\nomarkfootnote\xEdNote}
-\def\supportfootnote{\nomarkfootnote\relax}
-\gdef\nomarkfootnote#1#2{\begingroup
- \def\thefootnote{}%
- % no period, please, also no fnmark.
- \def\@makefntext##1{##1}%
- \footnotetext{\noindent #1#2}%
- \endgroup
-}
\renewcommand{\makesignature}{\TBWarning
{\string\makesignature\space is invalid in proceedings issues}}
\renewcommand\title{\@dblarg\TB@title}
diff --git a/Master/texmf-dist/tex/latex/tugboat/ltugproc.sty b/Master/texmf-dist/tex/latex/tugboat/ltugproc.sty
index 8394d10646c..001e0722972 100644
--- a/Master/texmf-dist/tex/latex/tugboat/ltugproc.sty
+++ b/Master/texmf-dist/tex/latex/tugboat/ltugproc.sty
@@ -30,7 +30,8 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-%% Copyright 1994,1995,1996,2001,2005,2006 TeX Users Group.
+%% Copyright 1994,1995,1996,1997,1998,2000,2001,2004,2005,2006,2007
+%% TeX Users Group.
%%
%% This file is part of the tugboat package.
%%
@@ -54,7 +55,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
\ProvidesPackage{ltugproc}
- [2006/05/05 v2.0
+ [2007/03/19 v2.1
TUG compatibility package%
]
\@obsoletefile{ltugproc.cls}{ltugproc.sty}
diff --git a/Master/texmf-dist/tex/plain/tugboat/tugboat.cmn b/Master/texmf-dist/tex/plain/tugboat/tugboat.cmn
deleted file mode 100644
index 6543ca254d8..00000000000
--- a/Master/texmf-dist/tex/plain/tugboat/tugboat.cmn
+++ /dev/null
@@ -1,1060 +0,0 @@
-%% @texfile{
-%% filename = "tugboat.cmn",
-%% version = "1.17",
-%% date = "2006/05/24",
-%% time = "09:49:20 EDT",
-%% checksum = "53229 1060 3095 35854",
-%% filetype = "common macros for TUGboat",
-%% copyright = "Copyright 1993-1996, 2006 TeX Users Group.
-%% Unlimited copying and redistribution of this file
-%% are permitted as long as this file is not
-%% modified. Modifications (and redistribution of
-%% modified versions) are also permitted, but only if
-%% the resulting file is renamed."
-%% author = "TeX Users Group",
-%% address = "TeX Users Group,
-%% P.O.Box 2311,
-%% Portland, OR 97208-2311,
-%% USA",
-%% telephone = "+1 503 223-9994",
-%% FAX = "+1 206 203-3960",
-%% email = "TUGboat@tug.org",
-%% codetable = "ISO/ASCII",
-%% keywords = "tex users group, tugboat, common macros",
-%% supported = "yes",
-%% abstract = "This file contains macros common to both
-%% the PLAIN and LaTeX style files for TUGboat,
-%% the Communications of the TeX Users Group.
-%% Among other things, it contains supplementary
-%% definitions for abbreviations and logos that
-%% appear in TUGboat.",
-%% docstring = "The checksum field above contains a CRC-16
-%% checksum as the first value, followed by the
-%% equivalent of the standard UNIX wc (word
-%% count) utility output of lines, words, and
-%% characters. This is produced by Robert
-%% Solovay's checksum utility.",
-%% }
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\def\fileversion{v1.17}
-\def\filedate{2006/05/24}
-
-\message{File `TUGBOAT.CMN' \fileversion \space\space <\filedate>}
-
-%
-% ***** TUGBOAT.CMN *****
-%
-% See the bottom of the file (after \endinput) for a list of
-% items defined.
-%
-
-% *************************************************************************
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** helpful shorthand *****
-%
-
-% The following allow for easier changes of category. These require that
-% the character be addressed as a control-sequence: e.g. \makeescape\/ will
-% make the / an escape character.
-
-\def\makeescape#1{\catcode`#1=0 }
-\def\makebgroup#1{\catcode`#1=1 }
-\def\makeegroup#1{\catcode`#1=2 }
-\def\makemath#1{\catcode`#1=3 }
-\def\makealign#1{\catcode`#1=4 }
-\def\makeeol#1{\catcode`#1=5 }
-\def\makeparm#1{\catcode`#1=6 }
-\def\makesup#1{\catcode`#1=7 }
-\def\makesub#1{\catcode`#1=8 }
-\def\makeignore#1{\catcode`#1=9 }
-\def\makespace#1{\catcode`#1=10 }
-\def\makeletter#1{\catcode`#1=11 }
-\def\makeother#1{\catcode`#1=12 }
-\def\makeactive#1{\catcode`#1=13 }
-\def\makecomment#1{\catcode`#1=14 }
-
-\def\makeatletter{\catcode`\@=11 } % included for historical reasons
-\chardef\other=12
-\def\makeatother{\catcode`\@=\other}
-
- % alternative to localization
-\def\savecat#1{%
- \expandafter\xdef\csname\string#1savedcat\endcsname{\the\catcode`#1}}
-\def\restorecat#1{\catcode`#1=\csname\string#1savedcat\endcsname}
-
-
-\savecat\@
-\makeletter\@ % used, as in PLAIN, in protected control sequences
-
- % for restoring meanings of global control sequences
-\def\SaveCS#1{%
- \def\scratch{\expandafter\let\csname saved@@#1\endcsname}%
- \expandafter\scratch\csname#1\endcsname}
-\def\RestoreCS#1{%
- \def\scratch{\expandafter\let\csname#1\endcsname}%
- \expandafter\scratch\csname saved@@#1\endcsname}
-
-
-% To distinguish between macro files loaded
-
-\def\plaintubstyle{plain}
-\def\latextubstyle{latex}
-\ifx\tugstyloaded@\undefined\let\tugstyloaded@\plaintubstyle\fi
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** abbreviations and logos *****
-%
-
-\def\acro#1{{\SMC #1}\spacefactor1000 }
-
-\def\AllTeX{(\La)\TeX}
-\def\AMS{American Mathematical Society}
-\def\AmS{{\the\textfont2 A}\kern-.1667em\lower.5ex\hbox
- {\the\textfont2 M}\kern-.125em{\the\textfont2 S}}
-\def\AmSLaTeX{\AmS-\LaTeX}
-\def\AmSTeX{\AmS-\TeX}
-\def\ANSI{\acro{ANSI}}
-\def\ASCII{\acro{ASCII}}
-\def\aw{A\kern.1em-W}
-\def\AW{Addison\kern.1em-\penalty\z@\hskip\z@skip Wesley}
-\def\BibTeX{{\rm B\kern-.05em{\smc i\kern-.025emb}\kern-.08em\TeX}}
-\def\CandT{{\sl Computers \& Typesetting}}
-\def\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt}
-\def\Cplusplus{C\raise.7ex\hbox{$_{++}$}}
-\def\CSS{\acro{CSS}}
-\def\CTAN{\acro{CTAN}}
-\def\DTD{\acro{DTD}}
-\def\DVD{\acro{DVD}}
-\def\DVIPDFMx{\acro{DVIPDFM}$x$}
-\def\DVItoVDU{DVIto\kern-.12em VDU}
-\def\eTeX{$\varepsilon$-\kern-.125em\TeX}
-\def\FAQ{\acro{FAQ}}
-\def\FTP{\acro{FTP}}
-\def\Ghostscript{Ghost\-script}
-\def\GNU{\acro{GNU}}
-\def\GUI{\acro{GUI}}
-\def\Hawaii{Hawai`i}
-\def\HTML{\acro{HTML}}
-\def\HTTP{\acro{HTTP}}
-\def\ISBN{\acro{ISBN}}
-\def\ISSN{\acro{ISSN}}
-\def\JPEG{\acro{JPEG}}
-% Japanese TeX
-\def\JTeX{\leavevmode\hbox{\lower.5ex\hbox{J}\kern-.18em\TeX}}
-\def\JoT{{\sl The Joy of \TeX\/}}
-\def\LAMSTeX{L\raise.42ex\hbox{\kern-.3em\the\scriptfont2 A}%
- \kern-.2em\lower.376ex\hbox{\the\textfont2 M}\kern-.125em
- {\the\textfont2 S}-\TeX}
-% note -- \LaTeX definition is from LATEX.TEX 2.09 of 7 Jan 86,
-% adapted for additional flexibility in TUGboat
-%\def\LaTeX{\TestCount=\the\fam \leavevmode L\raise.42ex
-% \hbox{$\fam\TestCount\scriptstyle\kern-.3em A$}\kern-.15em\TeX}
-% note -- broken in two parts, to permit separate use of La,
-% as in (La)TeX
-\def\La{\TestCount=\the\fam \leavevmode L%
- \setbox\TestBox=\hbox{$\fam\TestCount\scriptstyle A$}%
- \kern-.5\wd\TestBox\raise.42ex\box\TestBox}
-\def\LaTeX{\La\kern-.15em\TeX}
-\def\LaTeXe{\LaTeX{}\kern.05em2$_{\textstyle\varepsilon}$}
-\def\MathML{Math\acro{ML}}
-\def\MacOSX{Mac\,\acro{OS\,X}}
-% for Robert McGaffey
-\def\Mc{\setbox\TestBox=\hbox{M}M\vbox to\ht\TestBox{\hbox{c}\vfil}}
-% Additional sizes of the manual font may be needed.
-\font\manual=logo10 % font used for the METAFONT logo, etc.
-\def\MF{{\manual META}\-{\manual FONT}\spacefactor1000 }
-\def\MP{{\manual META}\-{\manual POST}\spacefactor1000 }
-\def\mf{{\smc Metafont}}
-\def\MFB{{\sl The \slMF book}}
-% multilingual (INRS) TeX
-\def\mtex{T\kern-.1667em\lower.5ex\hbox{\^E}\kern-.125emX\spacefactor1000 }
-\def\NTStext{N\mkern-4mu \lower.5ex\hbox{$\cal T$}\mkern-2mu S}
-\def\NTS{{\ifmmode \cal\NTStext \else $\cal\NTStext $\fi}}
-\def\OMEGA{$\Omega$}
-\def\OCP{\OMEGA\acro{CP}}
-\def\OTP{\OMEGA\acro{TP}}
-\def\Pas{Pascal}
-\def\pcMF{\leavevmode\raise.5ex\hbox{p\kern-.3ptc}MF\spacefactor1000 }
-\def\PCTeX{PC\thinspace\TeX}
-\def\pcTeX{\leavevmode\raise.5ex\hbox{p\kern-.3ptc}\TeX}
-\def\PDF{\acro{PDF}}
-\def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC\spacefactor1000 }
-\def\PiCTeX{\PiC\kern-.11em\TeX}
-\def\plain{{\tt plain}}
-\def\PNG{\acro{PNG}}
-\def\POBox{P.\thinspace O.~Box }
-%\def\POBoxTUG{\POBox\unskip~9506, Providence, RI~02940}
-\def\PS{{Post\-Script}}
-\def\RTF{\acro{RTF}}
-\def\SC{Steering Committee}
-\def\SGML{\acro{SGML}}
-\def\SliTeX{{\rm S\kern-.06em{\smc l\kern-.035emi}\kern-.06em\TeX}}\
-% for \def\slMF{{\manualsl META}\-{\manualsl FONT}\spacefactor1000 }
-% Use \font\manualsl=logosl10 instead, if it's available,
-\def\slMF{\MF}
-% Atari ST (Klaus Guntermann)
-\def\stTeX{{\smc st\rm\kern-0.13em\TeX}}
-\def\TANGLE{{\tt TANGLE}\spacefactor1000 }
-\def\TB{{\sl The \TeX book\/}}
-\def\TIFF{\acro{TIFF}}
-\def\TP{{\sl \TeX\/}: {\sl The Program\/}}
-\def\TeX{T\kern-.1667em\lower.424ex\hbox{E}\kern-.125emX\spacefactor1000 }
-\def\TeXhax{\TeX hax}
-% Don Hosek
-\def\TeXMaG{\TeX M\kern-.1667em\lower.5ex\hbox{A}\kern-.2267emG%
- \spacefactor1000 }
-%\def\TeXtures{\TestCount=\the\fam
-% \TeX\-\hbox{$\fam\TestCount\scriptstyle TURES$}}
-\def\TeXtures{{\it Textures}}
-\let\Textures=\TeXtures
-\def\TeXXeT{\TeX-{}-\XeT}
-\def\Thanh{H\`an~Th\^e\llap{\raise.5ex\hbox{\'{}}}~Th\`anh}
-\def\ttn{{\sl TTN}\spacefactor1000 }
-\def\TTN{{\sl \TeX{} and TUG NEWS}\spacefactor1000 }
-\def\tubfont{\sl} % redefined in other situations
-\def\TUB{{\tubfont TUGboat\/}}
-\def\TUG{\TeX\ \UG}
-\def\tug{\acro{TUG}}
-\def\UG{Users Group}
-\def\UNIX{\acro{UNIX}}
-\def\VAX{V\kern-.12em A\kern-.1em X\spacefactor1000 }
-\def\VorTeX{V\kern-2.7pt\lower.5ex\hbox{O\kern-1.4pt R}\kern-2.6pt\TeX}
-\def\XeT{X\kern-.125em\lower.424ex\hbox{E}\kern-.1667emT\spacefactor1000 }
-\def\XML{\acro{XML}}
-\def\WEB{{\tt WEB}\spacefactor1000 }
-\def\WEAVE{{\tt WEAVE}\spacefactor1000 }
-% the Xe\TeX logo requires Eplain, which is not assumed here, so
-% the definition is omitted.
-\def\XHTML{\acro{XHTML}}
-\def\XSLT{\acro{XSLT}}
-
-%********************************************************************
-
-\newlinechar=`\^^J
-\normallineskiplimit=1pt
-
-\clubpenalty=10000
-\widowpenalty=10000
-
-\def\NoParIndent{\parindent=\z@}
-\newdimen\normalparindent \normalparindent=20pt % plain = 20pt
-\def\NormalParIndent{\global\parindent=\normalparindent}
-\NormalParIndent
-
-\def\BlackBoxes{\overfullrule=5pt }
-\def\NoBlackBoxes{\overfullrule=\z@ }
-\def\newline{\hskip\z@ plus \pagewd \break}
-\def\nohyphens{\hyphenpenalty\@M\exhyphenpenalty\@M}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** utility registers and definitions *****
-%
-
-% test registers for transient use; paired - internal/external
-\newbox\T@stBox \newbox\TestBox
-\newcount\T@stCount \newcount\TestCount
-\newdimen\T@stDimen \newdimen\TestDimen
-\newif\ifT@stIf \newif\ifTestIf
-
-
-% \cs existence test, stolen from TeXbook exercise 7.7
-\def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax }
-
-% LaTeX conventions which are also useful here.
-\ifx\tugstyloaded@\plaintubstyle
- \let\@@input\input
- \def\iinput#1{\@@input#1 }
- \def\tub@inputcheck{\if\@nextchar\bgroup
- \expandafter\iinput\else\expandafter\@@input\fi}
- \def\input{\futurelet\@nextchar\tub@inputcheck}
-\fi
-
-% Smashes repeated from AMS-TeX; PLAIN implements only full \smash .
-\newif\iftop@ \newif\ifbot@
-\def\topsmash{\top@true\bot@false\smash@}
-\def\botsmash{\top@false\bot@true\smash@}
-\def\smash{\top@true\bot@true\smash@}
-\def\smash@{\relax\ifmmode\def\next{\mathpalette\mathsm@sh}%
- \else\let\next\makesm@sh\fi \next }
-\def\finsm@sh{\iftop@\ht\z@\z@\fi\ifbot@\dp\z@\z@\fi\box\z@}
-
-
-% Vertical `laps'; cf. \llap and \rlap
-\long\def\ulap#1{\vbox to \z@{\vss#1}}
-\long\def\dlap#1{\vbox to \z@{#1\vss}}
-
-% And centered horizontal and vertical `laps'
-\def\xlap#1{\hbox to \z@{\hss#1\hss}}
-\long\def\ylap#1{\vbox to \z@{\vss#1\vss}}
-\long\def\zlap#1{\ylap{\xlap{#1}}}
-
-
-% Avoid unwanted vertical glue when making up pages.
-\def\basezero{\baselineskip\z@skip \lineskip\z@skip}
-
-
-% Empty rules for special occasions
-\def\nullhrule{\hrule height\z@ depth\z@ width\z@ }
-\def\nullvrule{\vrule height\z@ depth\z@ width\z@ }
-
-% Support ad-hoc strut construction.
-\def\makestrut[#1;#2]{\vrule height#1 depth#2 width\z@ }
-
-% Construct box for figure pasteup, etc.
-% height = #1, width = #2, rule thickness = #3
-\def\drawoutlinebox[#1;#2;#3]{\T@stDimen=#3
- \vbox to#1{\hrule height\T@stDimen depth\z@
- \vss\hbox to#2{\vrule width\T@stDimen
- \hfil\makestrut[#1;\z@]%
- \vrule width\T@stDimen}\vss
- \hrule height\T@stDimen depth\z@}}
-
-
-% Today's date, to be printed on drafts. Based on TeXbook, p.406.
-
-\def\today{\number\day\space \ifcase\month\or
- Jan \or Feb \or Mar \or Apr \or May \or Jun \or
- Jul \or Aug \or Sep \or Oct \or Nov \or Dec \fi
- \number\year}
-
-% Current time; this may be system dependent!
-\newcount\hours
-\newcount\minutes
-\def\SetTime{\hours=\time
- \global\divide\hours by 60
- \minutes=\hours
- \multiply\minutes by 60
- \advance\minutes by-\time
- \global\multiply\minutes by-1 }
-\SetTime
-\def\now{\number\hours:\ifnum\minutes<10 0\fi\number\minutes}
-
-\def\Now{\today\ \now}
-
-\newif\ifPrelimDraft \PrelimDraftfalse
-
-\def\midrtitle{\ifPrelimDraft {{\tensl preliminary draft, \Now}}\fi}
-
-% Section heads. The following set of macros is used to set the large
-% TUGboat section heads (e.g. "General Delivery", "Fonts", etc.)
-
-\newdimen\PreTitleDrop \PreTitleDrop=\z@
-
-\newskip\AboveTitleSkip \AboveTitleSkip=12pt
-\newskip\BelowTitleSkip \BelowTitleSkip=8pt
-
-\newdimen\strulethickness \strulethickness=.6pt
-\def\sthrule{\hrule height\strulethickness depth \z@ }
-\def\stvrule{\vrule width\strulethickness }
-
-\newdimen\stbaselineskip \stbaselineskip=18pt
-
-\def\@sectitle #1{%
- \par \SecTitletrue
- \penalty-1000
- \secsep
- \vbox{
- \sthrule
- \hbox{%
- \stvrule
- \vbox{
- \advance\hsize by -2\strulethickness
- \raggedcenter
- \def\\{\unskip\break}%
- \sectitlefont
- \makestrut[2\stfontheight;\z@]
- #1\unskip
- \makestrut[\z@;\stfontheight]\endgraf
- }%
- \stvrule }
- \sthrule }
- \nobreak
- \vskip\baselineskip }
-
-% distance between articles which are run together
-\def\secsep{\vskip 5\baselineskip}
-
-\newif\ifSecTitle
-\SecTitlefalse
-
-
-
-% Registration marks; permit them to be invisible
-
-\newdimen\RegRuleThickness \RegRuleThickness=0.2pt
-
-\def\HorzR@gisterRule{\vrule height\RegRuleThickness depth \z@ width 0.5in }
-\def\DownShortR@gisterRule{%
- \vrule height 0.2pt depth 1pc width\RegRuleThickness }
-\def\UpShortR@gisterRule{\vrule height 1pc depth \z@ width\RegRuleThickness }
-
-
-% ``T'' marks centered on top and bottom edges of paper
-
-\def\ttopregister{\dlap{%
- \hbox to \trimwd{\HorzR@gisterRule \hfil \HorzR@gisterRule
- \HorzR@gisterRule \hfil \HorzR@gisterRule}%
- \hbox to \trimwd{\hfil \DownShortR@gisterRule \hfil}}}
-\def\tbotregister{\ulap{%
- \hbox to \trimwd{\hfil \UpShortR@gisterRule \hfil}%
- \hbox to \trimwd{\HorzR@gisterRule \hfil \HorzR@gisterRule
- \HorzR@gisterRule \hfil \HorzR@gisterRule}}}
-
-\def\topregister{\ttopregister}
-\def\botregister{\tbotregister}
-
-
-
-% PLAIN's definition of \raggedright doesn't permit any stretch, and
-% results in too many overfull boxes. We also turn off hyphenation.
-\newdimen\raggedskip \raggedskip=\z@
-\newdimen\raggedstretch \raggedstretch=5em % ems of font set now (10pt)
-\newskip\raggedparfill \raggedparfill=\z@ plus 1fil
-
-\def\raggedspaces{\spaceskip=.3333em \relax \xspaceskip=.5em \relax }
-% Some applications may have to add stretch, in order to avoid
-% all overfull boxes.
-
-\def\raggedright{%
- \nohyphens
- \rightskip=\raggedskip plus\raggedstretch \raggedspaces
- \parfillskip=\raggedparfill }
-\def\raggedleft{%
- \nohyphens
- \leftskip=\raggedskip plus\raggedstretch \raggedspaces
- \parfillskip=\z@skip }
-\def\raggedcenter{%
- \nohyphens
- \leftskip=\raggedskip plus\raggedstretch
- \rightskip=\leftskip \raggedspaces
- \parindent=\z@ \parfillskip=\z@skip }
-
-\def\normalspaces{\spaceskip\z@skip \xspaceskip\z@skip }
-
-
-% Miscellaneous useful stuff
-
-\def\,{\relax\ifmmode\mskip\thinmuskip\else\thinspace\fi}
-
-%\def~{\penalty\@M \ } % tie -- this is PLAIN value; it is reset in AMS-TeX
-\def~{\unskip\nobreak\ \ignorespaces} % AMS-TeX value
-
-\def\newbox{\alloc@4\box\chardef\insc@unt} % remove \outer
-\def\boxcs#1{\box\csname#1\endcsname}
-\def\setboxcs#1{\setbox\csname#1\endcsname}
-\def\newboxcs#1{\expandafter\newbox\csname#1\endcsname}
-
-\def\gobble#1{}
-
-\def\vellipsis{%
- \leavevmode\kern0.5em
- \raise1pt\vbox{\baselineskip6pt\vskip7pt\hbox{.}\hbox{.}\hbox{.}}
- }
-
-\def\bull{\vrule height 1ex width .8ex depth -.2ex } % square bullet
-\def\cents{{\rm\raise.2ex\rlap{\kern.05em$\scriptstyle/$}c}}
-\def\Dag{\raise .6ex\hbox{$\scriptstyle\dagger$}}
-
-\def\careof{\leavevmode\hbox{\raise.75ex\hbox{c}\kern-.15em
- /\kern-.125em\smash{\lower.3ex\hbox{o}}} \ignorespaces}
-\def\sfrac#1/#2{\leavevmode\kern.1em
- \raise.5ex\hbox{\the\scriptfont\z@ #1}\kern-.1em
- /\kern-.15em\lower.25ex\hbox{\the\scriptfont\z@ #2}}
-
-\def\thinskip{\hskip 0.16667em\relax}
-\def\endash{--}
-\def\emdash{\endash-}
-\def\d@sh#1#2{\unskip#1\thinskip#2\thinskip\ignorespaces}
-\def\dash{\d@sh\nobreak\endash}
-\def\Dash{\d@sh\nobreak\emdash}
-\def\ldash{\d@sh\empty{\hbox{\endash}\nobreak}}
-\def\rdash{\d@sh\nobreak\endash}
-\def\Ldash{\d@sh\empty{\hbox{\emdash}\nobreak}}
-\def\Rdash{\d@sh\nobreak\emdash}
-
-% Hack to permit automatic hyphenation after an actual hyphen.
-
-\def\hyph{-\penalty\z@\hskip\z@skip }
-
-\def\slash{/\penalty\z@\hskip\z@skip } % "breakable" slash
-
-% Adapted from c.t.t posting by Donald Arseneau, 26 May 93.
-\def\nth#1{\TestCount=#1\relax
- \ifnum\TestCount <0 \multiply\TestCount by\m@ne \fi % subdue negatives
- \T@stCount=\TestCount
- \divide\T@stCount by 100 \multiply\T@stCount by 100
- \advance\TestCount by-\T@stCount % n mod 100
- \ifnum\TestCount >20 \T@stCount=\TestCount
- \divide\T@stCount by 10 \multiply\T@stCount by 10
- \advance\TestCount by-\T@stCount % n mod 10
- \fi
- \T@stCount=\the\fam\relax
- $\fam\T@stCount#1^{\fam\T@stCount
- \ifcase\TestCount th% 0th
- \or st% 1st
- \or nd% 2nd
- \or rd% 3rd
- \else th% nth
- \fi
- }$}
-
-
-% Format information on reviewed items for book review articles.
-
-\def\Review:#1{\ifx[#1\@Rev[%
- \else Book review:\enspace\sl #1%
- \fi
- }
-\def\@Rev[#1]{\ignorespaces#1\unskip:\enspace\ignorespaces\sl}
-\def\reviewitem{%
- \def\revauth##1{\def\therevauth{##1, }\ignorespaces}%
- \def\revtitle##1{\def\therevtitle{{\sl##1}. }\ignorespaces}%
- \def\revpubinfo##1{\def\therevpubinfo{##1.}\ignorespaces}%
- }
-\def\endreviewitem{{\noindent\interlinepenalty=10000
- \therevauth\therevtitle\therevpubinfo\endgraf}%
- \vskip\medskipamount
- \ifx\tugstyloaded@\plaintubstyle
- \DeleteOptionalSpacesandPars{\noindent\ignorespaces}%
- \fi
- }
-
-\def\booktitle#1{{\sl #1\/}}
-
-
-% Dates and other items which identify the volume and issue
-
-% To use: \vol 5, 2.
-% \issdate October 1984.
-% \issueseqno=10
-% For production, these are set in a separate file, TUGBOT.DATES,
-% which is issue-specific.
-
-\newcount\issueseqno \issueseqno=-1
-
-\def\v@lx{\gdef\volx{Volume~\volno~(\volyr), No.~\issno}}
-\def\volyr{}
-\def\volno{}
-\def\vol #1,#2.{\gdef\volno{#1\unskip}%
- \gdef\issno{\ignorespaces#2\unskip}%
- \setbox\TestBox=\hbox{\volyr}%
- \ifdim \wd\TestBox > .2em \v@lx \fi }
-
-% Original issue date included month and year.
-\def\issdate #1#2 #3.{\gdef\issdt{#1#2 #3}\gdef\volyr{#3}%
- \gdef\bigissdt{#1{\smc\uppercase{#2}} #3}%
- \setbox\TestBox=\hbox{\volno}%
- \ifdim \wd\TestBox > .2em \v@lx \fi }
-% Beginning in 2002, only year
-\def\issyear #1.{\gdef\issdt{#1}\gdef\volyr{#1}%
- \gdef\bigissdt{#1}%
- \setbox\TestBox=\hbox{\volno}%
- \ifdim \wd\TestBox > .2em \v@lx \fi }
-
-\vol 0, 0. % volume, issue.
-\issdate Thermidor, 2001. % month, year of publication
-
-
-\ifx\tugstyloaded@\plaintubstyle
- \def\tubissue#1(#2){\TUB~#1, no.~#2}
-\else
- \def\tubissue#1#2{\TUB~#1, no.~#2}
-\fi
-
-\def\xEdNote{{\tenuit Editor's note:\enspace }}
-
-
-% TUGboat conventions include the issue number in the file name.
-% Permit this to be incorporated into file names automatically.
-% If issue number = 11, \Input filnam will read tb11filnam.tex.
-
-
-\def\infil@{\jobname}
-\def\Input #1 {\ifnum\issueseqno<0 \def\infil@{#1}%
- \else \def\infil@{tb\number\issueseqno#1}\fi
- \edef\jobname{\infil@}\@readFLN
- \@@input \infil@\relax
- \ifRMKopen\immediate\closeout\TBremarkfile\RMKopenfalse\fi}
-
-\newif\ifRMKopen \RMKopenfalse
-\newwrite\TBremarkfile
-\def\TBremarkON#1{%
- \ifRMKopen\else\RMKopentrue\immediate\openout\TBremarkfile=\infil@.rmk \fi
- \toks@={#1}%
- \immediate\write\TBremarkfile{^^J\the\toks@}%
- \immediate\write16{^^JTBremark:: \the\toks@^^J}}
-\def\TBremarkOFF#1{}
-\let\TBremark=\TBremarkOFF
-
-% for marking locations in articles that pertain to remarks
-% in another file of editorial comments
-\def\TUBedit#1{}
-
-% for using different filenames in Providence than those supplied
-% by authors
-
-\def\TUBfilename#1#2{\expandafter\def\csname file@@#1\endcsname{#2}}
-\newread\@altfilenames
-\def\@readFLN{\immediate\openin\@altfilenames=\jobname.fln
- \ifeof\@altfilenames\let\@result\relax\else
- \def\@result{\@@input\jobname.fln }\fi
- \immediate\closein\@altfilenames
- \@result}
-\@readFLN
-\everyjob=\expandafter{\the\everyjob\@readFLN}
-
-% Following needs to work entirely in TeX's mouth
-\def\@tubfilename#1{\expandafter\ifx\csname file@@#1\endcsname\relax
- #1\else\csname file@@#1\endcsname\fi}
-
-\def\fileinput#1{\@@input\@tubfilename{#1} }
-
-% Write out (both to a file and to the log) the starting page number
-% of an article, to be used for cross references and in contents.
-% \pagexref is used for articles fully processed in the TUGboat run.
-% \PageXref is used for "extra" pages, where an item is submitted
-% as camera copy, and only running heads (at most) are run.
-
-\ifx\tugstyloaded@\plaintubstyle
-\def\pagexrefON#1{%
- \write-1{\def\expandafter\noexpand\csname#1\endcsname{\number\pageno}}%
- \write\ppoutfile{%
- \def\expandafter\noexpand\csname#1\endcsname{\number\pageno}}%
- }
-\def\PageXrefON#1{%
- \immediate\write-1{\def\expandafter
- \noexpand\csname#1\endcsname{\number\pageno}}%
- \immediate\write\ppoutfile{\def\expandafter
- \noexpand\csname#1\endcsname{\number\pageno}}}
-\else
-\def\pagexrefON#1{%
- \write-1{\def\expandafter\noexpand\csname#1\endcsname{\number\c@page}}%
- \write\ppoutfile{%
- \def\expandafter\noexpand\csname#1\endcsname{\number\c@page}}%
- }
-\def\PageXrefON#1{%
- \immediate\write-1{\def\expandafter
- \noexpand\csname#1\endcsname{\number\c@page}}%
- \immediate\write\ppoutfile{\def\expandafter
- \noexpand\csname#1\endcsname{\number\c@page}}}
-\fi
-
-\def\pagexrefOFF#1{}
-\let\pagexref=\pagexrefOFF
-\def\PageXrefOFF#1{}
-\let\PageXref=\PageXrefOFF
-
-\def\xreftoON#1{%
- \ifundefined{#1}%
- ???\TBremark{Need cross reference for #1.}%
- \else\csname#1\endcsname\fi}
-\def\xreftoOFF#1{???}
-\let\xrefto=\xreftoOFF
-
-\def\TBdriver#1{}
-
-
-% Authors, addresses, signatures
-
-\def\theauthor#1{\csname theauthor#1\endcsname}
-\def\theaddress#1{\csname theaddress#1\endcsname}
-\def\thenetaddress#1{\csname thenetaddress#1\endcsname}
-
-\newcount\count@@
-\def\@defaultauthorlist{% % standard way of listing authors
- \count@=\authornumber
- \advance\count@ by -2
- \count@@=0
- \loop
- \ifnum\count@>0
- \advance\count@@ by 1
- \ignorespaces\csname theauthor\number\count@@\endcsname\unskip,
- \advance\count@ by -1
- \repeat
- \count@=\authornumber
- \advance\count@ by -\count@@
- \ifnum\authornumber>0
- \ifnum\count@>1
- \count@=\authornumber
- \advance\count@ by -1
- \ignorespaces\csname theauthor\number\count@\endcsname\unskip\ and
- \fi
- \ignorespaces\csname theauthor\number\authornumber\endcsname\unskip
- \fi
- }
-
-\def\signature#1{\def\@signature{#1}}
-\def\@signature{\@defaultsignature}
-
-\def\@defaultsignature{%
- \count@=0
- \loop
- \ifnum\count@<\authornumber
- \medskip
- \advance\count@ by \@ne
- \signaturemark
- \theauthor{\number\count@}\\
- \leavevmode\theaddress{\number\count@}\\
- \leavevmode\thenetaddress{\number\count@}\\
- \repeat
- }
-
-\newdimen\signaturewidth \signaturewidth=12pc
-\def\makesignature{%
- \par
- \penalty9000
- \vskip\medskipamount
- \rightline{%
- \vbox{\hsize\signaturewidth \ninepoint \raggedright
- \parindent \z@ \everypar={\hangindent 1pc }
- \parskip \z@skip
- \netaddrat
- \netaddrpercent
- \def\|{\unskip\hfil\break}%
- \def\\{\endgraf}%
- \def\net{\tt}%
- \def\phone{\rm Phone: } \rm
- \@signature}}
- }
-
-{\makeactive\@
- \gdef\signatureat{\makeactive\@\def@{\char"40\discretionary{}{}{}}}
- \makeactive\%
- \gdef\signaturepercent{\makeactive\%\def%{\char"25\discretionary{}{}{}}}
-}
-
-\def\signaturemark{\leavevmode\llap{$\diamond$\enspace}}
-
-
-% some hyphenation exceptions:
-\hyphenation{Del-a-ware Dijk-stra Duane Eijk-hout
- Flor-i-da Free-BSD Ghost-script Ghost-view
- Hara-lam-bous Jac-kow-ski Karls-ruhe
- Mac-OS Math-Sci-Net
- Net-BSD Open-BSD Open-Office
- Pfa-Edit Post-Script Rich-ard Skoup South-all
- VM-ware Win-Edt
- acro-nym ap-pen-dix asyn-chro-nous
- bit-map bit-mapped bit-maps buf-fer buf-fers bool-ean
- col-umns cus-tom-iz-able
- data-base data-bases
- de-riv-a-tive de-riv-a-tives de-riv-a-ble der-i-va-tion
- fall-ing
- half-way
- key-note
- long-est
- ma-gyar man-u-script man-u-scripts
- off-line over-view
- pal-ettes par-a-digm par-a-dig-mat-ic par-a-digms
- pipe-line pipe-lines
- plug-in plug-ins pro-gram-mable
- se-vere-ly spell-ing spell-ings stand-alone strong-est
- sub-ex-pres-sion syn-chro-ni-city syn-chro-nous
- time-stamp time-stamped
- vis-ual vis-ual-ly
- which-ever white-space white-spaces wide-spread wrap-around
-}
-
-
-\restorecat\@
-
-\endinput
-
-
-% *************************************************************************
-
-Contents and Notes
-------------------
-
-\makeescape, ..., \makecomment allow users to change category
-codes a little more easily.
-
-\savecat#1 and \restorecat#1 will save and restore the category
-of a given character. These are useful in cases where one doesn't
-wish to localize the settings and therefore be required to globally
-define or set things.
-
-\SaveCS#1 and \RestoreCS#1 save and restore `meanings' of control
-sequences. Again this is useful in cases where one doesn't want to
-localize or where global definitions clobber a control sequence which
-is needed later with its `old' definition.
-
-Abbreviations. Just a listing with indications of expansion where
-that may not be obvious. For full definitions, see real code above.
-
-\AllTeX (\La)\TeX
-\AMS American Mathematical Society
-\AmSTeX
-\aw A-W (abbreviation for Addison-Wesley)
-\AW Addison-Wesley
-\BibTeX
-\CandT Computers \& Typesetting
-\ConTeXt
-\Cplusplus C++
-\DVItoVDU
-\Hawaii Hawai`i
-\HTML HTML
-\ISBN ISBN
-\JTeX
-\JoT The Joy of \TeX
-\LaTeX
-\MacOSX Mac OS X
-\MathML
-\Mc M ``w/ raised c''
-\MF METAFONT
-\mf Metafont (using small caps)
-\MFB The Metafont book
-\MP METAPOST
-\mtex multilingual TeX
-\NTS
-\OCP \Omega CP
-\pcMF pcMF
-\PCTeX
-\pcTeX
-\Pas Pascal
-\PDF PDF
-\PiCTeX
-\plain plain (in typewriter font)
-\POBox P. O. Box
-\POBoxTUG TUG PO Box
-\PS PostScript
-\SC Steering Committee
-\SGML SGML
-\SliTeX
-\slMF Metafont (slanted)
-\stTeX TeX for the Atari ST
-\TANGLE
-\TB The \TeX book
-\TeX
-\TeXhax
-\TeXMaG
-\TeXtures
-\TeXXeT
-\Thanh Han The Thanh
-\TUB TUGboat
-\TUG TeX Users Group
-\UNIX
-\VAX
-\VorTeX
-\XeT
-\XML
-\WEB
-\WEAVE
-
-\NoBlackBoxes turns off marginal rules marking overfull boxes
-\BlackBoxes turns them back on
-\newline horizontal glue plus a break
-
-\ifundefined#1 checks argument with \csname against \relax
-
-\topsmash smashes above baseline (from AMSTeX)
-\botsmash smashes below baseline (from AMSTeX)
-\smash smashes both (from plain)
-
-\ulap lap upwards
-\dlap lap downwards
-\xlap reference point at center horizontally; 0 width
-\ylap reference point at center vertically; 0 height, depth
-\zlap combination \xlap and \ylap
-
-\basezero to avoid insertion of baselineskip and lineskip glue
-
-\nullhrule empty \hrule
-\nullvrule empty \vrule
-
-\makestrut[#1;#2] ad hoc struts; #1=height, #2=depth
-
-\today today's date
-\SetTime converts \time to hours, minutes
-\now displays time in hours and minutes
-\Now shows current date and time
-
-\ifPrelimDraft flag to indicate status as preliminary draft
-
-\rtitlex TUGboat volume and number info for running head
-\midrtitle information for center of running head
-
-\HorzR@gisterRule pieces of registration marks ("trimmarks")
-\DownShortR@gisterRule
-\UpShortR@gisterRule
-
-\ttopregister top registration line with `T' in center
-\tbotregister bottom registration line with inverted `T' in center
-\topregister register actually used
-\botregister
-
-
-\raggedskip parameters used for ragged settings
-\raggedstretch
-\raggedparfill
-\raggedspaces
-
-\raggedright
-\raggedleft
-\raggedcenter
-\normalspaces
-\raggedbottom
-
-\bull square bullet
-\cents ``cents'' sign
-\Dag superscripted dagger
-\careof c/o
-\sfrac slashed fraction
-
-\dash en-dash surrounded by thinspaces; only breakable AFTER
-\Dash em-dash, as above
-
-\hyph permit automatic hyphenation after an actual hyphen
-
-\slash "breakable" slash
-\nth for obtaining "1^{st}", "2^{nd}", 3^{rd}, etc.
-
-\tubissue gets \TUB followed by volume and issue numbers
-
-\xEdNote Editor's Note:
-
-\Review: Review: (for title of book review article)
-\reviewitem begin data for item being reviewed
- \revauth with one argument, author(s) of item being reviewed
- \revtitle with one argument, title of ...
- \revpubinfo with one argument, other info pertaining to ...
-\endreviewitem end data for item being reviewed
-\booktitle with one argument, format book title in text
-
-\Input \input with some other bookkeeping for
- case where multiple articles are put together
-
-\TBremark reminder to TUGboat editorial staff
-\TBremarkON
-\TBremarkOFF
-
-\pagexref used to write out page numbers to screen and
-\pagexrefON external files
-\pagexrefOFF
-\PageXref
-\PageXrefON
-\PageXrefOFF
-
-\xrefto used for symbolic cross-reference to other pages
-\xreftoON in TUGboat
-\xreftoOFF
-
-\TBdriver marks code which only takes effect when articles
- are run together in a driver file
-
-\signatureat items for signatures
-\signaturepercent
-\signaturemark
-\signaturewidth
-
-
-% *************************************************************************
-
-% Change history
-
-Version Date Changes
-------- --------- ---------------------------------------------------
-1.15 30 Apr 06 additions to match ltugboat.cls v2.0, 2006/04/25:
- name macros and hyphenation exceptions
-
-1.14 21 Jun 04 added numerous name macros and hyphenation exceptions
-
-1.13l 15 Nov 03 updated header address to Portland, OR
-
-1.13k 28 Jun 03 added \RegRuleThickness to allow easy modification
-
-1.13j 16 Feb 03 added \issyear to handle removal of month
-
-1.13i 14 Oct 96 updated header and installed CRC-16 checksum
-
-1.13h 10 Nov 95 added \acro and converted all \SMC entries to use it
- added acronyms \HTML and \PDF
-
-1.13g 4 Nov 95 added \MP for METAPOST
-
-1.13f 15 Apr 94 added \@Rev[...] to permit variable text for reviews
-
-1.13e 14 Mar 94 revised definition of \La to use actual width of A
- added \LaTeXe definition
-
-1.13d 5 Jan 94 added {} to \TeX-{}-\Xet
-
-1.13c 11 Nov 93 removed extraneous " from header
- added \AmSLaTeX, \CTAN, \ISSN
-
-1.13b 4 Nov 93 added \hyphenation{Eijk-hout}
-
-1.13a 18 Aug 93 corrected \nth to produce ordinal in current font
-
-1.13 27 May 93 upgraded \nth based on algorithm by Donald Arseneau
- in comp.text.tex, 26 May 93
-
-1.12 19 Feb 93 added \spacefactor1000 to all replacement text that ends
- with a capital letter, so that if these items end a
- sentence, there will be a normal end-of-sentence space
- removed \hbox from definitions of \TeX, etc.; no longer
- needed
- changed definition of \TeXXeT to use \XeT rather than
- unique dimensions
- installed new TUG address and phone number in header
- reformatted change history, similar to tugboat.sty
-
-1.11c 29 Nov 92 added macros to format book review and related items for
- review articles
- added \SGML
- changed def of \UNIX to use \SMC rather than \smc
-
-1.11b 20 Oct 92 added font code for \ISBN font ("big small caps")
- added \Textures as the current form
-
-1.11a 6 Jun 92 added \drawoutlinebox
-
-1.11 15 Mar 92 added \ttn and \TTN
-
-1.10 8 Mar 92 added \AllTeX
- changed file name from .COM to .CMN to avoid objection
- that .COM files have a special significance on DOS
- and other operating systems
- added standard headers, prepared for archive installation
-
-1.09 5 May 91 inserted large penalty at top of \makesignature to
- inhibit break between article and signature
-
-1.08 24 Oct 90 modified signature slightly (took \medskip out of box)
- fixed bug in previous rendition of \@readFLN
-
-1.07 16 Oct 90 added \TUBedit to facilitate editorial marking
- added \iinput variant from LaTeX; \input redefined now
- as with LaTeX
- added mechanism for local file names in Providence
- (\TUBfilename, \fileinput, etc.)
- \tugstyload@ defaults to plain if it's not defined
-
-1.06 3 Aug 90 added \leavevmode to \@defaultsignature so that
- \everypar is not executed inside a group
- dash routines modified and corrected (to suppress
- insertion of discretionary node after -- and ---;
- and to allow hyphenation of ensuing word)
- changed \lDash to \Ldash and \rDash to \Rdash
-
-1.05 29 Mar 90 added \lDash and \rDash for `parenthetical' dashing
- added \TP for TeX: The Program
- added \relax after file input of \Input
- added \relax before \ifmmode of \,
-
-1.04 28 Feb 90 modified pagexref macros to work in both plain and
- latex styles (this should NOT affect authors)
-
-1.03 26 Feb 90 removed <tab>s and adjusted definition of \slMF
-
-1.02 25 Feb 90 added definitions of \plaintubissue, \latextubissue
- added definition of \tubissue
-
-1.01 19 Feb 90 added \signaturewidth to allow for modification
- added \nth to obtain 1^{st}, etc.
diff --git a/Master/texmf-dist/tex/plain/tugboat/tugboat.sty b/Master/texmf-dist/tex/plain/tugboat/tugboat.sty
deleted file mode 100644
index 3910979c48b..00000000000
--- a/Master/texmf-dist/tex/plain/tugboat/tugboat.sty
+++ /dev/null
@@ -1,2245 +0,0 @@
-%% @texfile{
-%% filename = "tugboat.sty",
-%% version = "1.17",
-%% date = "2006/06/03",
-%% time = "16:34:03 EDT",
-%% checksum = "28581 2245 6313 69379",
-%% filetype = "Plain TeX macros for TUGboat",
-%% copyright = "Copyright 1993, 1999, 2003, 2006 TeX Users Group.
-%% Unlimited copying and redistribution of this file
-%% are permitted as long as this file is not
-%% modified. Modifications (and redistribution of
-%% modified versions) are also permitted, but only if
-%% the resulting file is renamed."
-%% author = "TeX Users Group",
-%% address = "TeX Users Group,
-%% P.O.Box 2311,
-%% Portland, OR 97208-2311,
-%% USA",
-%% telephone = "+1 503 223-9994",
-%% FAX = "+1 206 203-3960",
-%% email = "TUGboat@tug.org",
-%% codetable = "ISO/ASCII",
-%% keywords = "tex users group, tugboat, plain tex",
-%% supported = "yes",
-%% abstract = "This file contains the plain-based macros
-%% for preparation of TUGboat, the Communications
-%% of the TeX Users Group.",
-%% docstring = "The checksum field above contains a CRC-16
-%% checksum as the first value, followed by the
-%% equivalent of the standard UNIX wc (word
-%% count) utility output of lines, words, and
-%% characters. This is produced by Robert
-%% Solovay's checksum utility.",
-%% }
-%% *********************************************************
-%%
-%% TeXing with this file also requires the following files:
-%% TUGBOAT.CMN (version 1.08+)
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% TUGBOAT.STY
-
-\def\thistubstyle{plain}
-\def\fileversion{v1.17}
-\def\filedate{2006/06/03}
-
-% general items
-
-\def\makeatletter{\catcode`\@=11 }
-\makeatletter % used, as in PLAIN, in protected control sequences
-
-% stop reading this file if it's been loaded already
-\ifx\tugstyloaded@\thistubstyle\makeatother\initializearticle
- \endinput\else\let\tugstyloaded@\thistubstyle\fi
-
-\message{File `TUGBOAT.STY' \fileversion \space\space <\filedate>}
-
-\input tugboat.cmn % macros common to tugboat.sty and
- % ltugboat.sty (latex style file)
-
-
-% some things with the same names as in, or reiterated from, AMS-TeX
-
-\def\document{} % override an AMS-TeX convention
-
-\output{\output@}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Directory.
-%
-% ** fonts
-% ** page dimensions
-% ** headers/footers
-% ** page adjustment
-% ** output
-% ** general mechanism for tags
-% ** titles, authors, addresses
-% ** heads
-% ** text and subtext
-% ** lists
-% ** verbatim
-% ** figures
-% ** utilities
-% ** initialization
-
-
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** fonts *****
-%
-
-
-% Struts give ascenders and descenders to assist in baseline alignment
-% (e.g. of adjoining vertical boxes); useful only with text fonts.
-%
-% \strut is defined in PLAIN . The structure of \strutt is equivalent.
-
-\newbox\struttbox
-\def\strutt{\relax\ifmmode\copy\struttbox\else\unhcopy\struttbox\fi}
-
-% Struts are given the following dimensions for use in TUGboat:
-%
-% \strut = height/depth of parenthesis in current font
-% (not the same as PLAIN)
-% \strutt height + depth = \normalbaselineskip,
-% height = same as \strut
-% (equivalent to PLAIN \strut )
-
-
-% The fonts below are sufficient for most ordinary TUGboat production.
-% Additional titling fonts are defined elsewhere, and occasionally an
-% extra font will be needed for a particular item (e.g. the device
-% charts) and defined in that file.
-
-% All PLAIN CM fonts.
-
-\font\tenrm=cmr10
-\font\ninerm=cmr9
-\font\eightrm=cmr8
-\font\sevenrm=cmr7
-\font\sixrm=cmr6
-\font\fiverm=cmr5
-
-\font\teni=cmmi10 \skewchar\teni='177
-\font\ninei=cmmi9 \skewchar\ninei='177
-\font\eighti=cmmi8 \skewchar\eighti='177
-\font\seveni=cmmi7 \skewchar\seveni='177
-\font\sixi=cmmi6 \skewchar\sixi='177
-\font\fivei=cmmi5 \skewchar\fivei='177
-
-\font\tensy=cmsy10 \skewchar\tensy='60
-\font\ninesy=cmsy9 \skewchar\ninesy='60
-\font\eightsy=cmsy8 \skewchar\eightsy='60
-\font\sevensy=cmsy7 \skewchar\sevensy='60
-\font\sixsy=cmsy6 \skewchar\sixsy='60
-\font\fivesy=cmsy5 \skewchar\fivesy='60
-
-\font\tenex=cmex10
-
-\font\tenbf=cmbx10
-\font\ninebf=cmbx9
-\font\eightbf=cmbx8
-\font\sevenbf=cmbx7
-\font\sixbf=cmbx6
-\font\fivebf=cmbx5
-
-\font\tentt=cmtt10
-\font\ninett=cmtt9
-\font\eighttt=cmtt8
-
-\font\tensl=cmsl10
-\font\ninesl=cmsl9
-\font\eightsl=cmsl8
-\font\sevensl=cmti7 % Would use cmsl7 if it were standard.
- % Currently needed only for \def of \LaTeX
-
-\font\tenit=cmti10
-\font\nineit=cmti9
-\font\eightit=cmti8
-\font\sevenit=cmti7
-
-\font\tenuit=cmu10
-\font\tenbfsl=cmbxsl10
-
-\font\tensmc=cmcsc10
-\font\ninesmc=cmcsc10 % redefine if cmcsc9 and/or cmcsc8 exist
-\font\eightsmc=cmcsc10
-
-\font\tentex=cmtex10 % for ASCII character set
-
-\def\mit{\fam\@ne} % from plain
-\def\cal{\fam\tw@} % from plain
-\def\sy{\cal}
-
-% cmss fonts are not needed all the time. Permit as-needed access.
-\def\LoadSansFonts{%
- \global\font\twelvess=cmss10 scaled \magstep1
- \global\font\tenss=cmss10
- \global\font\niness=cmss9
- \global\font\eightss=cmss8
- \addto\tenpoint{\def\ssf{\tenss}}
- \addto\ninepoint{\def\ssf{\niness}}
- \addto\eightpoint{\def\ssf{\eightss}}
- \gdef\LoadSansFonts{}}
-
-% TUGboat section heads
-\font \seventeenssb=cmssbx10 scaled \magstep3
-\font \twelvessb=cmssbx10 scaled \magstep1
-
-\newfam\sectitlefam
-\textfont\sectitlefam=\seventeenssb \scriptfont\sectitlefam=\twelvessb
-
-% \stbaselineskip set in tugboat.com
-\def\sectitlefont{%
- \fam\sectitlefam \seventeenssb \baselineskip=\stbaselineskip }
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** Definitions of \tenpoint, \ninepoint, etc. *****
-%
-
-% Following is a facility for adding commands to \tenpoint, \ninepoint
-% and \eightpoint. \LoadSansFonts uses this technique above.
-% Also used to add math families, as with:
-% \addto\tenpoint{\textfont\frakfam...}
-% to add a Fraktur family.
-%
-\def\addto#1#2{%
- \csname @addsto\string#1\endcsname=
- \expandafter{\the\csname @addsto\string#1\endcsname#2}}
-\def\@additionsto#1{\expandafter\the\csname @addsto\string#1\endcsname}
-\expandafter\newtoks\csname @addsto\string\tenpoint\endcsname
-\expandafter\newtoks\csname @addsto\string\ninepoint\endcsname
-\expandafter\newtoks\csname @addsto\string\eightpoint\endcsname
-
-
-\newskip\ttglue
-\def\setttglue{%
- \edef\@thefont{\the\font}% to restore this font after the setting
- \tt \ttglue=.5em plus .25em minus .15em
- \@thefont}
-
-% We assume that \scriptscriptfonts remain the same throughout
-\scriptscriptfont\z@=\fiverm
-\scriptscriptfont\@ne=\fivei
-\scriptscriptfont\tw@=\fivesy
-\scriptscriptfont\thr@@=\tenex
-\scriptscriptfont\bffam=\sixbf
-
-\newdimen\normaltenpointstretch \normaltenpointstretch=1.6667pt
-\def\NormalTenPointSpacing{\AdjustNormalSpacing\tenpoint{}}
-\def\StretchyTenPointSpacing{\AdjustNormalSpacing\tenpoint{2.4}}
-
-\def\tenpoint{%
- \normalbaselineskip=12pt
- \abovedisplayskip=3pt plus 3pt minus 1pt
- \belowdisplayskip=3pt plus 3pt minus 1pt
- \abovedisplayshortskip=0pt plus 3pt
- \belowdisplayshortskip=1pt plus 3pt minus 1pt
- \def\rm{\fam\z@\tenrm}%
- \textfont\z@=\tenrm \scriptfont\z@=\sevenrm
- \def\oldstyle{\fam\@ne\teni}%
- \textfont\@ne=\teni \scriptfont\@ne=\seveni
- \textfont\tw@=\tensy \scriptfont\tw@=\sevensy
- \textfont\thr@@=\tenex \scriptfont\thr@@=\tenex
- \def\it{\fam\itfam\tenit}%
- \textfont\itfam=\tenit \scriptfont\itfam=\sevenit
- \def\sl{\fam\slfam\tensl}%
- \textfont\slfam=\tensl \scriptfont\slfam=\sevensl
- \def\bf{\def\sl{\tenbfsl}\fam\bffam\tenbf}%
- \textfont\bffam=\tenbf \scriptfont\bffam=\eightbf
- \def\smc{\tensmc}%
- \def\SMC{\ninerm}%
- \def\tt{\tentt}%
- \setttglue
- \def\upright{\tenuit}%
- \setbox\strutbox=\hbox{\vrule height7.5pt depth2.5pt width\z@}%
- \setbox\struttbox=\hbox{\vrule height8.5pt depth3.5pt width\z@}%
- \normalbaselines \rm
- \@additionsto\tenpoint}
-
-\tenpoint % initialize -- default font
-
-
-\newdimen\normalninepointstretch \normalninepointstretch=1.5pt
-\def\NormalNinePointSpacing{\AdjustNormalSpacing\ninepoint{}}
-\def\StretchyNinePointSpacing{\AdjustNormalSpacing\ninepoint{2.4}}
-
-\def\ninepoint{\normalbaselineskip=11pt
- \abovedisplayskip=2.5pt plus 2.5pt minus 1pt
- \belowdisplayskip=2.5pt plus 2.5pt minus 1pt
- \abovedisplayshortskip=0pt plus 2.5pt
- \belowdisplayshortskip=1pt plus 2.5pt minus 1pt
- \def\rm{\fam\z@\ninerm}%
- \textfont\z@=\ninerm \scriptfont\z@=\sevenrm
- \def\oldstyle{\fam\@ne\ninei}%
- \textfont\@ne=\ninei \scriptfont\@ne=\seveni
- \textfont\tw@=\ninesy \scriptfont\tw@=\sevensy
- \def\it{\fam\itfam\nineit}%
- \textfont\itfam=\nineit
- \def\sl{\fam\slfam\ninesl}%
- \textfont\slfam=\ninesl
- \def\bf{\fam\bffam\ninebf}%
- \textfont\bffam=\ninebf \scriptfont\bffam=\sevenbf
- \def\smc{\ninesmc}%
- \def\SMC{\eightrm}%
- \def\tt{\ninett}%
- \setttglue
- \setbox\strutbox=\hbox{\vrule height 6.75pt depth 2.25pt width\z@}%
- \setbox\struttbox=\hbox{\vrule height 7.75pt depth 3.25pt width\z@}%
- \normalbaselines \rm
- \@additionsto\ninepoint }
-
-% The following setting can be used when baselineskip = 10pt
-% \setbox\struttbox=\hbox{\vrule height 7.25pt depth 2.75pt width\z@}%
-
-
-\newdimen\normaleightpointstretch \normaleightpointstretch=1.333pt
-\def\NormalEightPointSpacing{\AdjustNormalSpacing\eightpoint{}}
-\def\StretchyEightPointSpacing{\AdjustNormalSpacing\eightpoint{2.25}}
-
-\def\eightpoint{\normalbaselineskip=10pt
- \abovedisplayskip=2pt plus 2pt minus 1pt
- \belowdisplayskip=2pt plus 2pt minus 1pt
- \abovedisplayshortskip=0pt plus 2pt
- \belowdisplayshortskip=1pt plus 2pt minus 1pt
- \def\rm{\fam\z@\eightrm}%
- \textfont\z@=\eightrm \scriptfont\z@=\sixrm
- \def\oldstyle{\fam\@ne\eighti}%
- \textfont\@ne=\eighti \scriptfont\@ne=\sixi
- \textfont\tw@=\eightsy \scriptfont\tw@=\sixsy
-% \textfont\thr@@=\eightex \scriptfont\thr@@=\eightex
- \def\it{\fam\itfam\eightit}%
- \textfont\itfam=\eightit
- \def\sl{\fam\slfam\eightsl}%
- \textfont\slfam=\eightsl
- \def\bf{\fam\bffam\eightbf}%
- \textfont\bffam=\eightbf \scriptfont\bffam=\sixbf
- \def\smc{\eightsmc}%
- \def\tt{\eighttt}%
- \setttglue
- \setbox\strutbox=\hbox{\vrule height 6pt depth 2pt width\z@}%
- \setbox\struttbox=\hbox{\vrule height 7pt depth 3pt width\z@}%
- \normalbaselines \rm
- \@additionsto\eightpoint }
-
-% The 8pt cap/small cap font is not loaded. See a corresponding remark
-% above for the 9pt csc font.
-
-% this is equivalent to baselineskip = 9pt
-% \setbox\struttbox=\hbox{\vrule height 6.5pt depth 2.5pt width\z@}%
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% Following will allow text to be a bit stretchier than the built-in
-% setting; TeXbook, page 433, 355
-
-\def\@setstretch{\fontdimen3\the\font=}
-\def\AdjustNormalSpacing#1#2{% #1=pointsize, #2=adjustment factor
- {\T@stDimen=#2\csname normal\expandafter\gobble\string#1stretch\endcsname
- #1%
- \rm\@setstretch\T@stDimen
- \it\@setstretch\T@stDimen
- \bf\@setstretch\T@stDimen
- }}
-
-
-
-% Anticipated changes to this font handling scheme:
-%
-% Dynamic loading of fonts, probably in groups according to size
-% Removal of \rm, \bf, etc., from \*point expansions, replacement
-% by generic \rm, \bf, etc. definitions
-% Mechanism for switching neatly between serif and sans-serif
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** page dimensions *****
-%
-
-
-% vertical dimensions
-
-\newdimen\trimlgt \trimlgt=11in % 10.5in (vols 7-9)
-\newdimen\headmargin \headmargin=3.5pc % 2.5pc (vols 7-9)
-\newdimen\pagelgt
-\newdimen\rheadlgt \rheadlgt=2.5pc % + headmargin = 6pc = 1in
-\newdimen\toplgt \toplgt=\z@
-\newdimen\normalcollgt \normalcollgt=54pc % 52pc for 5#2
-\newdimen\collgt \collgt=\normalcollgt
-\newdimen\Collgt
-\maxdepth=2pt
-\newdimen\botlgt \botlgt=\z@
-\newdimen\rfootlgt \rfootlgt=2pc
-
-\newif\ifThisIsFirstPage \ThisIsFirstPagefalse
-
-\def\resetpagelgt{%
- \pagelgt=\collgt \Collgt=\collgt
- \advance\pagelgt by \rheadlgt
- \ifThisIsFirstPage \advance\Collgt by-\toplgt
- \advance\Collgt by-\botlgt \fi
- \advance\pagelgt by \maxdepth
- \global\advance\pagelgt by \rfootlgt
- \global\vsize=\Collgt }
-
-\def\resetfpagelgt{%
- \global\ThisIsFirstPagetrue
- \resetpagelgt } % exclude special first page material
-
-\resetpagelgt
-\raggedbottom
-
-% horizontal dimensions
-
-\newdimen\colwd
-\newdimen\intercolwd \intercolwd=\z@
-\newdimen\pagewd \pagewd=39pc
-\newdimen\trimwd \trimwd=\pagewd
-\newdimen\oddleftindent \oddleftindent\z@
-\newdimen\evenleftindent \evenleftindent\z@
-
-\def\onecol{\colwd=\pagewd \OneCol }
-
-\newdimen\onenarrowcolwd \onenarrowcolwd=30pc
-\def\onenarrow{\colwd=\onenarrowcolwd \OneCol }
-
-% before 5#2, `narrow' was 34pc
-\newdimen\onemediumcolwd \onemediumcolwd=34pc
-\def\onemedium{\colwd=\onemediumcolwd \OneCol }
-
-\newdimen\twocolcolwd \twocolcolwd=18.75pc
-\def\twocol{\colwd=\twocolcolwd \intercolwd=1.5pc \TwoCol }
-
-\newdimen\threecolcolwd \threecolcolwd=12pc
-\def\threecol{\colwd=\threecolcolwd \intercolwd=1.5pc \ThreeCol }
-
-\def\CenterOneCol{%
- \oddleftindent\pagewd
- \advance\oddleftindent -\colwd
- \divide\oddleftindent\tw@
- \evenleftindent\oddleftindent
- \coloffset\ifodd\pageno\oddleftindent\else\evenleftindent\fi
- }
-
-\def\OneCol{\hsize=\colwd \CenterOneCol \numcols=1 \resetmaxcols}
-\def\ZeroLeftIndents{\oddleftindent\z@ \evenleftindent\z@ \coloffset\z@ }
-\def\TwoCol{\hsize=\colwd \numcols=2 \resetmaxcols \ZeroLeftIndents}
-\def\ThreeCol{\hsize=\colwd \numcols=3 \resetmaxcols \ZeroLeftIndents}
-
-\def\resetmaxcols{%
- \ifnum\numcols>\maxcols
- \ifOverlaysinTeX \maxcols=\numcols
- \else \immediate\write\sixt@@n{%
- The new setting of \string\numcols is greater than \string\maxcols.^^J
- Either allow overlays in TeX or increase \string\maxcols.}\fi
- \fi}
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** headers/footers *****
-%
-
-
-\def\pagenoprefix{}
-
-\def\rtitlex{\def\tubfont{\tenpoint\rm}\TUB, \volx }
-\def\rtitle{%
- \hbox to \pagewd{%
- \tenrm
- \makestrut[10pt;\z@]%
- \ifodd\pageno \rtitlex\qquad\midrtitle\hfil\pagenoprefix\number\pageno
- \else \pagenoprefix\number\pageno\hfil\midrtitle\qquad\rtitlex \fi
- }%
- }
-
-\def\runhead{\vbox to \rheadlgt{\rtitle \vfil }}
-
-\def\rfoot{%
- \hbox to \pagewd{%
- \tenrm
- \makestrut[\z@;0.5pc]%
- \midrtitle\hfil\midrtitle
- }%
- }
-
-\def\runfoot{\vbox to \rfootlgt{\vfil \rfoot }}
-
-% Macros to produce extra running heads for stripping onto pages
-% received as camera copy. Format must be preset to \OneCol, and
-% start on a new page.
-
-% Generate 5 (4 + normal running head) per page.
-
-\def\DrawT@pLines{%
- \vskip\topskip
- \ulap{%
- \line{%
- \raise 1ex\rlap{\leaders\hrule\hskip\pagewd}%
- \leaders\hrule\hfill
- }}
- \medskip}
-
-\def\r@nhead{%
- \vbox to .23\vsize{%
- \basezero \hsize=\pagewd \vfil
- \topregister \vskip\headmargin \runhead \DrawT@pLines }
- \medskip
- \advancepageno }
-
-\def\nextrunner{%
- \ifnum\T@stCount>0
- \ifnum\T@stCount>5 \TestCount=5 \else\TestCount=\T@stCount \fi
- \advance\T@stCount by-\TestCount
- \DrawT@pLines % always one at top of page
- \loop\ifnum\TestCount>1 \r@nhead \advance\TestCount by\m@ne \repeat
- \newpage
- \def\@next{\nextrunner}%
- \else \def\@next{}%
- \fi
- \@next }
-
-% Use \ExtraRunheads to generate running heads for stripping (e.g. for
-% author-supplied camera-ready copy). E.g., ``\ExtraRunheads 12, {}.'' will
-% generate 12 TUGboat running heads, up to 5 per page, starting with
-% the current page number.
-
-\def\ExtraRunheads #1, #2.{%
- \T@stCount=#1
- \gdef\pageprefix{#2}% % as in A-10 for appendices; not used just now
- \nextrunner }
-
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** insertions *****
-%
-
-
-\newif\if@floatable \@floatabletrue % sometimes we don't want
-\def\nofloat{\@floatablefalse} % midinsertions to float
-
-% redefine \@ins to avoid the \par of PLAIN
-\def\@ins{\begingroup\setbox\z@\vbox\bgroup}
-
-\newinsert\botins
-\newif\ifp@ge \newif\if@mid \newif\if@bot
-\def\topinsert{\@midfalse\p@gefalse\@botfalse\@ins}
-\def\botinsert{\@midfalse\p@gefalse\@bottrue\@ins}
-\def\midinsert{\@midtrue\@botfalse\@ins}
-\def\pageinsert{\@midfalse\@botfalse\p@getrue\@ins}
-\skip\botins=\z@skip
-\count\botins=1000
-\dimen\botins=\maxdimen
-\def\endinsert{\egroup % finish the \vbox
- \gdef\@next{}%
- \if@mid \dimen@\ht\z@ \advance\dimen@\dp\z@
- \advance\dimen@12\p@ \advance\dimen@\pagetotal
- \if@floatable
- \ifdim\dimen@>\pagegoal\@midfalse\@botfalse\p@gefalse\fi\fi
- \fi
- \if@mid
- \vskip\abovedisplayskip
- \box\z@
- \vskip\belowdisplayskip
- \gdef\@next{\@asifbelowdisplay}%
- \else\insert\if@bot\botins\else\topins\fi
- {\penalty100 % floating insertion
- \if@bot\medskip\nobreak\fi
- \splittopskip\z@skip
- \splitmaxdepth\maxdimen \floatingpenalty\z@
- \ifp@ge \dimen@\dp\z@
- \vbox to\vsize{\unvbox\z@\kern-\dimen@}% depth is zero
- \else \box\z@\fi
- \if@bot\else\medskip\fi
- }%
- \fi\endgroup\@next}
-
-% Footnotes are mainly supported by PLAIN format, with these
-% exceptions.
-
-\skip\footins=10pt
-\def\footnoterule{\kern-5pt
- \hrule width 5pc \kern 4.6pt } % the \hrule is .4pt high
-
-\newif\ifDelayFirstPar \DelayFirstParfalse
-\def\vfootnote#1{\ifFirstPar \DelayFirstPartrue \fi
- \insert\footins\bgroup
- \interlinepenalty\interfootnotelinepenalty
- \splittopskip\ht\strutbox % top baseline for broken footnotes
- \splitmaxdepth\dp\strutbox \floatingpenalty\@MM
- \leftskip\z@skip \rightskip\z@skip \spaceskip\z@skip \xspaceskip\z@skip
- \rm \parindent=\normalparindent % always indent footnotes; added for TUGboat
- \textindent{#1}\makestrut[10pt;\z@]\futurelet\next\fo@t}
-\def\@foot{\strut\egroup
- \ifDelayFirstPar \SetupFirstPar \global\DelayFirstParfalse \fi }
-\newif\ifFirstPar \FirstParfalse
-\def\SetupFirstPar{\global\parindent=\z@ \global\FirstPartrue }
-
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** output *****
-%
-
-
-% Reorganize \pagecontents from PLAIN to put footnotes at very
-% bottom of page, even if \raggedbottom. Also add bottom insertions.
-
-\def\pagecontents{%
- \ifvoid\topins\else\unvbox\topins\fi
- \dimen@=\dp\@cclv \unvbox\@cclv % open up \box255
- \ifr@ggedbottom \kern-\dimen@ \vfil \fi
- \ifvoid\footins\else % footnote info is present
- \vskip\skip\footins
- \footnoterule
- \unvbox\footins\fi
- \ifvoid\botins\else
- \vskip\skip\botins
- \unvbox\botins\fi }
-
-
-% Trim (registration) marks may or may not be placed around the pages;
-% Overlaying may or may not be done within TeX (as opposed
-% to the device driver).
-
-\newif\ifTrimmarks \Trimmarksfalse
-\newif\ifOverlaysinTeX \OverlaysinTeXtrue
-
-
-% All columns containing data are formatted by \midpage. Trim marks
-% are put on all columns, but running heads only on the last column
-% (i.e. column number = \numcols)
-
-\def\midpage#1{%
- \vbox{
- \basezero
- \hrule height\z@ depth\z@ width\p@
- \ifTrimmarks
- \vskip-1in % default offset for laser printers
- % this puts top trim at edge of paper
- \vbox to \trimlgt \bgroup
- \topregister
- \vskip \headmargin
- \else
- \vskip-\rheadlgt % this puts runhead above default offset
- \fi
- \vbox to \pagelgt{
- \ifnum\xcol=\numcols \runhead \else \vbox to \rheadlgt{}\fi
- \ifThisIsFirstPage \firsthead \fi
- \hbox to \pagewd{#1} % \vsize applied in \pagebody
- \ifThisIsFirstPage \firstfoot \fi
- \vfil % if no depth, avoid underfull box
- \ifnum\xcol=\numcols \runfoot \else \vbox to \rfootlgt{}\fi
- }
- \ifTrimmarks \vfill \botregister \egroup \fi
- }}
-
-% The production version includes trim marks, which are required
-% on photographic paper, but are unsuitable for laser printer output
-% (because they land at the edges of the page). For multiple
-% column output, allowance is made for column overlays either
-% within TeX or by the driver. The default is to have all
-% overlays done within TeX, but large pages or matters of efficiency
-% may dictate that driver-overlay is more appropriate.
-
-% When the overlaying is done within TeX, the .dvi contains just
-% one page for each page to be printed. However, in the case
-% that a driver is to do the overlaying we must anticipate that
-% it will not be smart enough to properly overlay different numbers
-% of .dvi pages for different printed pages (e.g. in the case that
-% one job has both single- and double-column layout). Thus, for
-% each printed page, TeX constructs a constant number (=\maxcols)
-% of .dvi pages. Columns 1 through and including \numcols will
-% be usual .dvi pages containing information for the typeset columns.
-% Upon reaching column number \numcols, TeX will `fill out' the
-% printed page with empty columns to \maxcols.
-
-
-% set up auxiliary `page numbers'
-% \pageno = \count0 as used in PLAIN
-
-% \xcol is the column number within a page; ranges from 1 to \maxcols
-\countdef\xcol=1 \xcol=1
-
-% \spoolno is the ordinal number of `.dvi' pages (i.e. the number
-% of \shipouts performed)
-\countdef\spoolno=2 \spoolno=0
-
-\def\newcol{\endgraf\vfill\eject}
-
-\def\newpage{%
- \vfill\eject
- \loop
- \ifnum\xcol>1
- {\leavevmode\endgraf\vfill\eject} % \xcol is advanced in the output routine
- \repeat
- }
-
-\newcount\numcols % `real' number of columns
-
-\newcount\@maxcolsofar % internal counter for box allocation
-\@maxcolsofar=0
-
-\newcount\maxcols % job-wide maximum number of columns
-\maxcols=2
-
-
- % save the column or ship it out
-\def\@saveorship{%
- \ifOverlaysinTeX
- \ifnum\xcol>\@maxcolsofar % if we need another column box allocated
- \global\advance\@maxcolsofar\@ne
- \newboxcs{column\number\xcol}%
- \fi
- \global\setboxcs{column\number\xcol}%
- \else
- \global\advance\spoolno\@ne
- \shipout
- \fi
- }
-
-% horizontal offset of column from left edge of page
-\newdimen\coloffset \coloffset\z@
-\def\incrcoloffset{%
- \global\advance\coloffset\colwd
- \global\advance\coloffset\intercolwd
- }
-
-\def\output@{%
- \@saveorship\midpage{\kern\coloffset\pagebody\hfil}
- \incrcoloffset
- \ifnum\xcol=\numcols % if at `real' last column, fill out page with
- \loop % empty columns
- \ifnum\xcol<\maxcols
- \global\advance\xcol\@ne
- \@saveorship\midpage{\vbox to \collgt{}\hfil}
- \repeat
- \fi
- \ifnum\xcol=\maxcols % put page together if TeX is overlaying
- \ifOverlaysinTeX
- \global\advance\spoolno\@ne
- \shipout\hbox{%
- \xcol=1
- \loop \rlap{\boxcs{column\number\xcol}}%
- \ifnum\xcol<\maxcols
- \global\advance\xcol\@ne
- \repeat
- \hbox to \pagewd{}%
- }%
- \fi
- \D@EndPage % possible shortening of next page
- \global\coloffset\ifodd\pageno\oddleftindent\else\evenleftindent\fi
- \global\xcol=1
- \else
- \global\advance\xcol\@ne
- \fi
- \ExecuteNextDC % possible `Delayed Command'
- }
-
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** page adjustment *****
-%
-
-
-% In the absence of automatic column-balancing, provide a mechanism
-% for manually shortening a specified page.
-
-\newif\ifSh@rtPage \Sh@rtPagefalse
-\newif\ifSh@rtPagePending \Sh@rtPagePendingfalse
-\newcount\Sh@rtPageNo
-\newdimen\Sh@rtPageLgt
-
-\def\@to{to} \def\@by{by}
-% #1 = to/by; #2 = \dimen; #3 = <dimen>; #4 = * of Shorten*Page
-\def\@toby#1#2#3#4{%
- \def\@tb{#1}%
- \ifx \@tb\@to \global #2=#3
- \else \ifx \@tb\@by \T@stDimen=#3 % accommodate negative #3
- #2=\normalcollgt \global\advance #2 by -\T@stDimen
- \else \errmessage{#1 is invalid syntax; \string\Shorten#4Page
- requires "to" or "by"}\fi
- \fi }
-
-\def\@plusno#1#2;{%
- \if +#1\T@stCount=\pageno \advance\T@stCount by #2
- \else \T@stCount=#1#2 \fi }
-
-\def\ShortenPage #1 #2 #3. {%
- \global\Sh@rtPagePendingtrue
- \@plusno#1;\global\Sh@rtPageNo=\T@stCount
- \@toby{#2}{\Sh@rtPageLgt}{#3}{}}
-\def\ShortenThisPage #1 #2. {%
- \global\Sh@rtPagetrue
- \@toby{#1}{\vsize}{#2}{This}}
-
-% Two cases: 0 = last page was nonstandard; reset \vsize
-% 1 = do not reset \vsize: okay or length already reset
-\def\D@EndPage{%
- \global\advancepageno
- \T@stCount=1
- \ifThisIsFirstPage \T@stCount=0 \global\ThisIsFirstPagefalse
- \resetfirsthead \resetfirstfoot
- \global\collgt=\normalcollgt \fi
- \ifSh@rtPage \T@stCount=0 \global\Sh@rtPagefalse \fi
- \ifSh@rtPagePending
- \ifnum\pageno = \Sh@rtPageNo \T@stCount=1
- \global\vsize=\Sh@rtPageLgt
- \global\Sh@rtPagePendingfalse
- \global\Sh@rtPagetrue \fi
- \fi
- \ifcase \T@stCount \resetpagelgt \fi }
-
-% Add more powerful means of adjusting pages by keeping a list of
-% commands to be executed prior to making up the next page. This
-% technique will be expanded in the next version of the output
-% routine.
-
-% "\DelayedCommand <page number> <column number> <command>\endCommand"
-% places the token list <command> at the end of a list of "things to do".
-% At the end of every column, the output routine checks this list to
-% see whether the head of the list should be "executed" prior to
-% building the next column. If so, the execution is performed.
-% Right now, items must be placed in the execution list in order,
-% and all items for a given column must be combined into a single
-% token list.
-
-% Natural applications are double column figures and column size
-% adjustments. E.g.
-% \DelayedCommand +5 1 \global\advance\vsize by 2\baselineskip\endCommand
-% will increase the \vsize of the first column of the page 5 pages from
-% "now" by 2 baselines. To pull the \vsize back to normal would require
-% another use of \DelayedCommand. Double column figures can be achieved
-% with insertions called by \DelayedCommand.
-
-% Right now the technique is messy, but it can be used by those who know
-% how it's implemented and know its limitations.
-
-\newtoks\@DelayedCommandList
-
-\def\DelayedCommand #1 #2 #3\endCommand{%
- \@plusno#1;%
- \edef\@temp{\the\@DelayedCommandList<\number\T@stCount>}%
- \global\@DelayedCommandList=\expandafter{\@temp<#2>#3\endCommand}%
- }
-
-\def\@FindNextDCPoint <#1><#2>#3\endList{%
- \def\DCpage{#1}\def\DCcolumn{#2}}
-
-\def\FindNextDCPoint{%
- \edef\@temp{\the\@DelayedCommandList}%
- \ifx\@temp\empty \def\DCpage{\@M}\def\DCcolumn{0}%
- \else
- \edef\@form{%
- \noexpand\@FindNextDCPoint\the\@DelayedCommandList\noexpand\endList}%
- \@form
- \fi}
-
-\def\@ExecuteNextDC <#1><#2>#3\endCommand#4\endList{%
- \global\@DelayedCommandList={#4}%
- #3}
-
-\def\ExecuteNextDC{%
- \FindNextDCPoint
- \ifnum \pageno=\DCpage \ifnum\xcol=\DCcolumn
- \edef\@form{%
- \noexpand\@ExecuteNextDC\the\@DelayedCommandList\noexpand\endList}%
- \@form
- \fi \fi}
-
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** general mechanism for tags *****
-%
-
-% Upon sensing an opening tag (call it `\foo' here), the following process
-% is set in motion:
-% 1. \begingroup (so definitions and settings are localized);
-% 2. the default situation for \foo is set up;
-% 3. if appropriate, an \everyfoo list is read (this allows one
-% to override the TUGboat.sty factory defaults);
-% 4. optional commands are read. This involves looking ahead for
-% a `[' and `normalizing' the optional environment so that
-% backslashes and braces are interpreted as their standard selves.
-% After the options are read, the `\',`{', and `}' are restored
-% to their status appropriate to \foo;
-% 5. the \@beginfoo macro is executed. This
-% may involve branching dependent upon flags set by options. It may
-% also be a place where spaces and carriage-returns are activated.
-% 6. the `argument' to \foo is read and stored or processed on
-% the fly (the method employed is generally fixed for each tag).
-% The argument may be delimited by *...* (called the `short-form'
-% here), or up to ...\endfoo (called the `long-form').
-% 7. a cleanup macro is executed which also ends the current group.
-% This may do all the work if an argument has been read and stored.
-
-% Checking ahead.
-% Often we check ahead to determine the next course of action.
-% \@checknexttoken is used to check for optional commands, to check for the
-% short-form argument-delimiter, and to ignore characters in certain
-% situations. The macro is just a check; applications must do whatever
-% is appropriate with the ensuing token.
-
-% \@checknexttoken checks the next token against argument #1. If the
-% two are the same, #2 is executed, otherwise #3. The comparison is
-% done with \ifx. Since we check ahead with \futurelet, the first
-% argument is stored with \let as well. To include the case
-% where #1 may be a space, we have to go through a small contortion
-% to \let\@basetoken= that space.
-
-% At times, the \@nexttoken will be \outer and this will prevent its
-% being incorporated in the definition of \@next below. For this reason,
-% we store `\ifx\@basetoken\@nexttoken' away in a definition at a time
-% when \@nexttoken is undefined and won't cause a problem.
-
-\def\if@baseis@next{\ifx\@basetoken\@nexttoken}
-
-\long\def\@checknexttoken #1#2#3{%
- \futurelet\@basetoken\iffalse#1\fi
- \long\def\@next{%
-% \ifx \@basetoken\@nexttoken
- \if@baseis@next
- \long\def\@@next{#2}%
- \else\long\def\@@next{#3}\fi
- \@@next}%
- \futurelet\@nexttoken\@next}
-
-% Eliminating characters from input.
-% The following macros check ahead to see whether the next token is a
-% token to be parsed from the input stream. \@ignoreall keeps
-% checking to eliminate all such characters, whereas \@ignoreone drops
-% at most one. Argument #2 is executed after characters are eliminated.
-
-% The token is removed by defining a control sequence whose
-% contextual form includes the token.
-
- % execute #2 after ignoring (possibly) one occurrence of #1
-\long\def\@ignoreone#1#2{%
- \def\@ignoreform#1{#2}%
- \@checknexttoken{#1}{\@ignoreform}{#2}%
- }
-
- % execute #2 after ignoring all occurrences of #1
-\long\def\@ignoreall#1#2{%
- \def\@ignoreform#1{\@ignoretest}%
- \def\@ignoretest{\@checknexttoken{#1}{\@ignoreform}{#2}}%
- \@ignoretest
- }
-
-% Particularly useful ignorances.
-
- % execute #1 after ignoring spaces
-\def\DeleteOptionalSpaces#1{%
- \@ignoreall{ }{#1}%
- }
- % execute #1 after ignoring spaces and \pars
-\def\DeleteOptionalSpacesandPars#1{%
- \@ignoreall{ }{\@ignoreall{\par}{#1}}%
- }
-
-
-% Checking and reading options.
-% To check for the next optional argument, the macros must look
-% ahead to the next character. If the next character is a `[',
-% the option-reading mechanism is invoked. This check may be suppressed if
-% the user has executed the \lastoption option. If \@lastoption is
-% "true" or if the [ is NOT next, the macro goes on to reading any
-% arguments and executing appropriately.
-
-\def\@checkoptions{%
- \if@lastoption
- \def\@next{\@executetoend}%
- \else
- \def\@next{\@checknexttoken {[}{\@readoptions}{\@executetoend}}%
- \fi
- \@next
- }
-
-% Default "options" on start-up. Unless over-ridden, the situation
-% will be:
-% 1. there may be another option to check (i.e. \@lastoptionfalse);
-% 2. it will be necessary to read the input file to determine the
-% method of marking arguments (i.e. \@longformfalse);
-% 3. arguments will be handled on the fly (i.e. \@savingargumentfalse);
-% 4. the long-form ending delimiter will be \end... (where ... is
-% the tag with which we're currently operating.
-
-\newif\if@lastoption \@lastoptionfalse
-\def\lastoption{\@lastoptiontrue}
-
-\newif\if@longform \@longformfalse
-\def\longform{\@longformtrue}
-
-\newif\if@savingargument \@savingargumentfalse
-
-\newtoks\enddelim
-
-\def\@defaultoptions{%
- \@lastoptionfalse
- \@longformfalse
- \@savingargumentfalse
- \enddelim=\expandafter{\csname end\CurrentTag\endcsname}%
- \let\@long\empty
- }
-
-% To read an optional command, \catcodes of \ { } are restored to their plain
-% values, and the [...] form is parsed out by \@@readoptions. The argument
-% to \@@readoptions is then executed, the 3 specials are restored and
-% the we check again for [ after deleting spaces. One might, alternatively,
-% parse out the initial `[' and activate the `]' to end options, but
-% this would make it awkward to place options within other macros (since
-% the `]' would have to be \catcoded properly for the definition).
-
-\def\@readoptions{%
- \savecat\\\makeescape\\%
- \savecat\{\makebgroup\{%
- \savecat\}\makeegroup\}%
- \@@readoptions}
-
-\def\@@readoptions[#1]{%
- #1%
- \restorecat\\\restorecat\{\restorecat\}%
- \DeleteOptionalSpaces{\@checkoptions}%
- }
-
-
-% Short Form Tagging.
-% We specify a character (*) to be used as a begin/end delimiter
-% for the argument to most tags. This code could be copied and
-% altered a bit to use another character.
-
-% The character will be encountered as either type `other' or as
-% an `active' character.
-
-\newtoks\@otherSFD
-\@otherSFD={*}
-\let\@SFD=* % used in \@checknexttoken
-
-\newtoks\@activeSFD
-{\makeactive\*
- \global\@activeSFD={*}%
-}
-
-\let\@plainast=\ast
-\def\ast{\ifmmode\@plainast\else *\fi}
-
-
-% Reading to the end-tag.
-% Macros may just do their business after options have been
-% read. In this case, there is no end-tag to worry about.
-% Otherwise, the macros either read to the "long-form" of end-tag
-% (e.g. \endtitle or \endauthor) or to the short-form (assumed to
-% be * here). Unless an option has specified
-% that the long-form is to be used, the macros look ahead to
-% see whether the short-form delimiter occurs next. If so,
-% it is assumed that the short-form is being used. In any case,
-% the appropriate \@begin... macro is executed before the argument is
-% handled.
-
-\newcount\@numarguments \@numarguments=1
-
-\def\@executetoend{%
- \ifnum\@numarguments>0
- \if@longform \def\@afterbegintag{\@longparse}%
- \else
- \def\@afterbegintag{\@checknexttoken
- {\@SFD}{\@shortparse}{\@longparse}}%
- \fi
- \else
- \def\@afterbegintag{}%
- \fi
- \csname @begin\CurrentTag\endcsname
- \@afterbegintag
- }
-
-% If the short-form is being used and an argument is to be saved,
-% we must define a "form" which TeX may follow to pull out the
-% tag's argument. The argument is stored away in the token register
-% \@argument, and the appropriate end-operation is performed.
-% Otherwise (the `argument' is processed on-the-fly), we parse out
-% the initial short-form delimiter and activate the ending one.
-
-\newtoks\@argument
-
-\def\@shortparse{%
- \if@savingargument
- \edef\@form{%
- \def\noexpand\@@shortparse\the\@otherSFD####1\the\@otherSFD}%
- \@long\@form{\@argument{##1}\csname end\CurrentTag\endcsname}%
- \else
- \expandafter\makeactive\csname\the\@otherSFD\endcsname
- \expandafter\def\the\@activeSFD
- {\csname end\CurrentTag\endcsname
- \expandafter\makeother\csname\the\@otherSFD\endcsname}%
- \def\@@shortparse{%
- \expandafter\@ignoreone\expandafter{\the\@otherSFD}%
- {}%
- }%
- \fi
- \@@shortparse}
-
-% On the other hand, if the long form is used, TeX must parse to
-% the long-form ending tag. Ordinarily we know the ending-tag
-% because it is just the \end... which corresponds to the tag
-% which initiated the process. We do allow for the possibility,
-% however, that we may want to switch this for some reason. E.g.
-% the different \verbatim styles allow for \verbatim...\endverbatim
-% and ||...||. The easiest way to implement the || style is
-% to have the first || call \verbatim and have \verbatim know
-% to look for || as the end-tag instead of \endverbatim. This may
-% be accomplished by allowing for the possibility of different
-% end-tags as below.
-
-\def\@longparse{%
- \if@savingargument
- \edef\@form{\def\noexpand\@@longparse####1\the\enddelim}%
- \@long\@form{\@argument{##1}\csname end\CurrentTag\endcsname}%
- \else \def\@@longparse{}\fi
- \@@longparse
- }
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Macros generally available to tags.
-
-\def\longargument{\def\@long{\long}}
-
-\def\@authorstyle{\@@@a}
-\def\@inlinestyle{\@@@i}
-\def\@displaystyle{\@@@d}
-\def\@altinlinestyle{}
-\def\@altdisplaystyle{}
-
-\newif\if@removeprewhite \@removeprewhitefalse
-\newif\if@removepostwhite \@removepostwhitefalse
-\def\removeprewhite{\@removeprewhitetrue}
-\def\removepostwhite{\@removepostwhitetrue}
-
-% Allow for line numbers on a listing as well as rules above and below.
-\newif\if@ruled \@ruledfalse
-\newif\if@numbered \@numberedfalse
-\newcount\linenumber
-\newcount\globallinenumber \globallinenumber = 0
-\newif\if@continuingnumbers \@continuingnumbersfalse
-\def\continuenumbers{\numbered\@continuingnumberstrue}
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** title, section title, authors, addresses *****
-%
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% title
-
-\def\title{%
- \begingroup
- \def\CurrentTag{title}%
- \@defaultoptions
- \@savingargumenttrue
- \@checkoptions}
-
-\def\endtitle{%
- \global\toks@=\expandafter{\the\@argument}%
- \endgroup
- \edef\thetitle{\ignorespaces\the\toks@\unskip}%
- }
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% section titles
-
-% Material mostly in tugboat.com now
-
-\setbox\T@stBox=\hbox{\sectitlefont O}
-\newdimen\stfontheight \stfontheight=\ht\T@stBox
-
-\def\sectitle{%
- \begingroup
- \def\CurrentTag{sectitle}%
- \@defaultoptions
- \@savingargumenttrue
- \global\SecTitletrue
- \@checkoptions}
-
-\def\endsectitle{%
- \@sectitle{\the\@argument}%
- \endgroup
- }
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% authors
-
-\newcount\authornumber
-
-\def\author{%
- \begingroup
- \def\CurrentTag{author}%
- \global\advance\authornumber by 1
- \@defaultoptions
- \@savingargumenttrue
- \@checkoptions}
-
-\def\endauthor{%
- \global\toks@=\expandafter{\the\@argument}%
- \endgroup
- \expandafter\edef\csname theauthor\number\authornumber\endcsname
- {\ignorespaces\the\toks@\unskip}%
- \expandafter\let\csname theaddress\number\authornumber\endcsname\relax
- \expandafter\let\csname thenetaddress\number\authornumber\endcsname\relax
- }
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% addresses
-
-\newif\if@address \@addressfalse
-\def\address{%
- \@addresstrue
- \begingroup
- \def\CurrentTag{address}%
- \@defaultoptions
- \@savingargumenttrue
- \let\@addressstyle=\@authorstyle
- \def\inline{\let\@addressstyle=\@inlinestyle}%
- \def\display{\let\@addressstyle=\@displaystyle}%
- \@checkoptions}
-
-\def\endaddress{%
- \ifx\@addressstyle\@inlinestyle
- \def\\{, }\the\@argument
- \endgroup
- \def\@next{}%
- \else\ifx\@addressstyle\@displaystyle
- \endgraf\raggedright
- \everypar={\hangindent 1.5\parindent}%
- \def\\{\endgraf}%
- \def\|{\unskip\hfil\break}%
- \vskip\abovedisplayskip
- \the\@argument\endgraf
- \vskip\belowdisplayskip
- \@asifbelowdisplay
- \endgroup
- \def\@next{\ignorespaces}%
- \else
- \global\toks@=\expandafter{\the\@argument}%
- \endgroup
- \expandafter\edef\csname theaddress\number\authornumber\endcsname
- {\ignorespaces\the\toks@\unskip}%
- \def\@next{}%
- \fi \fi
- \@next
- }
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% network addresses
-
-\def\netaddress{%
- \begingroup
- \def\CurrentTag{netaddress}%
- \@defaultoptions
- \@savingargumenttrue
- \let\@network\relax
- \def\network##1{\def\@network{##1: }}%
- \@SpecialsGetOther
- \makeescape\\%
- \netaddrat
- \netaddrpercent
- \@checkoptions}
-
-{\makeactive\@
- \gdef\netaddrat{\makeactive\@\def@{\char"40\discretionary{}{}{}}}
- \makeactive\%
- \gdef\netaddrpercent{\makeactive\%\def%{\char"25\discretionary{}{}{}}}
-}
-
-% We want the definition of \thenetaddress... to land at the right
-% nesting level, so we have to first pull it to the top, then
-% drop back to where we are.
-
-\def\endnetaddress{%
- \global\toks@=\expandafter{\the\@argument}%
- \ifx\@network\relax
- \gdef\@@network{}%
- \else
- \xdef\@@network{\@network}%
- \fi
- \endgroup
- \expandafter\edef\csname thenetaddress\number\authornumber\endcsname
- {{\noexpand\rm\@@network}%
- {\noexpand\netaddrat\noexpand\netaddrpercent\noexpand\net
- \ignorespaces\the\toks@\unskip}}%
- }
-
-\def\net{\tt}
-
-% Overrides to default author and signature formats
-
-\def\authorlist#1{\def\@authorlist{#1}}
-
-% Except for the first article in a section, beginnings of articles
-% are announced by a horizontal rule the width of the column.
-% In the case that this rule happens to fall at the top of a column,
-% we have to make sure that it appears at the VERY top of the column
-% and not just on the first baseline. To accomplish this, we insert
-% an empty rule first and then jump back over it to place the rule that
-% readers will see.
-
-\def\article{%
- \@allowspanningfigsfalse
- \ifSecTitle \global\SecTitlefalse
- \else \vskip\AboveTitleSkip
- \kern\topskip
- \nullhrule
- \kern-\topskip
- \kern-\strulethickness
- \hrule height\strulethickness depth\z@
- \nobreak
- \kern\medskipamount
- \fi
- \ifx\thetitle\relax
- \else
- \nobreak
- {\parskip\z@\interlinepenalty\@M
- \noindent\def\\{\unskip\break}\raggedstretch=.3\colwd\raggedright\bf
- \ignorespaces\thetitle\unskip\endgraf}%
- \fi
- \ifnum\authornumber>0
- \nobreak
- \vskip4pt
- {\parskip\z@\interlinepenalty\@M
- \def\\{\unskip\hfil\break}\hangindent\parindent\raggedright
- \@authorlist\endgraf}
- \fi
- \nobreak
- \vskip \BelowTitleSkip
- \vskip -\parskip
- \tenpoint
- \DeleteOptionalSpacesandPars{\noindent\ignorespaces}%
- }
-
-
-\def\endarticle{\vfil\end} % redefined in drivers
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** heads *****
-%
-
-% Heads are set by first saving the text of the head in \@argument
-% and then operating appropriately depending upon the \headlevel.
-% Selection among the different heads is made by an \ifcase.
-
-% To remove extra \par tokens between heads and ensuing text in the
-% input file, we call \DeleteOptionalSpacesandPars. To do this outside
-% the `head' group and just before TeX returns to the normal input stream
-% following a call to \head, we must define (globally) a control sequence
-% (\@next) and call it at the very end.
-
-\newcount\headlevel \headlevel=1
-
-\def\head{%
- \begingroup
- \def\CurrentTag{head}%
- \@allowindentfalse
- \@defaultoptions
- \@savingargumenttrue
- \def\\{\break}%
- \@checkoptions}
-
-\def\endhead{%
- \endgraf
- \ifcase\headlevel\or\@domainhead\or\@dosubhead\or\@dosubsubhead\fi
- \endgroup
- \@next
- }
-
-\def\@domainhead{%
- \if@removeprewhite\else\vskip\baselineskip\fi
- \noindent{\raggedright\bf\ignorespaces\the\@argument\unskip\endgraf}%
- \if@removepostwhite % usually we want the white space
- \else\kern0.5\baselineskip\fi
- \nobreak
- \gdef\@next{%
- \if@allowindent\def\@next{}% usually we don't want to indent here
- \else\def\@next{\DeleteOptionalSpacesandPars{\noindent\ignorespaces}}\fi
- \@next
- }%
- }
-
-\def\@dosubhead{%
- \if@removeprewhite\else\medskip\fi
- \noindent{\frenchspacing\bf\ignorespaces\the\@argument
- \unskip\if@headpunctuation.\fi}%
- \hskip 0.5em plus \fontdimen3\the\font
- \gdef\@next{\DeleteOptionalSpacesandPars{}}%
- }
-
-\def\@dosubsubhead{%
- {\frenchspacing\bf\ignorespaces\the\@argument\unskip}%
- \hskip 0.5em plus \fontdimen3\the\font
- \gdef\@next{\DeleteOptionalSpacesandPars{}}%
- }
-
-\def\subhead{\head[\headlevel=2]}
-\def\subsubhead{\head[\headlevel=3]}
-
-\newif\if@headpunctuation \@headpunctuationtrue
-\def\nopunctuation{\@headpunctuationfalse}
-
-\newif\if@allowindent
-\def\allowindent{\global\@allowindenttrue}
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** text and subtext *****
-%
-
-% The code here exists primarily to implement \subtext. The treatment
-% is similar to that for \head in that an \ifcase statement is called
-% to choose between the various text levels. Here, however, we handle
-% the `text' on the fly instead of saving it as an argument.
-
-\newcount\textlevel \textlevel=1
-
-\def\text{%
- \begingroup
- \def\CurrentTag{text}%
- \@defaultoptions
- \@savingargumentfalse
- \@checkoptions}
-
-\def\@begintext{%
- \endgraf
- \ifcase\textlevel\or\or\@setupsubtext\fi
- }
-
-\def\@setupsubtext{%
- \vskip\abovedisplayskip
- \advance\leftskip by 0.5\parindent
- \advance\rightskip by 0.5\parindent
- \ninepoint\rm
- }
-
-\def\endtext{%
- \gdef\@next{}%
- \ifcase\textlevel\or\or\@dosubtext\fi
- \endgroup
- \@next
- }
-
-\def\@dosubtext{%
- \endgraf
- \vskip\belowdisplayskip
- \gdef\@next{\@asifbelowdisplay}%
- }
-
-\def\subtext{\text[\textlevel=2]}
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** lists *****
-%
-
-\newcount\listlevel \listlevel=1
-\newif\if@itemized
-\newcount\itemnumber
-\newtoks\@itemtag
-\newcount\@cols % number of columns in list
-\newdimen\colsepwidth
-\newdimen\@listindent
-\newdimen\@listhangindent
-\newif\if@firstitem % when first item is handled differently
-\newtoks\everylist
-
-\def\list{%
- \begingroup
- \def\CurrentTag{list}%
- \let\@liststyle=\@displaystyle
- \def\inline{\let\@liststyle=\@inlinestyle}%
- \def\display{\let\@liststyle=\@displaystyle}%
- \def\displaystyle##1{\def\@altdisplaystyle{##1}}%
- \def\inlinestyle##1{\def\@altinlinestyle{##1}}%
- \def\item{%
- \begingroup
- \def\CurrentTag{item}%
- \@numarguments=0
- \@checkoptions}%
- \@itemtag={$\bullet$}%
- \def\tag##1{\@itemtag{##1}}%
- \def\tagform##1{\llap{##1\strutt\enspace}}%
- \@itemizedtrue
- \def\unitemized{\@itemizedfalse}%
- \itemnumber=0
- \def\numbered{\@itemtag={\number\itemnumber.}}%
- \def\romannumeraled{\@itemtag={\romannumeral\itemnumber.}}%
- \def\Romannumeraled{\@itemtag=
- {\uppercase\expandafter{\romannumeral\itemnumber.}}}%
- \def\lettered{\itemnumber="60 \@itemtag={\char\itemnumber.}}%
- \def\Lettered{\itemnumber="40 \@itemtag={\char\itemnumber.}}%
- \def\ruled{\@ruledtrue}%
- \@ruledfalse
- \@cols=1
- \def\cols{\@cols}%
- \@firstitemtrue
- \def\@itemseparator{, }%
- \def\itemseparator##1{\def\@itemseparator{##1}}%
- \@defaultoptions
- \@savingargumentfalse
- \the\everylist
- \@checkoptions}
-
-\def\@beginlist{%
- \ifx\@liststyle\@displaystyle
- \endgraf
- \ifnum\listlevel=1
- \if@ruled \if@removeprewhite\else\medskip\fi \hrule\kern5pt \nobreak
- \else \if@removeprewhite\else\vskip\abovedisplayskip \fi\fi
- \fi
- \advance\leftskip\parindent
- \@listindent=\parindent
- \@listhangindent=\@listindent
- \parindent\@listindent
- \lineskip\z@
- \if@itemized
- \else
- \parskip\z@skip
- \parindent\z@
- \raggedright
- \everypar={\advance\itemnumber\@ne
- \tagform{\the\@itemtag}}%
- \makeCtrlMendgraf
- \fi
- \def\colsep{%
- \global\count@\itemnumber
- \egroup\kern\colsepwidth
- \vtop\bgroup
- \@altdisplaystyle
- \itemnumber=\count@\ignoreendline}%
- \ifnum\@cols>1
- \dimen@\colsepwidth
- \multiply\dimen@\@cols
- \advance\dimen@-\colsepwidth
- \advance\hsize-\dimen@
- \divide\hsize by\@cols
- \hbox\bgroup\vtop\bgroup
- \fi
- \@altdisplaystyle
- \else
- \def\tagform##1{##1\strutt\ }%
- \if@itemized
- \else
- \makeCtrlMseparator
- \advance\itemnumber by \@ne
- \tagform{\the\@itemtag}%
- \fi
- \def\colsep{}%
- \@altinlinestyle
- \fi
- }
-
-
-\def\endlist{%
- \ifx\@liststyle\@displaystyle
- \if@itemized\endgraf\fi
- \ifnum\@cols>1
- \egroup % vtop
- \egroup % hbox
- \fi
- \ifnum\listlevel=1
- \if@ruled \kern5pt\hrule\nobreak\vskip2\medskipamount
- \else %\nobreak
- \if@removepostwhite\else\vskip\belowdisplayskip\fi
- \fi
- \gdef\@next{\@asifbelowdisplay}%
- \fi
- \else \gdef\@next{}%
- \fi
- \endgroup % list
- \@next
- }
-
-\def\sublist{\list[\listlevel=2]}
-
-
-\newtoks\everyitem \everyitem{}
-
-
-\def\@beginitem{%
- \ifx\@liststyle\@displaystyle
- \endgraf
- \if@firstitem\@firstitemfalse\else\vskip\smallskipamount\fi
- \advance\itemnumber by \@ne
- \noindent\leavevmode
- \the\everyitem
- \tagform{\the\@itemtag}%
- \else
- \def\item{\if@firstitem\@firstitemfalse\else\unskip\@itemseparator\fi
- \advance\itemnumber by \@ne\the\@itemtag\enspace}%
- \fi
- \global\count@\itemnumber
- \global\dimen@\hangindent
- \endgroup
- \itemnumber\count@
- \hangindent\dimen@
- }
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** verbatim *****
-%
-
-% Operation here is very similar to that for the other tags.
-% The opening tag sets up the situation and looks for optional
-% commands and the short-form delimiters. Since initial setup
-% involves changing the special characters to characters of
-% type other, some juggling must be done when optional commands
-% are read. In addition, to allow for implementation of the
-% |...| style using the more verbose \verbatim...\endverbatim,
-% we parameterize the ending-delimiter.
-
- % sets default to display style
-\def\verbatim{\@verbatim[\display]}
-
-\def\@verbatim{%
- \begingroup
- \setupverbatim
- \@checkoptions
- }
-
-\def\setupverbatim{%
- \def\CurrentTag{verbatim}%
- \@defaultoptions
- \def\inline{\let\@verbstyle\@inlinestyle}%
- \def\display{\let\@verbstyle\@displaystyle}%
- \def\displaystyle##1{\def\@altdisplaystyle{##1}}%
- \def\inlinestyle##1{\def\@altinlinestyle{##1}}%
- \def\numbered{\@numberedtrue}%
- \def\ruled{\@ruledtrue}%
- \def\smallcode{\ninepoint\tt\baselineskip=10pt}%
- \let\@verbinputvar\relax
- \let\@verbinputfile\relax
- \@SpecialsGetOther
- \enddelim=\expandafter{\endverbdelimiter}%
- \normalspaces\frenchspacing
- \obeylines
- \@savingargumenttrue
- \the\everyverbatim
- }
-
-\def\@SpecialsGetOther{%
- \catcode`\\=\other
- \catcode`\{=\other \catcode`\}=\other \catcode`\$=\other
- \catcode`\&=\other \catcode`\#=\other \catcode`\%=\other
- \catcode`\~=\other \catcode`\_=\other \catcode`\^=\other
- \the\@AdditionsToSpecialsGetOther}
-
-% The \@Additions... register above should be used whenever another
-% character is declared to be special for some purpose. E.g.,
-% we will use the | for the short-form |...| verbatim notation.
-% Since the | is generally active for this purpose, it's category
-% won't get changed to \other for use in \verbatim...\endverbatim
-% unless we add it via this mechanism.
-
-\newtoks\@AdditionsToSpecialsGetOther
-
-\def\AddToSpecialsGetOther#1{%
- \@AdditionsToSpecialsGetOther=
- \expandafter{\the\@AdditionsToSpecialsGetOther#1}}
-
-% Altering the verbatim setup.
-% Users can alter the setup to their purpose by
-% putting tokens in the register \everyverbatim.
-
-\newtoks\everyverbatim
-
-% Ordinarily the end-tag would be the single token `\endverbatim'.
-% The following allows us to `see' the tag when `\' is of type `other'.
-{\catcode`\|=0 \catcode`\\=\other
-|gdef|endverbdelimiter{\endverbatim}}
-
-% Input from an external variable or file
-
-\def\inputfromvar#1{\def\@verbinputvar{#1}}%
-\def\inputfromfile#1{\def\@verbinputfile{#1}}%
-\let\@verbinputvar\relax
-\let\@verbinputfile\relax
-
-% Outputs
-
-\newif\if@outputtotype \@outputtotypetrue
-\def\notype{\@outputtotypefalse}
-\def\outputtovar#1{\def\@verboutputvar{#1}}
-\def\outputtofile#1{\def\@verboutputfile{#1}}
-\let\@verboutputvar\relax
-\let\@verboutputfile\relax
-\newwrite\verboutfile
-
-\def\@beginverbatim{\obeyspaces}%\obeylines}
-
-\def\endverbatim{%
- \ifx\@verboutputvar\relax\else % output to `variable'
- \expandafter\xdef\csname\@verboutputvar\endcsname{\the\@argument}%
- \fi
- \ifx\@verboutputfile\relax\else % output to file
- \immediate\openout\verboutfile=\@verboutputfile
- \makeCtrlMnewlinechar
- \iffalse{\fi\expandafter\@setupverbwrite\the\@argument}% use \@setupwrite to
- \immediate\closeout\verboutfile % get rid of initial ^^M
- \fi
- \gdef\@next{}% % in case following clause is false
- \if@outputtotype % output typeset on page
- \tt
- \ifx\@verbstyle\@inlinestyle
- \@beforeverbinline
- \@altinlinestyle
- \else
- \@beforeverbdisplay
- \@altdisplaystyle
- \fi
- \ifx\@verbinputvar\relax\else % input from `variable'
- \csname\@verbinputvar\endcsname
- \fi
- \ifx\@verbinputfile\relax\else % input from file
- \fileinput{\@verbinputfile}%
- \@endverbatim
- \fi
- \expandafter\@ignoreCtrlMverbendline\the\@argument\@endverbatim
- \ifx\@verbstyle\@inlinestyle
- \@afterverbinline
- \else
- \@afterverbdisplay\gdef\@next{\@asifbelowdisplay}%
- \fi
- \fi
- \endgroup
- \@next
- }
-
-
-\def\@beforeverbinline{%
- \makeCtrlMverbspace
- \let\@endverbatim=\empty
- }
-
-\def\@beforeverbdisplay{%
- \def\@endverbatim{\verbendline}%
- \if@ruled \medskip \hrule\kern5pt \nobreak
- \else \vskip\abovedisplayskip
- \fi
- \makespaceverbspace
- \makeCtrlMverbendline
- \parskip=\z@skip
- \if@numbered \parindent=\z@
- \if@continuingnumbers
- \else \global\globallinenumber = \z@ \fi
- \linenumber=\z@ \fi
- \everypar={\global\advance\globallinenumber by\@ne
- \advance\linenumber by\@ne
- \ifnum\linenumber<3 \vadjust{\nobreak}\fi
- \if@numbered \leavevmode
- \hbox to\normalparindent{\hss\sevenrm\the\globallinenumber.\ }%
- \fi}%
- \frenchspacing\rightskip=-\ttrightskip \hyphenpenalty\@M
- }
-
-% \ttrightskip is the permissible overhang beyond right margin;
-% in MANMAC, this is 5pc, which is fine for the TeXbook, but too much here.
-
-\newdimen\ttrightskip \ttrightskip=1pc
-
-\def\@afterverbinline{}
-
-\def\@afterverbdisplay{%
- \if@ruled \kern5pt\hrule\fi
- \ifnum\linenumber<3 \penalty\z@ \fi
- \if@removepostwhite\else
- \if@ruled \vskip2\medskipamount \else \vskip\belowdisplayskip\fi
- \fi
- }
-
-\def\@asifbelowdisplay{%
- \toks@=\expandafter{\the\everypar}%
- \noindent
- \everypar=\expandafter{\the\toks@}%
- \ignorespaces}
-
-
-% Definitions of spaces and ^^M
-% \@ignoreCtrlMverbendline is used to lop off an initial ^^M in
-% verbatim text and to remove an \@endverbatim (the latter in case the
-% verbatim text is actually empty)
-
-\def\@ignoreendverbatim{\@ignoreone{\@endverbatim}{}}
-\def\verbendline{\leavevmode\null\endgraf}
-\def\makeCtrlMactive{\catcode`\^^M=\active}
-{\makeCtrlMactive
-\gdef\makeCtrlMverbendline{\makeCtrlMactive%
- \def^^M{\@ignoreone{\@endverbatim}{\verbendline}}}%
-\makeCtrlMverbendline%
-\gdef\@ignoreCtrlMverbendline{\@ignoreone{
-}{\@ignoreendverbatim}}%
-\gdef\@setupverbwrite{\@ignoreone{
-}{\immediate\write\verboutfile\bgroup}}%
-\gdef\makeCtrlMverbspace{\makeCtrlMactive\def^^M{\verbatimspace}}%
-\gdef\makeCtrlMnewlinechar{\newlinechar=`\^^M}%
-\gdef\makeCtrlMendgraf{\makeCtrlMactive\def^^M{\strutt\endgraf}}%
-\gdef\makeCtrlMseparator{\makeCtrlMactive%
- \def^^M{%
- \@checknexttoken {\endlist}{}{%
- \@itemseparator\advance\itemnumber by \@ne \tagform{\the\@itemtag}%
- \ignorespaces}}}%
-}
-
-% to read a variable or file name properly, we must interpret
-% spaces and ^^M as nothing or as spaces
-
-{\makeCtrlMactive\obeyspaces%
-\gdef\makeCtrlMempty{\def^^M{}}%
-\gdef\makespaceempty{\def {}}%
-}
-{\makeCtrlMactive\obeyspaces%
-\gdef\makeCtrlMspace{\def^^M{\space}}%
-\gdef\makespacespace{\def {\space}}%
-}
-
-{\makeCtrlMactive%
-\gdef\@ignoreCtrlM#1{\@ignoreone{^^M}{#1}}%
-\gdef\ignoreendline{\@ignoreCtrlM{}}%
-}
-
-% From David Eppstein's ``Trees'' paper (6#1), preserve initial spaces.
-\def\verbatimspace{\ifvmode\indent\fi\space}
-{\obeyspaces\gdef\makespaceverbspace{\def {\verbatimspace}}}
-
-
-
-% Options and variants.
-
-\def\verbinline{\verbatim[\inline]}
-\def\verbdisplay{\verbatim[\display]}
-\def\verbfile#1{\verbatim[\inputfromfile{#1}]}
-
-
-% Verbatim with the other characters (e.g. |...|).
-% Procedures are parameterized so that it is easy to allow
-% different characters to perform this function. Any character
-% that's chosen could cause problems if it occurs unexpectedly
-% in the middle of what is supposed to be verbatim text. We call
-% the current special character for this purpose the "verbchar"
-% and store it in active form in the token register \@verbchar.
-
-\newtoks\@verbchar
-
-% On hitting a "verbchar" in the middle of text, TeX must look ahead
-% to see whether the verbchar occurs again. Since this
-% look-ahead fixes the category of the token examined, we must change
-% the categories of all characters appropriately before looking
-% (and we read \everyverbatim in case it contains a category change).
-% We must also "gobble" the second verbchar if we hit one.
-% Depending upon whether 1 or 2 verbchars are found, we call
-% \verbatim with the appropriate style command. We also use an
-% optional command to change the delimiter which ends this \verbatim
-% block. We naturally localize the changes to category codes made on
-% startup. It's easier to end this group here at the beginning and to
-% restart everything in a standard \verbatim than it is to add an extra
-% \endgroup after the verbatim text.
-
-\def\@firstverbchar{%
- \begingroup
- \setupverbatim
-% \@SpecialsGetOther
- \makeverbcharactive
- \expandafter\@checknexttoken\expandafter{\the\@verbchar}%
- {\expandafter\@ignoreone\expandafter{\the\@verbchar}%
- {\endgroup\verbatim[\longform\maketwoendverb]}}%
- {\endgroup\verbatim[\inline\longform\makeoneendverb]}%
- }
-
-\def\setupverbchar{%
- \def\makeoneendverb{\catcode\expandafter`\csname\expandafter
- \string\the\@verbchar\endcsname=
- \active\edef\endverbdelimiter{\the\@verbchar}%
- \enddelim=\expandafter{\endverbdelimiter}}%
- \def\maketwoendverb{\catcode\expandafter`\csname\expandafter
- \string\the\@verbchar\endcsname=
- \active\edef\endverbdelimiter{\the\@verbchar\the\@verbchar}%
- \enddelim=\expandafter{\endverbdelimiter}}%
- \expandafter\let\the\@verbchar\@firstverbchar
- \makeverbcharactive
- \AddToSpecialsGetOther{%
- \catcode\expandafter`\csname
- \expandafter\string\the\@verbchar\endcsname=\other}%
- }
-
-\def\makeverbcharactive{%
- \catcode\expandafter`\csname
- \expandafter\string\the\@verbchar\endcsname=\active}
-
-{\makeother\| \gdef\VertChar{|}}
-{\makeactive\|
-\gdef\makevertverbchar{%
- \@verbchar={|}%
- \setupverbchar
- }
-}
-
-{\makeother\! \gdef\WowChar{!}}
-{\makeactive\!
-\gdef\makewowverbchar{%
- \@verbchar={!}%
- \setupverbchar
- }
-}
-
-
-\def\MTH{$}
-\def\sb{_}
-\def\sp{^}
-\def\SP{{\tt\char"20 }} % "visible" space
-\chardef\bs=`\\
-\def\vrt{{\tt\char`\|}}
-\def\brokenvert{\hbox to 5.24998pt{\hfill
- \lower 1.5pt\vbox to 8.5pt{\hrule width .9pt height 3.25pt
- \vfill\hrule width .9pt height 3.25pt}\hfill}}
-
-
-
-\def\@lt{$<$}
-\def\@gt{$>$}
-{\makeactive\<
-\gdef\enablemetacode{%
- \AddToSpecialsGetOther{\catcode`\<=\other}%
- \makeactive\<%
- \def<##1>{$\langle${\it\makeCtrlMspace\makespacespace##1\/}$\rangle$}%
- }
-}
-
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** figures *****
-%
-
-
-\newif\if@@mid \@@midfalse
-\newif\if@@bot \@@botfalse
-\def\@caption{}
-\newif\if@fixed \@fixedfalse
-
- % items for top and bottom ``banners'' on first page
-\def\resetfirsthead{\global\toplgt=\z@ \gdef\firsthead{}}
-\resetfirsthead
-\newbox\firsth@@d \newbox\firsth@ad
-
-\def\resetfirstfoot{\global\botlgt=\z@ \gdef\firstfoot{}}
-\resetfirstfoot
-\newbox\firstf@@t \newbox\firstf@ot
-
-\newif\if@allowspanningfigs
-
-\newcount\@figurepage
-\newcount\@figurescol
-\newcount\@figureecol
-
-
-\def\figure{%
- \begingroup
- \def\CurrentTag{figure}%
- \@defaultoptions
- \@savingargumentfalse
- \def\top{}%
- \def\bot{\@@bottrue}%
- \def\mid{\@@midtrue}%
- \def\caption##1{\def\@caption{\ulap{\bigskip##1\smallskip}}}%
- \def\fixed{\@fixedtrue}%
- \def\scol{\@figurescol}%
- \def\ecol{\@figureecol}%
- \@figurepage=\pageno
- \@figurescol=1
- \@figureecol=\numcols
- \def\page{%
- \@ignoreall{\space}%
- {\@ignoreone{=}%
- {\@ignoreall{\space}%
- {\@checknexttoken{+}{\@ignoreone{+}{\advance\@figurepage by}}%
- {\@figurepage=}%
- }%
- }%
- }%
- }%
- \@checkoptions}
-
-\def\@beginfigure{%
- \if@fixed
- \global\ThisIsFirstPagetrue
- \setbox\T@stBox=\vbox\bgroup \hsize\pagewd
- \else
- \if@@mid\midinsert\else\if@@bot\botinsert\else\topinsert\fi\fi
- \fi
- }
-
-\def\endfigure{%
- \@caption
- \if@fixed
- \egroup
- \if@allowspanningfigs
- \ifnum\@figurepage>\pageno
- \immediate\write\sixt@@n{^^J
- Setting multiple column figures currently not allowed on pages^^J
- other than the first of each article. Check your source file.^^J}%
- \else
- \if@@bot
- \ifdim \botlgt=\z@ \global\botlgt=\ht\T@stBox \resetpagelgt \fi
- \global\setbox\firstf@ot=\vbox to \botlgt{\box\T@stBox \vfil}%
- \global\setbox\firstf@@t=\vbox to \botlgt{\vfil}%
- \gdef\firstfoot{\ifnum \xcol=2 \copy\firstf@ot
- \else \copy\firstf@@t \fi }%
- \else
- \ifdim \toplgt=\z@ \global\toplgt=\ht\T@stBox \resetpagelgt \fi
-% assume that \firsth@ad ends with glue, hence no \dp
- \global\setbox\firsth@ad=\vbox to \toplgt{\box\T@stBox \vfil}%
- \global\setbox\firsth@@d=\vbox to \toplgt{\vfil}%
- \gdef\firsthead{\ifnum \xcol=2 \box\firsth@ad
- \else \copy\firsth@@d \fi }%
- \fi
- \fi
- \else
- \immediate\write\sixt@@n{^^J
- Setting multiple column figures currently not allowed after^^J
- article has begun.^^J}%
- \fi
- \else \endinsert
- \fi
- \endgroup
- }
-
-\def\twocolfigure{%
- \figure[\fixed]}
-
-
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** utilities *****
-%
-
-
-
-\def\linebreak{\unskip\break} % conflicts with LaTeX definition
-
-% Define a structure that will permit a list (using \obeylines)
-% to be made into 2 columns, split by \vsplit, indented the
-% normal \parindent
-
-\def\NormalizeBlockHeight{%
- \TestCount=1 % \@ne
- \TestDimen=\dimen0 \advance\TestDimen by-\topskip
- \CutOneLine }
-\def\CutOneLine{%
- \advance\TestCount by 1 \advance\TestDimen by-\baselineskip
- \ifdim\TestDimen < \baselineskip % \@ne
- \def\result{%
- \TestDimen=\baselineskip
- \multiply\TestDimen by \TestCount
- \advance\TestDimen by \topskip
- \global\dimen0=\TestDimen }%
- \else \def\result{\CutOneLine }\fi
- \result }
-
-\def\twosplit{%
- {\topskip=\baselineskip \splittopskip=\topskip
- \setbox0=\copy\TestBox
- \dimen0=\ht\TestBox
- \NormalizeBlockHeight
- \divide\dimen0 by 2
- \setbox\LeftHalf=\vsplit\TestBox to \dimen0
- \ifdim\ht\TestBox > \ht\LeftHalf
- \advance\dimen0 by \baselineskip
- \setbox\TestBox=\copy0
- \setbox\LeftHalf=\vsplit\TestBox to \dimen0
- \fi
- \line{\kern\parindent\valign{##\vfil\cr
- \unvbox\LeftHalf\cr\noalign{\hfil}\unvbox\TestBox\cr}}%
- }%
- \global\setbox0=\null}
-
-\newbox\LeftHalf
-\newdimen\HalfWd
-\HalfWd=\twocolcolwd
-\advance\HalfWd by-\normalparindent
-\divide\HalfWd by 2
-
-{\obeylines
-\gdef\twouplist #1{%
- \topskip=\baselineskip \splittopskip=\topskip
- \begingroup \parindent=\z@ \obeylines
-% next line ends with intentional <cr>
- \def\endtwouplist{
- \egroup % % end of \vbox
- \endgroup % % end of \obeylines group
- \twosplit }%
- \global\setbox\TestBox=\vbox\bgroup\hsize=\HalfWd %
- \indent\vrule height\topskip width \z@ #1}%
-}
-
-% Tags for special formatting of editor's notes (See also TUGBOAT.COM)
-
-\def\Editor{\noindent To the Editor:\par}
-\def\EdNote #1{%
- \if #1[%
- \ifvmode \smallskip\noindent \else \unskip\hskip1em \fi
- [\thinspace\xEdNote\ignorespaces
- \else \ifFirstPar \else \medskip\noindent \fi
- \xEdNote #1\fi }
-
-
-
-% Draw a box around a whole page, e.g. announcements page;
-% format must be \onenarrow or \onemedium, and start on a new page.
-
-\def\bigbox{\hrule \hbox\bgroup \vrule\kern 1pc
- \vbox\bgroup \vskip 1pc }
-\def\endbox{\endgraf \vskip 1pc \egroup \kern 1pc\vrule \egroup \hrule }
-
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% ***** initialization *****
-%
-
-
-\def\initializearticle{%
- \let\thetitle=\relax
- \authornumber=0
- \def\@signature{\@defaultsignature}%
- \def\@authorlist{\@defaultauthorlist}%
- \@allowspanningfigstrue
- }
-
-
-\makeother\@
-
-% @ is prohibited in AMS-TeX, but should not be in TUGboat
-
-
-\twocol
-\maxcols=2
-\OverlaysinTeXtrue
-\Trimmarksfalse
-\PrelimDrafttrue
-\initializearticle
-\pageno=1001 % number of title page
-
-\StretchyTenPointSpacing
-\StretchyNinePointSpacing
-\StretchyEightPointSpacing
-
-\makevertverbchar
-
-\endinput
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% History of changes
-
-Version Date Changes
-------- --------- ---------------------------------------------------
-1.16 2 Jan 06 updated TUG address and phone in header
-
-1.15 15 Aug 05 added switch \if@address to avoid skip in signature
-
-1.14c 14 Oct 96 lowered footnoterule by 3pt
-
-1.14b 14 Apr 94 added \interlinepenalty=10000 to avoid page breaks
- in very long titles and author lists
-
-1.14a 8 Nov 93 removed extraneous " from header
-
-1.14 19 Feb 93 installed new TUG address and phone number in header
-
-1.13 13 Oct 92 Added \SMC in \ninepoint
-
-1.12 4 Jun 92 Added stretchability to \rightskip in ragged title
-
-1.11 8 Mar 92 Changed name of tugboat.com to tugboat.cmn to avoid
- conflict with special meaning of .com with some
- operating systems
- Within verbatim, added \smallcode (from tugproc)
- Added standard headers, prepared for archive installation
-
-1.10 21 Oct 91 Corrected font for \SMC in \tenpoint to \ninerm
- (\ninesmc was used, but set to cmcsc10)
- Changed \EdNote to detect \ifvmode when tag followed
- by [ and to \smallskip and \noindent in that case
- rather than performing \hskip1em
-
-1.09 11 Mar 91 Made \ an escape character in network addresses.
- Added mechanism for saving \long arguments of
- TUGboat macros (see uses of \@long).
-
-1.08 18 Oct 90 Incorporated redefinition of \sl within \bf
- Changed an \input within \verbatim to \fileinput.
- Added means of turning off punctuation after subheads.
- Removed \nobreak after lists
-1.07 8 Jun 90 Corrected definition of \newpage
-
-1.06 13 May 90 Added \@setupverbwrite to eliminate initial ^^M
- as \verbatim writes to a file.
-
- Made strut on first line of footnote slightly taller
- so as to separate footnotes.
-
- Reset \@verbinputfile and \@verbinputvar to \relax
- to allow nesting
-
- Removed some \global assignments to \@argument and
- 2 verbatim flags to allow nesting.
-
-1.05 23 Apr 90 Added "\setupverbatim" to \@firstverbchar so
- that category switches are accomodated properly.
-
-1.04 7 Mar 90 Added \colsepwidth to allow for separation between
- columns of lists
-
-1.03 1 Mar 90 Modified \@dosubhead and \@dosubsubhead to allow
- stretchable space afterward
-
-1.02 25 Feb 90 Added \resetmaxcols to allow for automatic adjustment
- of \maxcols; if overlays are done by the driver,
- \maxcols needs to be set to an overall job maximum
- at the start of the job.
-
- Added setting of \SecTitletrue to definition
- of \sectitle.
-
- Added indicator of style file loaded (\tubstyle).
-
-1.01 17 Jan 90 Modified \@executetoend so that \@next would not
- be clobbered by \csname @begin\CurrentTag\endcsname;
- \@next changed to \@afterbegintag
-
- Added `\the' before \@otherSFD within definition of
- \@shortparse
-
- added \@altdisplaystyle to definition of \colsep
diff --git a/Master/texmf-dist/tex/plain/tugboat/tugproc.sty b/Master/texmf-dist/tex/plain/tugboat/tugproc.sty
deleted file mode 100644
index 56361b54664..00000000000
--- a/Master/texmf-dist/tex/plain/tugboat/tugproc.sty
+++ /dev/null
@@ -1,366 +0,0 @@
-%% @texfile{
-%% filename="tugproc.sty",
-%% version="1.11",
-%% date="26-Jan-1994",
-%% filetype="TeX macros for TUG Proceedings",
-%% copyright="Copyright (C) TeX Users Group.
-%% Copying of this file is authorized only if either:
-%% (1) you make absolutely no changes to your copy, OR
-%% (2) if you do make changes, you first rename it to some
-%% other name.",
-%% author="TeX Users Group",
-%% address="TeX Users Group",
-%% P. O. Box 869,
-%% Santa Barbara, CA 93102-0869,
-%% USA",
-%% telephone="805-963-8358",
-%% email="Internet: tug@tug.org or TUGboat@Math.AMS.org",
-%% codetable="ISO/ASCII",
-%% checksumtype="line count",
-%% checksum="366",
-%% keywords="tex users group, tugboat, proceedings, plain tex",
-%% abstract="This file contains the plain-based macros
-%% for Proceedings issues of TUGboat, the
-%% Communications of the TeX Users Group."
-%% }
-%% *********************************************************
-%%
-%% Use of this file also requires the following files:
-%% TUGBOAT.STY (version 1.09+)
-%% TUGBOAT.CMN (version 1.08+) (loaded by TUGBOAT.STY)
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\def\fileversion{v1.11}
-\def\filedate{26 Jan 94}
-
-\message{File `TUGPROC.STY' \fileversion \space\space <\filedate>}
-
-% initialize year/issue-specific elements for standalone use
-\def\mtgyear{1994}
-\def\volyr{1994}
-\def\volno{15}
-\def\issno{3}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\input tugboat.sty
-
-\savecat\@ \makeletter\@
-\ifx\tugprocloaded@\undefined \let\tugprocloaded@\end
-\else \restorecat\@ \xdef\startingpage{\number\pageno}\endinput \fi
-
-\newdimen\tubpagelgt
-\tubpagelgt=\pagelgt \advance\tubpagelgt 1pc % for running feet
-
-% fonts
-
-\font\twelverm=cmr10 scaled 1200
-\font\twelvebf=cmbx10 scaled 1200
-\font\fourteenrm=cmr10 scaled 1440
-\font\fourteenit=cmti10 scaled 1440
-\font\fourteensl=cmsl10 scaled 1440
-
-\def\twelvepoint{%
- \normalbaselineskip=14pt
- \def\rm{\fam\z@\twelverm}%
- \textfont\z@=\twelverm
- \def\bf{\fam\bffam\twelvebf}%
- \textfont\bffam=\twelvebf
- \normalbaselines \rm}
-
-\def\fourteenpoint{%
- \normalbaselineskip=18pt
- \def\rm{\fam\z@\fourteenrm}%
- \textfont\z@=\fourteenrm
- \def\it{\fam\itfam\fourteenit}%
- \textfont\itfam=\fourteenit
- \def\sl{\fam\slfam\fourteensl}%
- \textfont\slfam=\fourteensl
- \normalbaselines \rm}
-
-\def\AUTHORfont{\twelvepoint\rm}
-\def\HEADfont{\twelvepoint\bf}
-\def\TITLEfont{\fourteenpoint\rm}
-\def\addressfont{\ninepoint\rm}
-\def\netaddrfont{\ninepoint\tt}
-
-\def\br{\unskip\hfil\break} % version for titles
-\def\degrade{\def\br{\unskip\space\ignorespaces}%
- \let\\\br} % in running heads.
-
-% running heads & feet
-%\newcount\startingpage % Number of first page of article
-\newif\ifpreprint \preprinttrue
-\def\preprint{\preprinttrue
- \ifExtrAbs\breaklines\fi} % (*)
-\newif\ifproof \prooffalse \let\filename\relax
-\def\Proof{\prooftrue\immediate\write16{File name?}
- \immediate\read16 to\filename}
-\def\stamp{\ifproof{\tt \filename}\quad\Now\else\space\fi}
-\let\midrtitle=\null
-\def\rtitlex{%
- \ifodd\pageno\degrade\rhtitle\else\rhauthor\fi}
-\def\rtitle{%
- \hbox to \pagewd{%
- \tenpoint
- \makestrut[10pt;\z@]%
- \ifnum\the\pageno=\startingpage\hfill\stamp\else
- \ifodd\pageno
- \stamp\hfill\rtitlex
- \else
- \rtitlex\hfill\stamp
- \fi\fi
- }%
- }
-
-\ifx\startingpage\undefined \def\startingpage{1001}\fi
-\pageno=\startingpage
-\def\rfoot{%
- \hbox to \pagewd{%
- \tenpoint
- \makestrut[\z@;0.5pc]%
- \ifpreprint
- \ifodd\pageno
- \pfoottext\hfil\Now\hfil$^.$\number\pageno
- \else
- \number\pageno$^.$\hfil\Now\hfil\pfoottext
- \fi
- \else
- \ifodd\pageno
- \rfoottext\hfil\number\pageno
- \else
- \number\pageno\hfil\rfoottext
- \fi
- \fi
- }%
- }
-
-\v@lx % normalize publication info for footer
-\def\pfoottext{{\smc Preprint}: \mtgyear{} \TUG{} Annual Meeting}
-\def\rfoottext{\tenrm\TUB, \volx\Dash
- {Proceedings of the \volyr{} Annual Meeting}}
-
-% midpage redone to align running feet.
-\def\midpage#1{%
- \vbox{
- \basezero
- \hrule height\z@ depth\z@ width\p@
- \ifTrimmarks
- \vskip-1in % default offset for laser printers
- % this puts top trim at edge of paper
- \vbox to \trimlgt \bgroup
- \topregister
- \vskip \headmargin
- \else
- \vskip-\rheadlgt % this puts runhead above default offset
- \fi
- \dlap{\vbox to\tubpagelgt{\vfil
- \ifnum\xcol=\numcols \runfoot \else \vbox to \rfootlgt{}\fi}}
- \vbox to \pagelgt{
- \ifnum\xcol=\numcols \runhead \else \vbox to \rheadlgt{}\fi
- \ifThisIsFirstPage \firsthead \fi
- \hbox to \pagewd{#1} % \vsize applied in \pagebody
- \ifThisIsFirstPage \firstfoot \fi
- \vfil % if no depth, avoid underfull box
-% \ifnum\xcol=\numcols \runfoot \else \vbox to \rfootlgt{}\fi
- }
- \ifTrimmarks \vfill \botregister \egroup \fi
- }}
-
-% ***************************************************
-% Bibliography
-\def\Hang{1em}
-\def\entry #1{\noindent\frenchspacing\hangindent\Hang #1}
-
-% Appendix
-\def\appendix #1\endappendix{\newpage\onecol\centerline{\HEADfont #1}}
-
-% Box for deadlines:
-\newbox\textbox % \twocolcolwd=18.75pc [cf. tugboat.sty]
-\long\def\boxit #1{\vbox{\hrule\hbox{\vrule\kern3pt
- \vbox{\kern3pt\vskip 4pt#1\vskip 4pt\kern3pt}\kern3pt\vrule}\hrule}}
-\long\def\boxedlist #1{$$\boxit{\setbox\textbox=\vbox{\hsize 18pc
- \strut{#1}\strut}\box\textbox}$$} % TeXbook, 94 & 223 (exer 21.3)
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% top matter
-\def\endtitle{%
- \global\toks@=\expandafter{\the\@argument}%
- \endgroup
- \edef\thetitle{\ignorespaces\the\toks@\unskip}%
- \let\rhtitle\thetitle
- }
- % If your title is too long for the running head,
- % use this to construct a shorter version:
-\def\shorttitle{%
- \begingroup
- \def\CurrentTag{shorttitle}%
- \@defaultoptions
- \@savingargumenttrue
- \@checkoptions}
-
-\def\endshorttitle{%
- \global\toks@=\expandafter{\the\@argument}%
- \endgroup
- \edef\rhtitle{\ignorespaces\the\toks@\unskip}%
- }
-
-\def\rhauthor{\@defaultauthorlist}
- % Use the following for running heads if more than
- % one author or author's name is too long to fit:
-\def\shortauthor{%
- \begingroup
- \def\CurrentTag{shortauthor}%
- \@defaultoptions
- \@savingargumenttrue
- \@checkoptions}
-
-\def\endshortauthor{%
- \global\toks@=\expandafter{\the\@argument}%
- \endgroup
- \edef\rhauthor{\ignorespaces\the\toks@\unskip}%
- }
-
-%\long\def\Abstract #1\endAbstract{\long\def\@abstract{#1}}
-\def\abstract{\@abstract[\longargument]}
-\def\@abstract{%
- \begingroup
- \def\CurrentTag{abstract}%
- \@defaultoptions
- \@savingargumenttrue
- \@checkoptions}
-
-\def\endabstract{%
- \global\toks@=\expandafter{\the\@argument}%
- \endgroup
- \edef\theabstract{\ignorespaces\the\toks@\unskip}%
- }
-
-\newif\ifExtrAbs \ExtrAbsfalse % Extract abstract from paper
-\def\breaklines{\begingroup\catcode`\^^M=\active\newlinechar=`\^^M}
-\def\endbreaklines{\endgroup}
-
-\def\prefnote{\@prefnote[\longargument]}
-\def\@prefnote{%
- \begingroup
- \def\CurrentTag{prefnote}%
- \@defaultoptions
- \@savingargumenttrue
- \@checkoptions}
-
-\def\endprefnote{%
- \global\toks@=\expandafter{\the\@argument}%
- \endgroup
- \edef\theprefnote{\ignorespaces\the\toks@\unskip}%
- }
-
-\let\theprefnote\relax
-
-\def\@defaultsignature{%
- \count@=0
- \loop
- \ifnum\count@<\authornumber
- \vskip20pt
- \advance\count@ by \@ne
- \noindent{\AUTHORfont\theauthor{\number\count@}}\endgraf
- \noindent{\addressfont\theaddress{\number\count@}}\endgraf
- \noindent{\netaddrfont\thenetaddress{\number\count@}}\endgraf
- \repeat
- }
-
-\newbox\startbox % \newdimen\startheight
-\def\article{% \ifExtrAbs\endbreaklines\fi % (*)
- \setbox\startbox=\hbox to\colwd
- {\hbox to\pagewd{\vbox{
- \hsize\pagewd\raggedright\advance\rightskip0pt plus 1fil\tenpoint\rm
- \let\\\break
- \noindent{\TITLEfont\thetitle\endgraf}%
- \@defaultsignature
- \ifx\theprefnote\relax\else
- \vskip 20pt
- \hbox to \pagewd{\hfil\vbox{\hsize 0.6\pagewd
- \rightskip\z@skip \parfillskip0pt plus 1fil \spaceskip\z@skip
- \noindent{\bf Author's Note: }\ignorespaces\theprefnote\par}\hfil}
- \fi
- \vskip 20pt
- \hbox to \pagewd{\hfil\vbox{\hsize 0.75\pagewd
- \rightskip\z@skip \parfillskip0pt plus 1fil \spaceskip\z@skip
- \centerline{\bf Abstract}\vskip 5pt
- \noindent\theabstract\par}\hfil}
- \vskip 1pc}}\hss}
- \twocolfigure\box\startbox\endfigure
- \ifExtrAbs % (*)
- \immediate\write\titleabs{\string\TITLE\string\bf\space
- \rhauthor:\ \string\rm \rhtitle;;}
- \immediate\write\titleabs{\space}
- \immediate\write\titleabs{\string\ABS\string\bf\space
- Abstract.\ \theabstract;;}
- \immediate\write\titleabs{\space}
- \immediate\write\titleabs{\string\endinput}
- \immediate\closeout\titleabs \endbreaklines
- \fi % (*)
-}
-
-% \head (This writes over a definition in tugboat.sty)
-\def\@domainhead{%
- \if@removeprewhite\else\vskip\baselineskip\fi
- \noindent{\HEADfont\baselineskip15pt % larger type than usual
- \raggedright\bf\ignorespaces\the\@argument\unskip\endgraf}%
- \if@removepostwhite % usually we want the white space
- \else\kern0.5\baselineskip\fi
- \nobreak
- \gdef\@next{%
- \if@allowindent\def\@next{}% usually we don't want to indent here
- \else\def\@next{\DeleteOptionalSpacesandPars{\noindent\ignorespaces}}\fi
- \@next
- }%
- }
-
-\restorecat\@
-
-% \Trimmarkstrue % for final copy
-% \overfullrule=0pt
-
-\endinput
-
-%% *********************************************************
-
-Change History
---------------
-1.11 changed TUG address in header to Santa Barbara
- parameterized dates, etc., in running footers
- initialized them at top of file instead of in footer text
-
-1.10 changed \tenrm to \tenpoint in definitions of \rtitle and \rfoot
- so that \sl will be properly defined if used in that context
-
-1.09 removed \smallcode definition; it is now in tugboat.sty
- increased width of abstract from 60-75% of text width
- added standard headers, prepared for archive installation
-
-1.08 changed \start to \startingpage
- added definition of \startingpage at top of file so running heads
- will be empty on first page of article
-
-1.07 removed \Pageno
- added check for previous input
- altered \\ in running heads
-
-Previous:
-
-%%% TUGPROC.sty 11-mar-90 (*) 15-mar-90 30-mar-90 10-apr-90
-%%% 26-jun-90 [changed running feet, page numbers, \start]
-%%% 28-jun-90 [added \stamp, \ifproof] 29-jun-90 [\Proof]
-%%% TUGPROC.sty 03-feb-90 (renamed 13-feb-90) 20-feb-90
-%%%
-%%% Supplementary header file for TUG Proceedings volume
-%%% for use with plain.tex (under revision still)
-%%%
-%%% (*) This version writes the title and abstract into
-%%% a file, for use in preparing the Title-Abstract-Bio
-%%% section in the program. Author-Title and Abstract are
-%%% written into a file as one-liners; if these lines are
-%%% too long, they should be reformatted manually before
-%%% the file is \input.
diff --git a/Master/texmf-dist/tpm/tugboat.tpm b/Master/texmf-dist/tpm/tugboat.tpm
index 95d4258910e..7477919dbff 100644
--- a/Master/texmf-dist/tpm/tugboat.tpm
+++ b/Master/texmf-dist/tpm/tugboat.tpm
@@ -3,7 +3,7 @@
<rdf:Description about="http://texlive.dante.de/texlive/Package/tugboat.zip">
<TPM:Name>tugboat</TPM:Name>
<TPM:Type>Package</TPM:Type>
- <TPM:Date>2006/05/28 18:33:58</TPM:Date>
+ <TPM:Date>2007/03/30 14:01:11</TPM:Date>
<TPM:Version></TPM:Version>
<TPM:Creator>rahtz</TPM:Creator>
<TPM:Title>LaTeX macros for TUGboat articles.</TPM:Title>
@@ -18,29 +18,23 @@ Barbara Beeton (plain), Robin Fairbairns (LaTeX)
<TPM:Size>1036738</TPM:Size>
<TPM:License></TPM:License>
<TPM:Build/>
- <TPM:RunFiles size="222141">
+ <TPM:RunFiles size="105803">
texmf-dist/bibtex/bst/tugboat/ltugbib.bst
texmf-dist/tex/latex/tugboat/ltugboat.cls
texmf-dist/tex/latex/tugboat/ltugboat.sty
texmf-dist/tex/latex/tugboat/ltugcomn.sty
texmf-dist/tex/latex/tugboat/ltugproc.cls
texmf-dist/tex/latex/tugboat/ltugproc.sty
-texmf-dist/tex/plain/tugboat/tugboat.cmn
-texmf-dist/tex/plain/tugboat/tugboat.sty
-texmf-dist/tex/plain/tugboat/tugproc.sty
texmf-dist/tpm/tugboat.tpm
</TPM:RunFiles>
- <TPM:DocFiles size="689133">
+ <TPM:DocFiles size="537360">
texmf-dist/doc/latex/tugboat/README
texmf-dist/doc/latex/tugboat/ltubguid.ltx
texmf-dist/doc/latex/tugboat/ltubguid.pdf
texmf-dist/doc/latex/tugboat/manifest.txt
texmf-dist/doc/latex/tugboat/tugboat.pdf
-texmf-dist/doc/plain/tugboat/README
-texmf-dist/doc/plain/tugboat/tubguide.pdf
-texmf-dist/doc/plain/tugboat/tubguide.tex
</TPM:DocFiles>
- <TPM:SourceFiles size="125464">
+ <TPM:SourceFiles size="125801">
texmf-dist/source/latex/tugboat/tugboat.dtx
texmf-dist/source/latex/tugboat/tugboat.ins
</TPM:SourceFiles>
diff --git a/Master/texmf/lists/tugboat b/Master/texmf/lists/tugboat
index 84c558e1bb0..4625cf465ae 100644
--- a/Master/texmf/lists/tugboat
+++ b/Master/texmf/lists/tugboat
@@ -3,9 +3,6 @@ texmf-dist/doc/latex/tugboat/ltubguid.ltx
texmf-dist/doc/latex/tugboat/ltubguid.pdf
texmf-dist/doc/latex/tugboat/manifest.txt
texmf-dist/doc/latex/tugboat/tugboat.pdf
-texmf-dist/doc/plain/tugboat/README
-texmf-dist/doc/plain/tugboat/tubguide.pdf
-texmf-dist/doc/plain/tugboat/tubguide.tex
texmf-dist/source/latex/tugboat/tugboat.dtx
texmf-dist/source/latex/tugboat/tugboat.ins
texmf-dist/bibtex/bst/tugboat/ltugbib.bst
@@ -14,9 +11,6 @@ texmf-dist/tex/latex/tugboat/ltugboat.sty
texmf-dist/tex/latex/tugboat/ltugcomn.sty
texmf-dist/tex/latex/tugboat/ltugproc.cls
texmf-dist/tex/latex/tugboat/ltugproc.sty
-texmf-dist/tex/plain/tugboat/tugboat.cmn
-texmf-dist/tex/plain/tugboat/tugboat.sty
-texmf-dist/tex/plain/tugboat/tugproc.sty
texmf-dist/tpm/tugboat.tpm
texmf/lists/tugboat