texlive[72675] Master/texmf-dist: tugboat-plain (27oct24)
commits+karl at tug.org
commits+karl at tug.org
Sun Oct 27 21:10:54 CET 2024
Revision: 72675
https://tug.org/svn/texlive?view=revision&revision=72675
Author: karl
Date: 2024-10-27 21:10:54 +0100 (Sun, 27 Oct 2024)
Log Message:
-----------
tugboat-plain (27oct24)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/plain/tugboat-plain/tubguide.pdf
trunk/Master/texmf-dist/doc/plain/tugboat-plain/tubguide.tex
trunk/Master/texmf-dist/tex/plain/tugboat-plain/tugboat.cmn
trunk/Master/texmf-dist/tex/plain/tugboat-plain/tugboat.sty
Modified: trunk/Master/texmf-dist/doc/plain/tugboat-plain/tubguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/plain/tugboat-plain/tubguide.tex
===================================================================
--- trunk/Master/texmf-dist/doc/plain/tugboat-plain/tubguide.tex 2024-10-26 23:46:25 UTC (rev 72674)
+++ trunk/Master/texmf-dist/doc/plain/tugboat-plain/tubguide.tex 2024-10-27 20:10:54 UTC (rev 72675)
@@ -1,9 +1,10 @@
+%% $Id: tubguide.tex 607 2024-10-26 22:26:03Z karl $
%% @texfile{
%% filename = "tubguide.tex",
-%% version = "1.22",
-%% date = "2016/09/26",
+%% version = "1.31",
+%% date = "2024-10-26",
%% filetype = "TUGboat Authors' Guide",
-%% copyright = "Copyright 1989, 1992, 2006, 2012-2016 TeX Users Group.
+%% copyright = "Copyright 1989, 1992, 2006, 2012-2024 TeX Users Group.
%% Unlimited copying and redistribution of this file
%% are permitted as long as this file is not
%% modified. Modifications (and redistribution of
@@ -17,13 +18,6 @@
%% that produced the original Authors' Guide in
%% TUGboat 10, no. 3, November 1989.",
%% }
-%% $Id: tubguide.tex 413 2022-03-13 02:13:57Z karl $
-%% *********************************************************
-%%
-%% TeXing this file requires the following files:
-%% TUGBOAT.STY (version 1.09+)
-%% TUGBOAT.CMN (version 1.08+) (loaded by TUGBOAT.STY)
-%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\input tugboat.sty
@@ -185,9 +179,9 @@
\netaddress * <network address> *
|halfline
\article
-|vellipsis
+...
<body of article>
-|vellipsis
+...
\makesignature
\endarticle
\endverbatim
@@ -363,7 +357,7 @@
for longer items the
||[\makeescape\!]
\verbatim
-!vellipsis
+...
\endverbatim
||
form (although \verbinline||...||\endverbatim is a good way to
@@ -381,7 +375,7 @@
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
@@ -408,7 +402,7 @@
To write out information, use
||[\makeescape\!]
\verbatim[\outputtofile{foo.out}]
-!vellipsis
+...
\endverbatim
||
An added bonus here is that characters which get internalized as
@@ -421,7 +415,7 @@
example, for an article with
\verbatim[\outputtofile{ray.vbm}]
\author * Ray Goucher *
-/vellipsis
+...
\endverbatim
we could say
\verbatim[\outputtofile{sig.vbm}]
@@ -473,9 +467,9 @@
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
@@ -498,9 +492,9 @@
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
@@ -541,13 +535,35 @@
intervening blank line (or |\par|) is or is not present.
+\subhead * Hyperlinks and urls *
+
+As of version~1.31 of the \plain-based \TUB\ macros, released in October
+2024, simple commands to create hyperlinks are available.
+
+\list\raggedright
+\item |\tbsurl{tug.org}| produces an https url, with the argument
+ typeset in \cs{tt}: \tbsurl{tug.org}.
+\item |\tbhurl{tug.org}| is analogous, for http urls: \tbhurl{tug.org}.
+\item |\tbmailto{tugboat at tug.org}| produces a mailto url, again with the
+ argument in \cs{tt}: \tbmailto{tugboat at tug.org}.
+\item |\tbhref{https://tug.org}{the \acro{TUG} home page| is the general
+ command, which typesets the second argument (no implicit font
+ changes) as a link to the first argument (no implicit protocol
+ added): \tbhref{https://tug.org/}{the \acro{TUG} home page}.
+\endlist
+
+At present, these commands only work in pdf\TeX. Other engines will be
+supported as needed.
+
+The links are displayed without a border, since we find link borders
+distracting rather than helpful. There are no display options, to keep
+things simple.
+
\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
Modified: trunk/Master/texmf-dist/tex/plain/tugboat-plain/tugboat.cmn
===================================================================
--- trunk/Master/texmf-dist/tex/plain/tugboat-plain/tugboat.cmn 2024-10-26 23:46:25 UTC (rev 72674)
+++ trunk/Master/texmf-dist/tex/plain/tugboat-plain/tugboat.cmn 2024-10-27 20:10:54 UTC (rev 72675)
@@ -19,7 +19,7 @@
%% definitions for abbreviations and logos that
%% appear in TUGboat."
%% }
-%% $Id: tugboat.cmn 561 2024-04-15 17:28:40Z karl $
+%% $Id: tugboat.cmn 607 2024-10-26 22:26:03Z karl $
% do nothing when reading this file a second time.
\ifx\tugboatcmn\undefined
@@ -29,8 +29,8 @@
\fi
\next
-\def\fileversion{v1.30}
-\def\filedate{2024-04-15}
+\def\fileversion{v1.31}
+\def\filedate{2024-10-26}
\message{File `TUGBOAT.CMN' \fileversion \space\space <\filedate>}
@@ -160,6 +160,7 @@
\def\LaTeXe{\LaTeX{}\kern.05em2$_{\textstyle\varepsilon}$}
\def\LMTX{\acro{LMTX}}
\def\LyX{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX}
+\def\macOS{mac\acro{OS}}
\def\MacOSX{Mac\,\acro{OS\,X}}
\def\MathML{Math\acro{ML}}
% for Robert McGaffey
@@ -199,6 +200,7 @@
\def\SliTeX{{\rm S\kern-.06em{\smc l\kern-.035emi}\kern-.06em\TeX}}
\def\slMF{{\manualsl META}\-{\manualsl FONT}\spacefactor1000 }
% Atari ST (Klaus Guntermann)
+\def\SQL{\acro{SQL}}
\def\stTeX{{\smc st\rm\kern-0.13em\TeX}}
\def\SVG{\acro{SVG}}
\def\TANGLE{{\tt TANGLE}\spacefactor1000 }
@@ -495,6 +497,24 @@
\def\tbcode#1{\hbox{\tt #1}} % literal text
\def\tbcodebreak{\nolinkurl} % assume url.sty has been loaded
+% live urls with pdf.
+\def\tbsurl#1{\tbhref{https://#1}{\tt #1}}
+\def\tbhurl#1{\tbhref{http://#1}{\tt #1}}
+\def\tbmailto#1{\tbhref{mailto:#1}{\tt #1}}
+%
+\ifx\pdfstartlink\undefined
+% \tbhref args: #1=url, #2=link text.
+ \def\tbhref#1#2{{#2}}% not pdftex, just print the text (in a group).
+\else % pdftex:
+ \def\tbhref#1#2{%
+ \leavevmode % since \pdfstartlink cannot be used in vertical mode
+ \pdfstartlink
+ attr{/Border [0 0 0]}%
+ user{/Subtype /Link /A << /S /URI /URI (#1) >>}%
+ {#2}\pdfendlink
+ }
+\fi % pdftex
+
% 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 at ne \fi % subdue negatives
@@ -552,8 +572,13 @@
\def\v at lx{\gdef\volx{Volume~\volno~(\volyr), No.~\issno}}
\def\volyr{}
\def\volno{}
-\def\vol #1,#2.{\gdef\volno{#1\unskip}%
+\def\vol #1, #2.{\gdef\volno{#1\unskip}%
\gdef\issno{\ignorespaces#2\unskip}%
+ % just the numbers:
+ \gdef\volnumber{#1}%
+ \gdef\issnumber{#2}%
+ \gdef\tbissident{\volnumber-\issnumber}% VV-n, for dois and urls
+ %
\setbox\TestBox=\hbox{\volyr}%
\ifdim \wd\TestBox > .2em \v at lx \fi }
@@ -1023,6 +1048,12 @@
Version Date Changes
------- --------- ---------------------------------------------------
+1.31 26 Oct 24 \tbsurl, \tbhurl, \tbmailto, \tbhref: simple
+ hyperlinks with pdftex.
+ new abbrevs \macOS, \SQL.
+ \volnumber, \issnumber: just the numbers.
+ \tbissident: VV-n to help with urls, etc.
+
1.30 15 Apr 24 remove duplicate \TP definition.
1.29 28 Oct 23 in \AllTeX, kern around ).
Modified: trunk/Master/texmf-dist/tex/plain/tugboat-plain/tugboat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/plain/tugboat-plain/tugboat.sty 2024-10-26 23:46:25 UTC (rev 72674)
+++ trunk/Master/texmf-dist/tex/plain/tugboat-plain/tugboat.sty 2024-10-27 20:10:54 UTC (rev 72675)
@@ -18,11 +18,11 @@
%% for preparation of items in TUGboat, the
%% Communications of the TeX Users Group.",
%% }
-%% $Id: tugboat.sty 561 2024-04-15 17:28:40Z karl $
+%% $Id: tugboat.sty 607 2024-10-26 22:26:03Z karl $
\def\thistubstyle{plain}
-\def\fileversion{v1.30}
-\def\filedate{2024-03-31}
+\def\fileversion{v1.31}
+\def\filedate{2024-10-26}
% general items
@@ -64,8 +64,6 @@
% ** utilities
% ** initialization
-
-
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -72,7 +70,6 @@
% ***** fonts *****
%
-
% Struts give ascenders and descenders to assist in baseline alignment
% (e.g. of adjoining vertical boxes); useful only with text fonts.
%
@@ -360,7 +357,6 @@
% ***** page dimensions *****
%
-
% vertical dimensions
\newdimen\trimlgt \trimlgt=11in % 10.5in (vols 7-9)
@@ -444,7 +440,6 @@
% ***** headers/footers *****
%
-
\def\pagenoprefix{}
\def\rtitlex{\def\tubfont{\tenpoint\rm}\TUB, \volx }
@@ -508,8 +503,6 @@
\newif\iftubsecondcolstart % when we splice, e.g., tb139wermuth-isdim
\newdimen\tubcolwidthandgutter
\newif\iftubfinaloption % set in tugboat.dates
-\def\tbsurl#1{{\tt #1}} % we don't try to have live urls in plain
-\def\tbhurl#1{{\tt #1}} % we don't try to have live urls in plain
\def\scriptsize{\let\rm=\sevenrm \font\tt=cmtt8 at 7pt % fake 7pt match LaTeX
\baselineskip=8pt \relax} % fake
\def\@empty{}
@@ -520,9 +513,9 @@
\ifnum\authornumber>0 % our convention: no doi if no author
\iftubfinaloption % do this if [final], even if pageno>900
\vbox to 0pt{% don't impact normal layout
+ \scriptsize
\edef\thedoi{\ifnum\count0>900 xnot\fi % but make url invalid if >900
- doi.org/\tubdoiprefix/\volno-\issno/\jobname}%
- \scriptsize
+ \tbsurl{doi.org/\tubdoiprefix/\tbissident/\jobname}}%
\vskip\baselineskip
\iftubsecondcolstart \moveright\tubcolwidthandgutter \fi
\rlap{\expandafter\tbsurl\expandafter{\thedoi}}%
@@ -577,7 +570,6 @@
\gdef\pageprefix{#2}% % as in A-10 for appendices; not used just now
\nextrunner }
-
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -584,7 +576,6 @@
% ***** insertions *****
%
-
\newif\if at floatable \@floatabletrue % sometimes we don't want
\def\nofloat{\@floatablefalse} % midinsertions to float
@@ -655,7 +646,6 @@
% ***** output *****
%
-
% Reorganize \pagecontents from PLAIN to put footnotes at very
% bottom of page, even if \raggedbottom. Also add bottom insertions.
@@ -810,7 +800,6 @@
\ExecuteNextDC % possible `Delayed Command'
}
-
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -817,7 +806,6 @@
% ***** page adjustment *****
%
-
% In the absence of automatic column-balancing, provide a mechanism
% for manually shortening a specified page.
@@ -923,7 +911,6 @@
\@form
\fi \fi}
-
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -1403,7 +1390,17 @@
}
-\def\endarticle{\vfil\end} % redefined in drivers
+% without the \nobreak, we can end up with an empty last page
+% (tb139wermuth-isdim). As Udo explains (13may24):
+% After TeX adjusts the page height the tugboat.sty output routine
+% starts the \ExecuteNextDC macro that prepares for a new page. This
+% page gets a \topskip and more input is read next. Only \endarticle is
+% left so a \vfill finishes the started column and your routine adds
+% another one to complete the page. That's all that ends up on the page.
+% With the \nobreak, the signature will be put on the last page, and the
+% previous page will be underfull, so it becomes obvious that a little
+% space should be taken away somewhere.
+\def\endarticle{\nobreak\vfil\end}
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1474,6 +1471,7 @@
\newif\if at allowindent
\def\allowindent{\global\@allowindenttrue}
+
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -2010,7 +2008,6 @@
}
}
-
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -2017,7 +2014,6 @@
% ***** figures *****
%
-
\newif\if@@mid \@@midfalse
\newif\if@@bot \@@botfalse
\def\@caption{}
@@ -2116,8 +2112,6 @@
\def\twocolfigure{%
\figure[\fixed]}
-
-
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -2124,8 +2118,6 @@
% ***** utilities *****
%
-
-
\def\linebreak{\unskip\break} % conflicts with LaTeX definition
% Define a structure that will permit a list (using \obeylines)
@@ -2208,7 +2200,6 @@
% ***** initialization *****
%
-
\def\initializearticle{%
\let\thetitle=\relax
\authornumber=0
@@ -2249,6 +2240,10 @@
Version Date Changes
------- --------- ---------------------------------------------------
+1.31 26 Oct 24 \thedoi: use \tbissident.
+ \endarticle: avoid empty last page, also for
+ tb139wermuth-isdim.
+
1.30 15 Apr 24 implement \iftubsecondcolstart for tb139wermuth-isdim.
1.29 28 Oct 23 introduce \abovecaptionskipamount, reduce to \smallskip
More information about the tex-live-commits
mailing list.