summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/tugboat/tugboat.dtx')
-rw-r--r--Master/texmf-dist/source/latex/tugboat/tugboat.dtx378
1 files changed, 236 insertions, 142 deletions
diff --git a/Master/texmf-dist/source/latex/tugboat/tugboat.dtx b/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
index 009487a7c21..3f7934a9205 100644
--- a/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
+++ b/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
@@ -1,32 +1,22 @@
%^^A This (the production version of the macros) started life as xpt3
%^^A and no need has arisen to perform other experiments...
-% tugboat.dtx - main source for LaTeX TUGboat classes.
-%
+%
% \iffalse (this is a meta-comment (so they say))
-%% Copyright 1994,1995,1996,1997,1998,2000,2001,2004,2005,2006,2007,2008
-%% TeX Users Group.
-%%
-%% This file is part of the tugboat package.
-%%
-%% This work may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
-%% of this license or (at your option) any later version.
-%% The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2003/12/01 or later.
-%%
-%% This work has the LPPL maintenance status "maintained".
-%%
-%% The Current Maintainer of this work is the TeX Users Group
-%% (http://tug.org/TUGboat).
-%%
-%% The list of all files belonging to the distribution is
-%% given in the file `manifest.txt'.
-%%
-%% The list of derived (unpacked) files belonging to the distribution
-%% and covered by LPPL is defined by the unpacking scripts (with
-%% extension .ins) which are part of the distribution.
+% tugboat.dtx - main source for LaTeX TUGboat classes.
+%
+% Copyright 1994,1995,1996,1997,1998,2000,2001,2004,2005,2006,2007,2008,2009
+% TeX Users Group.
+%
+% This file is part of the tugboat package.
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
% \fi
%
% \section{Document preambles}
@@ -41,7 +31,7 @@
%<ltugboatsty>\ProvidesPackage{ltugboat}
%<ltugprocsty>\ProvidesPackage{ltugproc}
%<ltugcomn> \ProvidesPackage{ltugcomn}
- [2007/09/19 v2.4b
+ [2009/06/21 v2.6
%<ltugboatcls> TUGboat journal class%
%<ltugproccls> TUG conference proceedings class%
%<ltugboatsty|ltugprocsty> TUG compatibility package%
@@ -129,23 +119,24 @@
% \end{macrocode}
%
% \fi
-% \CheckSum{4500}
+% \CheckSum{4638}
%
% \section{Introduction}
%
% This file contains all the macros for typesetting \TUB{} with
% both plain \TeX\ and \LaTeXe.
% \subsection{Summary of control sequences}
-%
+%
% Abbreviations. Just a listing with indications of expansion where
% that may not be obvious. For full definitions, see real code below
% (Section~\ref{abbr-logo}).
-%
+%
% \begin{longtable}{lp{3in}}
% |\AllTeX|& (\La)\TeX\\
% |\AMS|& American Mathematical Society\\
% |\AmSTeX|&\\
% |\aw|& \aw\ (abbreviation for Addison-Wesley)\\
+% |\API|&\\
% |\AW|& Addison-Wesley\\
% |\BibTeX|&\\
% |\CandT|& Computers \& Typesetting\\
@@ -156,7 +147,10 @@
% |\DVD|&\\
% |\DVIPDFMx|& \DVIPDFMx\\
% |\DVItoVDU|& DVItoVDU\\
+% |\ECMA|&\\
+% |\EPS|&\\
% |\eTeX|& \eTeX\\
+% |\ExTeX|& \ExTeX\\
% |\Ghostscript|&\\
% |\Hawaii|& \Hawaii\\
% |\HTML|&\\
@@ -166,6 +160,7 @@
% |\JTeX|&\\
% |\JoT|& The Joy of \TeX\\
% |\LaTeX|&\\
+% |\LyX|&\\
% |\MacOSX|& Mac OS X\\
% |\MathML|&\\
% |\Mc|& M with raised c\\
@@ -177,6 +172,7 @@
% in maths)\\
% |\OMEGA|& Omega `logo' (\ensuremath{\Omega})\\
% |\OCP|& Omega compiled process\\
+% |\OOXML|&\\
% |\OTP|& Omega translation process\\
% |\mtex|& multilingual \TeX\\
% |\NTS|& New Typesetting System\\
@@ -211,6 +207,7 @@
% |\UNIX|&\\
% |\UTF|&\\
% |\VAX|&\\
+% |\VnTeX|&\\
% |\VorTeX|&\\
% |\XeT|&\\
% |\XeTeX|& reflected and lowered first `E'\\
@@ -218,6 +215,7 @@
% |\XML|&\\
% |\WEB|&\\
% |\WEAVE|&\\
+% |\WYSIWYG|&\\
% \end{longtable}
%
% Macros for things that are slightly more significant.
@@ -290,7 +288,7 @@
% |\revpubinfo|& with one argument, other info pertaining to \ldots \\
% |\endreviewitem|& end data for item being reviewed\\
% |\booktitle|& with one argument, format book title in text\\
-% |\Input|& |\input| with some other bookkeeping for
+% |\Input|& |\input| with some other bookkeeping for
% case where multiple articles are put together\\
% |\TBremark|& reminder to \TUB{} editorial staff\\
% |\TBEnableRemarks|& enable \cs{TBremark}s (normally suppressed)\\
@@ -317,7 +315,7 @@
%
% \subsection{Setup and options}
%
-% Check for reloading. Hmmm\dots Does this happen with \LaTeXe
+% Check for reloading. Hmmm\dots Does this happen with \LaTeXe\
% classes? Probably, in fact, as well that it doesn't, since the
% \cs{tugstyinit} referenced here doesn't exist; however, it's
% possible that we might need a similar mechanism in the future, so we
@@ -437,6 +435,15 @@
\DeclareOption{nonumber}{\let\if@numbersec\iffalse}
% \end{macrocode}
%
+% Minimal running headers/footers contain just the TUGboat volume/issue
+% identification and page number. `runningfull' is the default, and
+% includes title and author.
+%
+% \begin{macrocode}
+\DeclareOption{runningminimal}{\AtEndOfClass{\@tubrunningminimal}}
+\DeclareOption{runningfull}{\AtEndOfClass{\@tubrunningfull}}
+% \end{macrocode}
+%
% Any other options, we pass on to |article.cls| before we load it:
%
% \begin{macrocode}
@@ -444,11 +451,11 @@
% \end{macrocode}
%
% Request default options (draft mode, standard citation, double-sided
-% printing), process all options, and then get the base document class
-% on top of which we reside.
+% printing, etc.), process all options, and then get the base document
+% class on top of which we reside.
%
% \begin{macrocode}
-\ExecuteOptions{draft,extralabel,numbersec,rawcite}
+\ExecuteOptions{draft,extralabel,numbersec,rawcite,runningfull}
\ProcessOptions
\LoadClass[twoside]{article}
% \end{macrocode}
@@ -524,7 +531,7 @@
% default settings of typesetting parameters, and so on. The user (or
% more typically, editor) may execute the commands by using the
% command \cs{StartNewPaper}. Things I've not yet thought of may be
-% added to the list of commands, by
+% added to the list of commands, by
% \begin{macrocode}
\newtoks\ResetCommands
\ResetCommands{%
@@ -540,7 +547,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
-%
+%
% \subsection{Helpful shorthand (common code with Plain styles)}
%
% \cs{makeescape}, \dots, \cs{makecomment} allow users to change the
@@ -629,21 +636,24 @@
\def\AmSLaTeX{\AmS-\LaTeX}
\def\AmSTeX{\AmS-\TeX}
\def\ANSI{\acro{ANSI}}
+\def\API{\acro{API}}
\def\ASCII{\acro{ASCII}}
\def\aw{A\kern.1em-W}
\def\AW{Addison\kern.1em-\penalty\z@\hskip\z@skip Wesley}
%
% make \BibTeX work in slanted contexts too; it's common in titles, and
% especially burdensome to hack in .bib files.
-\def\BibTeX{%
+\def\Bib{%
\ifdim \fontdimen1\font>0pt
B{\SMC\SMC IB}%
\else
- \textsc{Bib}\kern-.08em
+ \textsc{Bib}%
\fi
- \TeX}
+}
+\def\BibTeX{\Bib\kern-.08em \TeX}
%
\def\CandT{\textsl{Computers \& Typesetting}}
+\def\CJK{\acro{CJK}}
% \end{macrocode}
% We place our \cs{kern} after \cs{-} so that it disappears if the
% hyphenation is taken:
@@ -658,7 +668,11 @@
\def\DVI{\acro{DVI}}
\def\DVIPDFMx{\acro{DVIPDFM}$x$}
\def\DVItoVDU{DVIto\kern-.12em VDU}
+\def\ECMA{\acro{ECMA}}
+\def\EPS{\acro{EPS}}
\DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX}
+\DeclareRobustCommand\ExTeX{%
+ \ensuremath{\textstyle\varepsilon_{\kern-0.15em\cal{X}}}\kern-.2em\TeX}
\def\FAQ{\acro{FAQ}}
\def\FTP{\acro{FTP}}
\def\Ghostscript{Ghost\-script}
@@ -704,6 +718,7 @@
%
% \begin{macrocode}
%<!latex>\def\LaTeX{\La\kern-.15em\TeX}
+\def\LyX{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX}
\def\MacOSX{Mac\,\acro{OS\,X}}
\def\MathML{Math\acro{ML}}
\def\Mc{\setbox\TestBox=\hbox{M}M\vbox
@@ -731,6 +746,7 @@
\DeclareTextSymbolDefault{\textohm}{OT1}
\newcommand\OMEGA{\textohm}
\DeclareRobustCommand{\OCP}{\OMEGA\acro{CP}}
+\def\OOXML{\acro{OOXML}}
\DeclareRobustCommand{\OTP}{\OMEGA\acro{TP}}
\def\mtex{T\kern-.1667em\lower.424ex\hbox{\^E}\kern-.125emX\@}
% \end{macrocode}
@@ -746,6 +762,7 @@
\def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC\@}
\def\PiCTeX{\PiC\kern-.11em\TeX}
\def\PGF{\acro{PGF}}
+\def\PHP{\acro{PHP}}
\def\plain{\texttt{plain}}
\def\PNG{\acro{PNG}}
\def\POBox{P.\thinspace O.~Box }
@@ -757,6 +774,7 @@
\def\SliTeX{\textrm{S\kern-.06em\textsc{l\kern-.035emi}%
\kern-.06em\TeX}}
\def\slMF{\textsl{\MF}} % should never be used
+\def\SQL{\acro{SQL}}
\def\stTeX{\textsc{st}\kern-0.13em\TeX}
\def\STIX{\acro{STIX}}
\def\SVG{\acro{SVG}}
@@ -784,20 +802,22 @@
\def\UNIX{\acro{UNIX}}
\def\UTF{\acro{UTF}}
\def\VAX{V\kern-.12em A\kern-.1em X\@}
+\def\VnTeX{V\kern-.03em n\kern-.02em \TeX}
\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\@}
\def\XML{\acro{XML}}
\def\WEB{\texttt{WEB}\@}
\def\WEAVE{\texttt{WEAVE}\@}
+\def\WYSIWYG{\acro{WYSIWYG}}
% \end{macrocode}
-%
+%
% Xe\TeX{} requires reflecting the first E, hence we complain if the
% graphics package is not present. (For plain documents, this can be
% loaded via Eplain.) Also, at Barbara's suggestion, if the current
% font is slanted, we rotate by 180 instead of reflecting so there is at
% least a chance to look ok. (The magic values here seem more or less
% ok for \texttt{cmsl} and \texttt{cmti}.)
-%
+%
% \begin{macrocode}
\def\tubreflect#1{%
\@ifundefined{reflectbox}{%
@@ -811,7 +831,7 @@
}%
}
\def\tubhideheight#1{\setbox0=\hbox{#1}\ht0=0pt \dp0=0pt \box0 }
-\def\Xe#1{\leavevmode
+\DeclareRobustCommand\Xe[1]{\leavevmode
\tubhideheight{\hbox{X%
\setbox0=\hbox{\TeX}\setbox1=\hbox{E}%
\lower\dp0\hbox{\raise\dp1\hbox{\kern-.125em\tubreflect{E}}}%
@@ -1051,9 +1071,10 @@
}
\def\bull{\vrule \@height 1ex \@width .8ex \@depth -.2ex }
\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\Dag{\raise .6ex\hbox{$\scriptstyle\dagger$}}
+%
\DeclareRobustCommand\sfrac[1]{\@ifnextchar/{\@sfrac{#1}}%
{\@sfrac{#1}/}}
\def\@sfrac#1/#2{\leavevmode\kern.1em\raise.5ex
@@ -1062,11 +1083,21 @@
/\kern-.15em\lower.25ex
\hbox{$\m@th\mbox{\fontsize\sf@size\z@
\selectfont#2}$}}
+%
+% don't stay bold in description items, bold italic is too weird.
+\DeclareRobustCommand\meta[1]{%
+ \ensuremath{\langle}%
+ \ifmmode \mbox\bgroup \fi % if in math
+ {\it #1}% no typewriter italics, please
+ \ifmmode \egroup \fi
+ \ensuremath{\rangle}%
+}
+%
\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
-\DeclareRobustCommand\meta[1]{% don't stay bold in description items
- \ensuremath{\langle}{\mdseries\emph{#1}}\ensuremath{\rangle}}
+%
\DeclareRobustCommand\env[1]{%
\cs{begin}\texttt{\char`\{#1\char`\}}}
+%
\def\thinskip{\hskip 0.16667em\relax}
% \end{macrocode}
%
@@ -1124,6 +1155,12 @@
}
% \end{macrocode}
%
+% One more accent.
+%
+% \begin{macrocode}
+\def\r#1{\accent"17 #1}
+% \end{macrocode}
+%
% \subsection{Reviews}
%
% Format information on reviewed items for book review articles.
@@ -1163,7 +1200,7 @@
%
% Starting with volume 23 (nominal 2002), we have \cs{issyear} instead
% of \cs{issdate}, because issues don't have months any more.
-%
+%
% For production, these are set in a separate file,
% |tugboat.dates|, which is issue-specific.
%
@@ -1363,7 +1400,7 @@
Mac-OS Ma-la-ya-lam Math-Sci-Net
Net-BSD Open-BSD Open-Office
Pfa-Edit Post-Script Rich-ard Skoup South-all
- Vieth VM-ware Win-Edt
+ Vieth 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 com-put-able com-put-abil-ity cus-tom-iz-able
@@ -1374,7 +1411,7 @@
fall-ing
half-way
in-fra-struc-ture
- key-note
+ key-note
long-est
ma-gyar man-u-script man-u-scripts mne-mon-ic mne-mon-ics
mono-space mono-spaced
@@ -1388,7 +1425,7 @@
sub-ex-pres-sion syn-chro-ni-city syn-chro-nous
text-height text-length text-width
time-stamp time-stamped
- vis-ual vis-ual-ly
+ vis-ual vis-ual-ly
which-ever white-space white-spaces wide-spread wrap-around
}
%<!latex>\restorecat\@
@@ -1495,7 +1532,7 @@
%
% \subsection{Authors, contributors, addresses, signatures}
%
-% Each article may have several authors (of course), so we permit an
+% An article may have several authors (of course), so we permit an
% \cs{author} command for each of them. The names are then stored in
% a set of \cs{csname}s called \cs{author1}, \cs{author2}, \dots
% Similarly, there are several \cs{address<n>} and \cs{netaddress<n>}
@@ -1526,7 +1563,7 @@
% \end{macrocode}
%
% \cs{@getauthorlist} processes the author list, passing every bit of
-% stuff that needs to be typeset to its argument.
+% stuff that needs to be typeset to the macro specified as its argument.
% \begin{macrocode}
\def\@getauthorlist#1{%
\count@\authornumber
@@ -1656,7 +1693,7 @@
\def\signaturemark{\leavevmode\llap{$\diamond$\enspace}}
% \end{macrocode}
%
-% The code used to define the following:
+% The code previously defined the following:
%
% {\small\begin{verbatim}
% {\makeactive\@
@@ -1748,7 +1785,7 @@
% \item[\emph{Comment:}] I think this is a fantasy, since everyone (in
% practice, nowadays) quotes an internet address. In principle, there
% are people who will quote |X.400| addresses (but they're few and far
-% between) and I have (during 1995!) seen an address with an |UUCP|
+% between) and I have (during 1995!)\ seen an address with an |UUCP|
% bang-path component on |comp.text.tex|, but \emph{really}!
% \end{description}
%
@@ -1800,10 +1837,8 @@
% from (1) the lack of the eccentric optional argument, and (2) the
% activation of `|/|'.
%
-% We could imagine needing an \cs{URL} command in general. If so, we
-% must remember that the code here would naturally permit a break
-% between the last two characters of |http://|, and some sort of
-% special action must be taken to ensure that it doesn't happen.
+% For general URLs, \texttt{url.sty} (with or without hyperref) suffices
+% and is recommended.
%
% \begin{macrocode}
\def\personalURL{\begingroup
@@ -1876,7 +1911,7 @@
% that circumstance we need to use a declaration copied from
% |latex209.def| rather than the way we would normally do the thing
% (using the command \LaTeXe{} defines for the job).
-%
+%
% \begin{macrocode}
\if@compatibility
\DeclareRobustCommand\net{\normalfont\ttfamily\mathgroup\symtypewriter}
@@ -1887,6 +1922,22 @@
\def\@author{\@defaultauthorlist}
% \end{macrocode}
%
+% For the online re-publication (as of 2009) by Mathematical Sciences
+% Publishers |http://mathscipub.org|), lots and lots of metadata is
+% needed, much of it redundant with things we already do. They are
+% flexible enough to allow us to specify it in any reasonable way, so
+% let's make one command \cs{mspmetavar} which takes two arguments.
+% Example: |\mspmetavar{volumenumber}{30}|. For our purposes, it is
+% just a no-op.
+%
+% \begin{macro}{\mspmetavar}
+% \begin{macrocode}
+\def\mspmetavar#1#2{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Article title}
+%
% \begin{macro}{\if@articletitle}
% \begin{macro}{\maketitle}
% \begin{macro}{\@r@maketitle}
@@ -1931,6 +1982,43 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\title}
+% \begin{macro}{\TB@title}
+% We redefine the \cs{title} command, so as to set the \cs{rhTitle}
+% command at the same time. While we're at it, we redefine it to have
+% optional arguments for use as `short' versions, thus obviating the
+% need for users to use the \cs{shortTitle} command.
+% \begin{macrocode}
+\def\rhTitle{}% avoid error if no author or title
+\renewcommand\title{\@dblarg\TB@title}
+\def\TB@title[#1]#2{\gdef\@title{#2}%
+ \bgroup
+ \let\thanks\@gobble
+ \def\\{\unskip\space\ignorespaces}%
+ \protected@xdef\rhTitle{#1}%
+ \egroup
+}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\shortTitle}
+% \begin{macro}{\ifshortAuthor}
+% \begin{macro}{\shortAuthor}
+% The \cs{rh*} commands are versions to be used in the running head of
+% the article. Normally, they are the same things as the author and
+% title of the article, but in the case that there are confusions
+% therein, the text should provide substitutes, using the \cs{short*}
+% commands.
+% \begin{macrocode}
+\def\shortTitle #1{\def\rhTitle{#1}}
+\newif\ifshortAuthor
+\def\shortAuthor #1{\def\rhAuthor{#1}\shortAuthortrue}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
% \subsection{Section titles}
%
% The following macros are used to set the large \TUB{} section heads
@@ -2149,7 +2237,7 @@
\vspace{.5\baselineskip}}
% \end{macrocode}
%
-% \subsection{Headings}
+% \subsection{Section headings}
%
% Redefine style of section headings to match plain \TUB.
% Negative beforeskip suppresses following parindent. (So
@@ -2170,25 +2258,25 @@
\def\section{\TB@startsection{{section}%
1%
\z@
- {-8\p@}%
+ {-8\p@ \@plus-2\p@ \@minus-2\p@}%
{4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsection{\TB@startsection{{subsection}%
2%
\z@
- {-8\p@}%
+ {-8\p@ \@plus-2\p@ \@minus-2\p@}%
{4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsubsection{\TB@startsection{{subsubsection}%
3%
\z@
- {-8\p@}%
+ {-8\p@ \@plus-2\p@ \@minus-2\p@}%
{4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\paragraph{\TB@startsection{{paragraph}%
4%
\z@
- {2.5ex\@plus 1ex}%
+ {4\p@ \@plus1\p@ \@minus1\p@}%
{-1em}%
{\normalsize\bf}}}
% \end{macrocode}
@@ -2203,21 +2291,21 @@
\TB@startsection{{section}%
1%
\z@
- {-8\p@}%
+ {-8\p@ \@plus-2\p@ \@minus-2\p@}%
{4\p@}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsection{\TB@nolimelabel
\TB@startsection{{subsection}%
2%
\z@
- {-8\p@}%
+ {-8\p@ \@plus-2\p@ \@minus-2\p@}%
{-0.5em\@plus-\fontdimen3\font}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\def\subsubsection{\TB@nolimelabel
\TB@startsection{{subsubsection}%
3%
\parindent
- {-8\p@}%
+ {-8\p@ \@plus-2\p@ \@minus-2\p@}%
{-0.5em\@plus-\fontdimen3\font}%
{\normalsize\bf\raggedright\hyphenpenalty=\@M}}}
\fi
@@ -2289,12 +2377,12 @@
% \end{macrocode}
%
% \cs{l@<sectioning-name>} is for table of contents (of an article).
-%
+%
% We define new macros to allow easily changing the font used for toc
% entries (for \TUB, we usually want roman, not bold), and the space
% between entries. Nelson Beebe's articles are almost the only ones
% that ever have toc's.
-%
+%
% \begin{macrocode}
\def\TBtocsectionfont{\normalfont}
\newskip\TBtocsectionspace \TBtocsectionspace=1.0em\@plus\p@
@@ -2316,7 +2404,7 @@
\addvspace{\TBtocsectionspace}%
\@tempdima 1.5em
\begingroup
- \parindent\z@ \rightskip\z@ % article style makes \rightskip > 0
+ \parindent\z@ \rightskip\z@ % article style makes \rightskip > 0
\parfillskip\z@
\TBtocsectionfont
\leavevmode\advance\leftskip\@tempdima\hskip-\leftskip#1\nobreak\hfil
@@ -2477,28 +2565,50 @@
% we now do our best to discourage hyphenation within captions. We also
% typeset them in \cs{small}.
%
+% First, let's define a dimension by which we will indent full-page
+% captions. We'll also use this to indent abstracts in proceedings style.
+% \begin{macro}{\tubfullpageindent}
+% \begin{macrocode}
+\newdimen\tubfullpageindent \tubfullpageindent=4.875pc
+% \end{macrocode}
+% \end{macro}
+%
+% Ok, here is the \cs{@makecaption}.
% \begin{macrocode}
\long\def\@makecaption#1#2{%
\vskip\abovecaptionskip
- \sbox\@tempboxa{\small #1: #2}%
- \ifdim \wd\@tempboxa >\hsize
- \raggedright\hyphenpenalty=\@M \parindent=1em
- {\small \noindent #1: #2\par}%
+ \sbox\@tempboxa{\small #1: #2}% try in an hbox
+ \ifdim \wd\@tempboxa > \hsize
+ {% caption doesn't fit on one line; set as a paragraph.
+ \small \raggedright \hyphenpenalty=\@M \parindent=1em
+ % indent full-width captions {figure*}, but not single-column {figure}.
+ \ifdim\hsize = \textwidth
+ \leftskip=\tubfullpageindent \rightskip=\leftskip
+ \advance\rightskip by 0pt plus2em % increase acceptable raggedness
+ \fi
+ \noindent #1: #2\par}%
\else
- \global \@minipagefalse
+ % fits on one line; use the hbox, centered. Do not reset its glue.
+ \global\@minipagefalse
\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
\fi
\vskip\belowcaptionskip}
% \end{macrocode}
%
% Also use \cs{small} for the caption labels, and put the label itself
-% (Figure xx) in bold.
-%
+% (e.g., ``Figure 1'') in bold.
+%
% \begin{macrocode}
\def\fnum@figure{{\small \bf \figurename\nobreakspace\thefigure}}
\def\fnum@table{{\small \bf \tablename\nobreakspace\thetable}}
% \end{macrocode}
%
+% Let's reduce the default space above captions a bit, and give it some
+% flexibility. The default is |10pt|, which seems too much.
+% \begin{macrocode}
+\setlength\abovecaptionskip{6pt plus1pt minus1pt}
+% \end{macrocode}
+%
% \subsection{Size changing commands}
%
% Apart from their `normal' effects, these commands change the glue
@@ -2556,6 +2666,7 @@
}
\def\quote{\list{}{\rightmargin.5\leftmargin}\item[]}
% \end{macrocode}
+%
% From Dominik Wujastyk's font article. First paragraph of a quotation
% will not be indented, and right margin is decreased for narrow columns.
% \begin{macrocode}
@@ -2563,6 +2674,18 @@
\rightmargin.5\leftmargin\parsep \z@\@plus\p@}\item[]}
% \end{macrocode}
%
+% The |compactitemize| environment, without space between the items.
+%
+% \begin{macrocode}
+\newenvironment{compactitemize}%
+ {\begin{itemize}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\parskip}{0pt}%
+ \setlength{\parsep} {0pt}%
+ }%
+ {\end{itemize}}
+% \end{macrocode}
+%
% \subsection{Some fun with \texttt{verbatim}}
%
% The |plain| \TUB{} style allows \verb|[optional]| arguments to its
@@ -2585,7 +2708,7 @@
% \end{macrocode}
%
% Impose an optional argument on the environment.
-%
+%
% We start the macro with \cs{par} to avoid a common error: if the
% optional argument is \cs{small}, and the document has no blank line
% before the verbatim block, we don't want that preceding paragraph to
@@ -2691,7 +2814,7 @@
%
% \subsection{Bibliography}
% \label{sec:citations}
-% This is more or less copied verbatim from Glenn Paulley's
+% This is more or less copied verbatim from Glenn Paulley's
% \emph{chicago.sty} (\texttt{gnpaulle@\penalty0 bluebox.\penalty0
% uwaterloo.\penalty0 ca}).
% It produces an author-year citation style bibliography, using
@@ -2918,6 +3041,7 @@
%
% \subsection{Registration marks}
%
+% We no longer use these since Cadmus does not want them.
% \begin{macrocode}
\def\HorzR@gisterRule{\vrule \@height 0.2\p@ \@depth\z@ \@width 0.5in }
\def\DownShortR@gisterRule{\vrule \@height 0.2\p@ \@depth 1pc \@width 0.2\p@ }
@@ -2947,7 +3071,6 @@
\dlap{\kern\textheight\kern3pc
\rlap{\hb@xt@\pagewd{\midrtitle\hfil\midrtitle}}
}}
-
% \end{macrocode}
% registration marks; these are temporarily inserted in the running head
% \begin{macrocode}
@@ -2958,18 +3081,37 @@
\vbox{\dlap{\vbox to\trimlgt{\vfil\botregister}}%
\topregister\vskip \headmargin \vskip 10\p@}}}}%
}
-
+% put issue identification and page number in header.
\def\@oddhead{\MakeRegistrationMarks\PrelimDraftfooter
\normalsize\csname normalshape\endcsname\rm
\rtitlex\qquad\midrtitle \hfil \thepage}
\def\@evenhead{\MakeRegistrationMarks\PrelimDraftfooter
\normalsize\csname normalshape\endcsname\rm
\thepage\hfil\midrtitle\qquad\rtitlex}
-\def\@oddfoot{}
-\def\@evenfoot{}
+
+% put title and author in footer.
+\def\@tubrunningfull{%
+ \def\@oddfoot{\hfil\rhTitle}
+ \def\@evenfoot{\@author\hfil}
+}
+
+\def\@tubrunninggetauthor#1{#1
+ \begingroup
+ \let\thanks\@gobble
+ \protected@xdef\rhAuthor{\the\toks@##1}%
+ \endgroup
+}%
+
+% empty footer.
+\def\@tubrunningminimal{%
+ \def\@oddfoot{\hfil}
+ \def\@evenfoot{\hfil}
+}
+
\def\ps@headings{}
\pagestyle{headings}
% \end{macrocode}
+%
% \subsection{Output routine}
% Modified to alter |\brokenpenalty| across columns
%
@@ -2992,7 +3134,7 @@
\@whilesw\if@fcolmade \fi{\@outputpage\@startdblcolumn}\endgroup
\fi}
% \end{macrocode}
-%
+%
% \subsection{Font-related definitions and machinery}
% These are mostly for compatibility with plain |tugboat.sty|
% \begin{macrocode}
@@ -3025,9 +3167,8 @@
% that's maintained in \cs{@currsize}: if the user does something
% silly re.~selecting fonts, we'll get the wrong results. The
% following code is adapted from an old version of |relsize.sty| by
-% Donald Arseneau and Matt Swift. (Note that the
-% order of examination of \cs{@currsize} is to get the commonest cases
-% out of the way first.)
+% Donald Arseneau and Matt Swift. (The order of examination of
+% \cs{@currsize} is to get the commonest cases out of the way first.)
% \begin{macrocode}
%<*common>
\DeclareRobustCommand\SMC{%
@@ -3119,7 +3260,7 @@
% \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}
@@ -3303,10 +3444,10 @@
\def\tugProcYear{2002}\fi
% \end{macrocode}
% \end{macro}
-%
+%
% Now execute the default `year' option and get on with processing.
% Note that this command gets ignored if the configuration file
-% specifies a silly year.
+% specifies a silly year.
%
% \begin{macrocode}
\ExecuteOptions{tug\tugProcYear,title\TUGprocExtraOptions}
@@ -3413,7 +3554,8 @@
% \begin{macro}{\aboveauthorskip}
% \begin{macro}{\belowauthorskip}
% \begin{macro}{\belowabstractskip}
-% Some stretchable stuff to permit variability in page layout.
+% Some changeable skips to permit variability in page layout depending
+% on the particular paper's page breaks.
% \begin{macrocode}
\newskip\aboveauthorskip \aboveauthorskip=18\p@ \@plus4\p@
\newskip\belowauthorskip \belowauthorskip=\aboveauthorskip
@@ -3450,7 +3592,7 @@
\centerline{\bfseries Abstract}%
\vskip.5\baselineskip\rmfamily
\list{}{\listparindent20\p@
- \itemindent\z@ \leftmargin4.875pc
+ \itemindent\z@ \leftmargin\tubfullpageindent
\rightmargin\leftmargin \parsep \z@}\item[]\ignorespaces
\the\abstract@toks
\endlist\global\@ignoretrue
@@ -3461,18 +3603,6 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{description}
-% \item[\emph{Comment}] This is all very weird\dots why we (of all
-% people) don't allow \cs{thanks} currently escapes me.
-% \end{description}
-%
-% This restriction simply removed 1998/01/09
-%
-% \begin{macrocode}
-%\def\thanks#1{\@bsphack\TBWarning{\string\thanks\space
-% is not supported}\@esphack}
-% \end{macrocode}
-%
% \begin{environment}{abstract}
% \begin{macro}{\if@abstract}
% \begin{macro}{\abstract@toks}
@@ -3579,42 +3709,6 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\title}
-% \begin{macro}{\TB@title}
-% We redefine the \cs{title} command, so as to set the \cs{rhTitle}
-% command at the same time. While we're at it, we redefine it to have
-% optional arguments for use as `short' versions, thus obviating the
-% need for users to use the \cs{shortTitle} command.
-% \begin{macrocode}
-\renewcommand\title{\@dblarg\TB@title}
-\def\TB@title[#1]#2{\gdef\@title{#2}%
- \bgroup
- \let\thanks\@gobble
- \let\\\ %
- \protected@xdef\rhTitle{#1}%
- \egroup
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\shortTitle}
-% \begin{macro}{\ifshortAuthor}
-% \begin{macro}{\shortAuthor}
-% The \cs{rh*} commands are versions to be used in the running head of
-% the article. Normally, they are the same things as the author and
-% title of the article, but in the case that there are confusions
-% therein, the text should provide substitutes, using the \cs{short*}
-% commands.
-% \begin{macrocode}
-\def\shortTitle #1{\def\rhTitle{#1}}
-\newif\ifshortAuthor
-\def\shortAuthor #1{\def\rhAuthor{#1}\shortAuthortrue}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
% \begin{macro}{\ps@TBproctitle}
% \begin{macro}{\ps@TBproc}
% \begin{macro}{\dopagecommands}
@@ -3659,7 +3753,7 @@
}
\def\pfoottext{{\smc Preprint}: Proceedings of the \volyr{} Annual Meeting}
-\def\rfoottext{\normalfont\TUB, \volx\Dash
+\def\rfoottext{\normalfont\TUB, \volx\Dash
{Proceedings of the \volyr{} Annual Meeting}}
\pagestyle{TBproc}
@@ -3679,7 +3773,7 @@
% natural tendency to reference sections, which is a matter that needs
% attention. The class option \textsc{numbersec} once again numbers the
% sections (and noticeably changes the layout).
-%
+%
% \begin{macrocode}
\if@proc@numbersec
\else