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.