texlive[72676] Master/texmf-dist: tugboat (27oct24)

commits+karl at tug.org commits+karl at tug.org
Sun Oct 27 21:11:04 CET 2024


Revision: 72676
          https://tug.org/svn/texlive?view=revision&revision=72676
Author:   karl
Date:     2024-10-27 21:11:04 +0100 (Sun, 27 Oct 2024)
Log Message:
-----------
tugboat (27oct24)

Modified Paths:
--------------
    trunk/Master/texmf-dist/bibtex/bst/tugboat/tugboat.bst
    trunk/Master/texmf-dist/doc/latex/tugboat/NEWS
    trunk/Master/texmf-dist/doc/latex/tugboat/ltubguid.pdf
    trunk/Master/texmf-dist/doc/latex/tugboat/tugboat-code.pdf
    trunk/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
    trunk/Master/texmf-dist/tex/latex/tugboat/ltugboat.cls
    trunk/Master/texmf-dist/tex/latex/tugboat/ltugboat.sty
    trunk/Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty
    trunk/Master/texmf-dist/tex/latex/tugboat/ltugproc.cls
    trunk/Master/texmf-dist/tex/latex/tugboat/ltugproc.sty

Modified: trunk/Master/texmf-dist/bibtex/bst/tugboat/tugboat.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/tugboat/tugboat.bst	2024-10-27 20:10:54 UTC (rev 72675)
+++ trunk/Master/texmf-dist/bibtex/bst/tugboat/tugboat.bst	2024-10-27 20:11:04 UTC (rev 72676)
@@ -1,9 +1,10 @@
-%%% $Id: tugboat.bst 557 2024-03-31 15:56:24Z karl $
+%%% $Id: tugboat.bst 593 2024-10-07 18:02:33Z karl $
 %%% TUGboat changes are public domain.
 %%% 
 %%% Modified for TUGboat from abbrvurl.bst:
-%%%   New entry types: @ctan (see ctanbib); 
-%%%                    @online and @software (aliases for @misc).
+%%%   New entry types: @ctan (see ctanbib package); 
+%%%                    @online and @software (aliases for @misc);
+%%%                    @webpage (see definition below).
 %%%   For @misc, the editor field is accepted along with author.
 %%%   For @misc, the organization field is output.
 %%%   New field bookauthor for @incollection and @inproceedings.
@@ -18,9 +19,9 @@
 %%%   Set urlintro="" and onlinestring="" to omit labels from output.
 %%%   Use \url instead of \href, so we don't require hyperref.
 %%%   Always use https://doi.org/ for the doi url; omit "doi:" from output.
-%%%   If doi or howpublished is present, omit url, since in practice
-%%%     they are usually all the same thing. Should check if
-%%%     howpublished is in fact a url, but we currently don't.
+%%%   If doi is present, omit url, since in practice they are usually
+%%%     the same thing. Should also omit if howpublished is the same
+%%%     value, but we currently don't.
 %%%   Truncate long author lists in format.names (max.names, trunc.num);
 %%%     omit "and" from author lists, per Oren P.
 %%%   Use \emph instead of \em so we get automatic italic corrections.
@@ -28,6 +29,7 @@
 %%%     "journaltie" - ~ instead of space after journal name.
 %%%     "monthtie" - ~ instead of space after month name.
 %%%     "newpage" - force page break after entry.
+%%%     "nojournalcomma" - if set, omit comma after journal name.
 %%%     "nowarning" - if set, omit empty field warnings from output.check.
 %%%     "pagesnodashify" - if set, don't convert - to -- in pages field.
 %%%     "prebibitem" - material output before \bibitem, with newline appended
@@ -91,6 +93,7 @@
     journaltie     % tub
     monthtie       % tub
     newpage        % tub
+    nojournalcomma % tub
     nowarning      % tub
     pagesnodashify % tub
     prebibitem     % tub
@@ -197,8 +200,9 @@
       journal missing$
       or
         { ", " * }  % not a journal, normal comma+space separator
-        { journal "TUGboat" = journal "\TUB" = or
-          { skip$ } % TUGboat, no comma
+        { journal "TUGboat" = journal "\TUB" = or 
+          nojournalcomma empty$ not or
+          { skip$ } % TUGboat or no comma requested
           { "," * } % not TUGboat, want comma
           if$ 
           journaltie empty$
@@ -816,7 +820,11 @@
     'skip$
     { "(" number * ")" * *
       volume empty$
-        { "there's a number but no volume in " cite$ * warning$ }
+        { nowarning empty$
+            { "there's a number but no volume in " cite$ * warning$ }
+            'skip$
+          if$
+        }
         'skip$
       if$
     }
@@ -1009,19 +1017,24 @@
   if$
 }
 
-% If inlinelinks is true, then format.url should be a no-op, since it's
-% (a) redundant, and (b) could end up as a link-within-a-link.
-% Likewise if the url is empty.
-% Likewise if doi or howpublished is present, on the assumption that
-% url most likely redundantly specifies the same info as those fields; this
-% seems to be what people do in practice.
+% This function, format.url, should do nothing if
+% - inlinelinks is true, since then it's (a) redundant, and (b) could
+%   end up as a link-within-a-link.
+% - if the url is empty.
+% - if the doi field is present, on the assumption that it most
+%   likely redundantly specifies the same info; this seems to be what
+%   people do in practice, unfortunately.
+% 
+% If we find this case again in the future, we'll implement it.
+% For tb141lang-dh, howpublished is intentionally and reasonably
+% separate from url.
+% - if the howpublished field contains the same value as the url field;
 FUNCTION {format.url}
 { inlinelinks #1 =  url empty$  or
   doi empty$ not or
-  howpublished empty$ not or
    { "" }
    { hrefform #1 =
-       { % special case -- add HyperTeX specials
+       { % #1 means add HyperTeX, which we never do
          urlintro "\url{" url * "}" * url make.href.hypertex * }
        { urlintro "\url{" * url * "}" * }
      if$

Modified: trunk/Master/texmf-dist/doc/latex/tugboat/NEWS
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tugboat/NEWS	2024-10-27 20:10:54 UTC (rev 72675)
+++ trunk/Master/texmf-dist/doc/latex/tugboat/NEWS	2024-10-27 20:11:04 UTC (rev 72676)
@@ -1,11 +1,23 @@
-$Id: NEWS 560 2024-04-15 17:16:18Z karl $
+$Id: NEWS 608 2024-10-26 22:27:11Z karl $
 This file records noteworthy changes.  This file is public domain.
 
 -----------------
-2.32 (2023-04-15):
+2.33 (2024-10-26):
 ltugboat.cls:
-- don't print leading http://.
-- increase natural space, stretch, shrink after run-in heads; before,
+- use \hfil instead of \hss in toc, to avoid silently overfull entries.
+- make \WEB, \Xe, \cents, others more tag-friendly.
+- new abbreviation \HTTPS.
+
+tugboat.bst:
+- new entry type @webpage.
+- new editor field nojournalcomma.
+- howpublished not omitted when doi or url is present.
+
+-----------------
+2.32 (2024-04-15):
+ltugboat.cls:
+- don't print leading http://, like with https://.
+	- increase natural space, stretch, shrink after run-in heads; before,
   \frenchspacing was unintentionally in effect.
 - decrease \floatsep and \textfloatsep to go along with reduced
   \abovecaption skip; increase topnumber, bottomnumber, totalnumber,

Modified: trunk/Master/texmf-dist/doc/latex/tugboat/ltubguid.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tugboat/tugboat-code.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/tugboat/tugboat.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/tugboat/tugboat.dtx	2024-10-27 20:10:54 UTC (rev 72675)
+++ trunk/Master/texmf-dist/source/latex/tugboat/tugboat.dtx	2024-10-27 20:11:04 UTC (rev 72676)
@@ -1,5 +1,5 @@
 % \iffalse (this is a meta-comment (so they say))
-% $Id: tugboat.dtx 560 2024-04-15 17:16:18Z karl $
+% $Id: tugboat.dtx 608 2024-10-26 22:27:11Z karl $
 % tugboat.dtx - main source for LaTeX TUGboat classes.
 %
 % Copyright 1994-2024 TeX Users Group.
@@ -28,7 +28,7 @@
 %<ltugboatsty>\ProvidesPackage{ltugboat}
 %<ltugprocsty>\ProvidesPackage{ltugproc}
 %<ltugcomn>   \ProvidesPackage{ltugcomn}
-                   [2024-04-15 v2.32
+                   [2024-10-26 v2.33
 %<ltugboatcls>                       TUGboat journal class%
 %<ltugproccls>                       TUG conference proceedings class%
 %<ltugboatsty|ltugprocsty>           TUG compatibility package%
@@ -757,6 +757,7 @@
 \def\Hawaii{Hawai`i}
 \def\HTML{\acro{HTML}}
 \def\HTTP{\acro{HTTP}}
+\def\HTTPS{\acro{HTTPS}}
 \def\iOS{i\acro{OS}}
 \def\IDE{\acro{IDE}}
 \def\IEEE{\acro{IEEE}}
@@ -929,7 +930,7 @@
 \def\XeT{X\kern-.125em\lower.424ex\hbox{E}\kern-.1667emT\@}
 \def\XML{\acro{XML}}
 \def\XMP{\acro{XMP}}
-\def\WEB{\texttt{WEB}\@}
+\def\WEB{\texorpdfstring{\texttt{WEB}\@}{WEB}}
 \def\WEAVE{\texttt{WEAVE}\@}
 \def\WYSIWYG{\acro{WYSIWYG}}
 \def\YAML{\acro{YAML}}
@@ -958,11 +959,20 @@
 \def\tubhideheight#1{\setbox0=\hbox{#1}\ht0=0pt \dp0=0pt \box0 }
 \def\XekernbeforeE{-.125em}
 \def\XekernafterE{-.1667em}
-\DeclareRobustCommand{\Xe}{\leavevmode
+% From Max, mail of 13sep24:
+% hyperref is trying to expand \Xe to get a string for
+% the embedded PDF table of contents, but \Xe is unsafe in an
+% expansion-only context [even when defined with \DeclareRobustCommand,
+% for reasons unknown]. 
+% An easy way to fix this is to replace \DeclareRobustCommand with
+% \NewDocumentCommand, which defines the macro as ``\protected'' instead
+% as ``\protect''ed.
+\NewDocumentCommand\tub at Xe{}{\leavevmode
   \tubhideheight{\hbox{X%
     \setbox0=\hbox{\TeX}\setbox1=\hbox{E}%
     \ifdim \fontdimen1\font>0pt
-      % XeTeX logo needs tinkering when slanted/italic font.
+      % XeTeX logo needs tinkering when slanted/italic font,
+      % so make kerns changeable
       \def\XekernbeforeE{-.11em}%
       \def\XekernafterE{-.16em}%
       \dp1=-.17ex
@@ -969,8 +979,12 @@
     \fi
     \lower\dp0\hbox{\raise\dp1\hbox{\kern\XekernbeforeE\tubreflect{E}}}%
     \kern\XekernafterE}}}
-\def\XeTeX{\Xe\TeX}
-\def\XeLaTeX{\Xe{\kern.11em \LaTeX}}
+% [But then,] For hyperref to be able to see the \texorpdfstring, it
+% needs to be inside of a non-protected macro, but we still want the
+% graphics commands to be protected, so we need to make a wrapper command:
+\newcommand\Xe{\texorpdfstring{\tub at Xe}{Xe}}
+\def\XeTeX{\texorpdfstring{\Xe\TeX}{XeTeX}}
+\def\XeLaTeX{\texorpdfstring{\Xe{\kern.11em \LaTeX}}{XeLaTeX}}
 %
 \def\XHTML{\acro{XHTML}}
 \def\XSL{\acro{XSL}}
@@ -1265,8 +1279,13 @@
   \leavevmode\kern0.5em
   \raise\p@\vbox{\baselineskip6\p@\vskip7\p@\hbox{.}\hbox{.}\hbox{.}}
   }
+% \bull doesn't work with tagging; requires ActualText using, e.g.,
+% accsup, but the ActualText is ignored since it's just a rule.
+% (Lots of our other commands also are not properly tagged.)
+% https://github.com/latex3/tagging-project/pull/535
 \def\bull{\vrule \@height 1ex \@width .8ex \@depth -.2ex }
-\def\cents{{\rm\raise.2ex\rlap{\kern.05em$\scriptstyle/$}c}}
+\DeclareRobustCommand{\cents}{\textcent}
+\def\tubcentsold{{\rm\raise.2ex\rlap{\kern.05em$\scriptstyle/$}c}}
 \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$}}
@@ -1298,7 +1317,7 @@
 % But it feels like that is too intrusive a change, even though in
 % practice we always prefer tt slanted.
 \DeclareRobustCommand{\cs}[1]{\texorpdfstring
-  {{\tt \char`\\#1}}%
+  {{\tt \char`\\#1}\@}%
   {\textbackslash #1}%
 }
 %
@@ -1339,7 +1358,7 @@
 % \cs{tbhurl}\tubbraced{foo}  produces \texttt{http://foo}.
 \AtBeginDocument{%
 \ifx\hyper at normalise\undefined
-  \ifx\url\undefined      % make sure \url is defined
+  \ifx\url\undefined      % define our own simplistic non-hyperref \url 
     \def\url{\begingroup  % might as well catch common special chars
       \catcode`\#=12 \catcode`\$=12 \catcode`\%=12 \catcode`\^=12
       \catcode`\&=12 \catcode`\_=12 \catcode`\~=12
@@ -2118,16 +2137,16 @@
 % Both `types' of author fall through here to set up the author name
 % and to initialise author-related things.  \cs{EDITORno*} commands
 % allow the editor to record that there's good reason for an
-% \emph{address} or \emph{netaddress} not to be there (the
-% \emph{personalURL} and \emph{ORCID} are optional anyway).
+% \emph{address} or \emph{netaddress} not to be there, but nowadays, we
+% consider all address information optional.
 %    \begin{macrocode}
 \def\TB at author#1{%
   \expandafter\def\csname theauthor\number\authornumber\endcsname
       {\ignorespaces#1\unskip}%
-  \expandafter\def\csname theaddress\number\authornumber\endcsname
-    {\TBWarningNL{Address for #1\space missing}\@gobble}%
-  \expandafter\def\csname thenetaddress\number\authornumber\endcsname
-    {\TBWarningNL{Net address for #1\space missing}\@gobble}%
+%  \expandafter\def\csname theaddress\number\authornumber\endcsname
+%    {\TBWarningNL{Address for #1\space missing}\@gobble}%
+%  \expandafter\def\csname thenetaddress\number\authornumber\endcsname
+%    {\TBWarningNL{Net address for #1\space missing}\@gobble}%
   \expandafter\let\csname thePersonalURL\number\authornumber\endcsname
     \@gobble
   \expandafter\let\csname theORCID\number\authornumber\endcsname
@@ -2587,8 +2606,8 @@
     \ifdim \wd0 < 5\p@               % omit if author is null
     \else
 %    \end{macrocode}
-% Since we have \(\mathtt{\cs{BelowTitleSkip}} + \mathtt{4pt} =
-% \mathtt{\cs{baselineskip}}\), we skip by |4pt| here. However, an
+% Since we have \(\hbox{\cs{BelowTitleSkip}} + \mathtt{4pt} =
+% \hbox{\cs{baselineskip}}\), we skip by |4pt| here. However, an
 % all-text first column still comes out underfull, maybe because of the
 % top rule? Thus \cs{BelowTitleSkip} is given a little stretch and shrink.
 %    \begin{macrocode}
@@ -2816,7 +2835,10 @@
 %    \end{macrocode}
 %
 %    \begin{macrocode}
-% |#1| is both the section number and title; |#2| is the page number.
+% |#1| is both the section number and title, as in
+%   |{\numberline {1}Introduction}|.
+% |#2| is the page number.
+% 
 % Per Ulrike, the hook calls are for tagging, introduced with the
 % June 2023 \LaTeX.
 % qqq need to also do subsections like tb137carlisle to avoid hyphenation
@@ -2831,23 +2853,29 @@
     \hyphenpenalty=10000
     \TBtocsectionfont
     \leavevmode
-    \advance\leftskip\@tempdima
+    \advance\leftskip by \@tempdima % space between section number and text
     \hskip-\leftskip
-    \ifx\UseHookWithArguments\undefined\else
+    %
+    \ifx\UseHookWithArguments\undefined\else % hook before number and text
       \UseHookWithArguments{contentsline/text/before}{4}
         {\toclevel at part}{#1}{#2}{\@contentsline at destination}%
     \fi
+    %
     % don't worry if this cs is not defined, hence the \csname.
-    \csname contentsline at text@1 at format\endcsname{#1}% number and title
-    \ifx\UseHookWithArguments\undefined\else
+    % If it doesn't exist, we just typeset #1 as text.
+    \csname contentsline at text@1 at format\endcsname
+    {#1}% number and title
+    %
+    \ifx\UseHookWithArguments\undefined\else % hook after number and text
       \UseHookWithArguments{contentsline/text/after}{4}
         {\toclevel at part}{#1}{#2}{\@contentsline at destination}% 
     \fi
     \nobreak
+    \ % ensure there is at least a word space between text and page number
     \hfil
     \nobreak
     % page number
-    \hb at xt@\@pnumwidth{\hss
+    \hb at xt@\@pnumwidth{\hfil
       \ifx\UseHookWithArguments\undefined\else
         \UseHookWithArguments{contentsline/page/before}{4}
           {\toclevel at part}{#1}{#2}{\@contentsline at destination}%
@@ -3781,8 +3809,8 @@
   \else \global\@firstcolumntrue
     \global\brokenpenalty100
     \setbox\@outputbox\vbox{\hb at xt@\textwidth{\hb at xt@\columnwidth
-      {\box\@leftcolumn \hss}\hfil \vrule \@width\columnseprule\hfil
-       \hb at xt@\columnwidth{\box\@outputbox \hss}}}\@combinedblfloats
+      {\box\@leftcolumn \hfil}\hfil \vrule \@width\columnseprule\hfil
+       \hb at xt@\columnwidth{\box\@outputbox \hfil}}}\@combinedblfloats
        \@outputpage \begingroup \@dblfloatplacement \@startdblcolumn
        \@whilesw\if at fcolmade \fi{\@outputpage\@startdblcolumn}\endgroup
     \fi}

Modified: trunk/Master/texmf-dist/tex/latex/tugboat/ltugboat.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tugboat/ltugboat.cls	2024-10-27 20:10:54 UTC (rev 72675)
+++ trunk/Master/texmf-dist/tex/latex/tugboat/ltugboat.cls	2024-10-27 20:11:04 UTC (rev 72676)
@@ -32,7 +32,7 @@
 %% 
 \NeedsTeXFormat{LaTeX2e}[1994/12/01]
 \ProvidesClass  {ltugboat}
-                   [2024-04-15 v2.32
+                   [2024-10-26 v2.33
                        TUGboat journal class%
                    ]
 \newif\ifTBunicodeengine
@@ -267,6 +267,7 @@
 \def\Hawaii{Hawai`i}
 \def\HTML{\acro{HTML}}
 \def\HTTP{\acro{HTTP}}
+\def\HTTPS{\acro{HTTPS}}
 \def\iOS{i\acro{OS}}
 \def\IDE{\acro{IDE}}
 \def\IEEE{\acro{IEEE}}
@@ -404,7 +405,7 @@
 \def\XeT{X\kern-.125em\lower.424ex\hbox{E}\kern-.1667emT\@}
 \def\XML{\acro{XML}}
 \def\XMP{\acro{XMP}}
-\def\WEB{\texttt{WEB}\@}
+\def\WEB{\texorpdfstring{\texttt{WEB}\@}{WEB}}
 \def\WEAVE{\texttt{WEAVE}\@}
 \def\WYSIWYG{\acro{WYSIWYG}}
 \def\YAML{\acro{YAML}}
@@ -423,11 +424,12 @@
 \def\tubhideheight#1{\setbox0=\hbox{#1}\ht0=0pt \dp0=0pt \box0 }
 \def\XekernbeforeE{-.125em}
 \def\XekernafterE{-.1667em}
-\DeclareRobustCommand{\Xe}{\leavevmode
+\NewDocumentCommand\tub at Xe{}{\leavevmode
   \tubhideheight{\hbox{X%
     \setbox0=\hbox{\TeX}\setbox1=\hbox{E}%
     \ifdim \fontdimen1\font>0pt
-      % XeTeX logo needs tinkering when slanted/italic font.
+      % XeTeX logo needs tinkering when slanted/italic font,
+      % so make kerns changeable
       \def\XekernbeforeE{-.11em}%
       \def\XekernafterE{-.16em}%
       \dp1=-.17ex
@@ -434,8 +436,9 @@
     \fi
     \lower\dp0\hbox{\raise\dp1\hbox{\kern\XekernbeforeE\tubreflect{E}}}%
     \kern\XekernafterE}}}
-\def\XeTeX{\Xe\TeX}
-\def\XeLaTeX{\Xe{\kern.11em \LaTeX}}
+\newcommand\Xe{\texorpdfstring{\tub at Xe}{Xe}}
+\def\XeTeX{\texorpdfstring{\Xe\TeX}{XeTeX}}
+\def\XeLaTeX{\texorpdfstring{\Xe{\kern.11em \LaTeX}}{XeLaTeX}}
 \def\XHTML{\acro{XHTML}}
 \def\XSL{\acro{XSL}}
 \def\XSLFO{\acro{XSL}\raise.08ex\hbox{-}\acro{FO}}
@@ -540,7 +543,8 @@
   \raise\p@\vbox{\baselineskip6\p@\vskip7\p@\hbox{.}\hbox{.}\hbox{.}}
   }
 \def\bull{\vrule \@height 1ex \@width .8ex \@depth -.2ex }
-\def\cents{{\rm\raise.2ex\rlap{\kern.05em$\scriptstyle/$}c}}
+\DeclareRobustCommand{\cents}{\textcent}
+\def\tubcentsold{{\rm\raise.2ex\rlap{\kern.05em$\scriptstyle/$}c}}
 \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$}}
@@ -559,7 +563,7 @@
   \ensuremath{\rangle}%
 }
 \DeclareRobustCommand{\cs}[1]{\texorpdfstring
-  {{\tt \char`\\#1}}%
+  {{\tt \char`\\#1}\@}%
   {\textbackslash #1}%
 }
 \DeclareRobustCommand{\tubbraced}[1]{\texorpdfstring
@@ -577,7 +581,7 @@
 \DeclareRobustCommand{\thinskip}{\hskip 0.16667em\relax}
 \AtBeginDocument{%
 \ifx\hyper at normalise\undefined
-  \ifx\url\undefined      % make sure \url is defined
+  \ifx\url\undefined      % define our own simplistic non-hyperref \url
     \def\url{\begingroup  % might as well catch common special chars
       \catcode`\#=12 \catcode`\$=12 \catcode`\%=12 \catcode`\^=12
       \catcode`\&=12 \catcode`\_=12 \catcode`\~=12
@@ -989,10 +993,6 @@
 \def\TB at author#1{%
   \expandafter\def\csname theauthor\number\authornumber\endcsname
       {\ignorespaces#1\unskip}%
-  \expandafter\def\csname theaddress\number\authornumber\endcsname
-    {\TBWarningNL{Address for #1\space missing}\@gobble}%
-  \expandafter\def\csname thenetaddress\number\authornumber\endcsname
-    {\TBWarningNL{Net address for #1\space missing}\@gobble}%
   \expandafter\let\csname thePersonalURL\number\authornumber\endcsname
     \@gobble
   \expandafter\let\csname theORCID\number\authornumber\endcsname
@@ -1333,23 +1333,29 @@
     \hyphenpenalty=10000
     \TBtocsectionfont
     \leavevmode
-    \advance\leftskip\@tempdima
+    \advance\leftskip by \@tempdima % space between section number and text
     \hskip-\leftskip
-    \ifx\UseHookWithArguments\undefined\else
+    %
+    \ifx\UseHookWithArguments\undefined\else % hook before number and text
       \UseHookWithArguments{contentsline/text/before}{4}
         {\toclevel at part}{#1}{#2}{\@contentsline at destination}%
     \fi
+    %
     % don't worry if this cs is not defined, hence the \csname.
-    \csname contentsline at text@1 at format\endcsname{#1}% number and title
-    \ifx\UseHookWithArguments\undefined\else
+    % If it doesn't exist, we just typeset #1 as text.
+    \csname contentsline at text@1 at format\endcsname
+    {#1}% number and title
+    %
+    \ifx\UseHookWithArguments\undefined\else % hook after number and text
       \UseHookWithArguments{contentsline/text/after}{4}
         {\toclevel at part}{#1}{#2}{\@contentsline at destination}%
     \fi
     \nobreak
+    \ % ensure there is at least a word space between text and page number
     \hfil
     \nobreak
     % page number
-    \hb at xt@\@pnumwidth{\hss
+    \hb at xt@\@pnumwidth{\hfil
       \ifx\UseHookWithArguments\undefined\else
         \UseHookWithArguments{contentsline/page/before}{4}
           {\toclevel at part}{#1}{#2}{\@contentsline at destination}%
@@ -1802,8 +1808,8 @@
   \else \global\@firstcolumntrue
     \global\brokenpenalty100
     \setbox\@outputbox\vbox{\hb at xt@\textwidth{\hb at xt@\columnwidth
-      {\box\@leftcolumn \hss}\hfil \vrule \@width\columnseprule\hfil
-       \hb at xt@\columnwidth{\box\@outputbox \hss}}}\@combinedblfloats
+      {\box\@leftcolumn \hfil}\hfil \vrule \@width\columnseprule\hfil
+       \hb at xt@\columnwidth{\box\@outputbox \hfil}}}\@combinedblfloats
        \@outputpage \begingroup \@dblfloatplacement \@startdblcolumn
        \@whilesw\if at fcolmade \fi{\@outputpage\@startdblcolumn}\endgroup
     \fi}

Modified: trunk/Master/texmf-dist/tex/latex/tugboat/ltugboat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tugboat/ltugboat.sty	2024-10-27 20:10:54 UTC (rev 72675)
+++ trunk/Master/texmf-dist/tex/latex/tugboat/ltugboat.sty	2024-10-27 20:11:04 UTC (rev 72676)
@@ -31,7 +31,7 @@
 %% extension .ins) which are part of the distribution.
 %% 
 \ProvidesPackage{ltugboat}
-                   [2024-04-15 v2.32
+                   [2024-10-26 v2.33
            TUG compatibility package%
                    ]
 \@obsoletefile{ltugboat.cls}{ltugboat.sty}

Modified: trunk/Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty	2024-10-27 20:10:54 UTC (rev 72675)
+++ trunk/Master/texmf-dist/tex/latex/tugboat/ltugcomn.sty	2024-10-27 20:11:04 UTC (rev 72676)
@@ -32,7 +32,7 @@
 %% 
 \NeedsTeXFormat{LaTeX2e}[1994/12/01]
    \ProvidesPackage{ltugcomn}
-                   [2024-04-15 v2.32
+                   [2024-10-26 v2.33
                           TUGboat `common macros' package%
                    ]
 \newif\ifTBunicodeengine
@@ -170,6 +170,7 @@
 \def\Hawaii{Hawai`i}
 \def\HTML{\acro{HTML}}
 \def\HTTP{\acro{HTTP}}
+\def\HTTPS{\acro{HTTPS}}
 \def\iOS{i\acro{OS}}
 \def\IDE{\acro{IDE}}
 \def\IEEE{\acro{IEEE}}
@@ -307,7 +308,7 @@
 \def\XeT{X\kern-.125em\lower.424ex\hbox{E}\kern-.1667emT\@}
 \def\XML{\acro{XML}}
 \def\XMP{\acro{XMP}}
-\def\WEB{\texttt{WEB}\@}
+\def\WEB{\texorpdfstring{\texttt{WEB}\@}{WEB}}
 \def\WEAVE{\texttt{WEAVE}\@}
 \def\WYSIWYG{\acro{WYSIWYG}}
 \def\YAML{\acro{YAML}}
@@ -326,11 +327,12 @@
 \def\tubhideheight#1{\setbox0=\hbox{#1}\ht0=0pt \dp0=0pt \box0 }
 \def\XekernbeforeE{-.125em}
 \def\XekernafterE{-.1667em}
-\DeclareRobustCommand{\Xe}{\leavevmode
+\NewDocumentCommand\tub at Xe{}{\leavevmode
   \tubhideheight{\hbox{X%
     \setbox0=\hbox{\TeX}\setbox1=\hbox{E}%
     \ifdim \fontdimen1\font>0pt
-      % XeTeX logo needs tinkering when slanted/italic font.
+      % XeTeX logo needs tinkering when slanted/italic font,
+      % so make kerns changeable
       \def\XekernbeforeE{-.11em}%
       \def\XekernafterE{-.16em}%
       \dp1=-.17ex
@@ -337,8 +339,9 @@
     \fi
     \lower\dp0\hbox{\raise\dp1\hbox{\kern\XekernbeforeE\tubreflect{E}}}%
     \kern\XekernafterE}}}
-\def\XeTeX{\Xe\TeX}
-\def\XeLaTeX{\Xe{\kern.11em \LaTeX}}
+\newcommand\Xe{\texorpdfstring{\tub at Xe}{Xe}}
+\def\XeTeX{\texorpdfstring{\Xe\TeX}{XeTeX}}
+\def\XeLaTeX{\texorpdfstring{\Xe{\kern.11em \LaTeX}}{XeLaTeX}}
 \def\XHTML{\acro{XHTML}}
 \def\XSL{\acro{XSL}}
 \def\XSLFO{\acro{XSL}\raise.08ex\hbox{-}\acro{FO}}
@@ -443,7 +446,8 @@
   \raise\p@\vbox{\baselineskip6\p@\vskip7\p@\hbox{.}\hbox{.}\hbox{.}}
   }
 \def\bull{\vrule \@height 1ex \@width .8ex \@depth -.2ex }
-\def\cents{{\rm\raise.2ex\rlap{\kern.05em$\scriptstyle/$}c}}
+\DeclareRobustCommand{\cents}{\textcent}
+\def\tubcentsold{{\rm\raise.2ex\rlap{\kern.05em$\scriptstyle/$}c}}
 \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$}}
@@ -462,7 +466,7 @@
   \ensuremath{\rangle}%
 }
 \DeclareRobustCommand{\cs}[1]{\texorpdfstring
-  {{\tt \char`\\#1}}%
+  {{\tt \char`\\#1}\@}%
   {\textbackslash #1}%
 }
 \DeclareRobustCommand{\tubbraced}[1]{\texorpdfstring
@@ -480,7 +484,7 @@
 \DeclareRobustCommand{\thinskip}{\hskip 0.16667em\relax}
 \AtBeginDocument{%
 \ifx\hyper at normalise\undefined
-  \ifx\url\undefined      % make sure \url is defined
+  \ifx\url\undefined      % define our own simplistic non-hyperref \url
     \def\url{\begingroup  % might as well catch common special chars
       \catcode`\#=12 \catcode`\$=12 \catcode`\%=12 \catcode`\^=12
       \catcode`\&=12 \catcode`\_=12 \catcode`\~=12

Modified: trunk/Master/texmf-dist/tex/latex/tugboat/ltugproc.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tugboat/ltugproc.cls	2024-10-27 20:10:54 UTC (rev 72675)
+++ trunk/Master/texmf-dist/tex/latex/tugboat/ltugproc.cls	2024-10-27 20:11:04 UTC (rev 72676)
@@ -32,7 +32,7 @@
 %% 
 \NeedsTeXFormat{LaTeX2e}[1994/12/01]
 \ProvidesClass  {ltugproc}
-                   [2024-04-15 v2.32
+                   [2024-10-26 v2.33
                        TUG conference proceedings class%
                    ]
 \def\@tugclass{ltugproc}

Modified: trunk/Master/texmf-dist/tex/latex/tugboat/ltugproc.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tugboat/ltugproc.sty	2024-10-27 20:10:54 UTC (rev 72675)
+++ trunk/Master/texmf-dist/tex/latex/tugboat/ltugproc.sty	2024-10-27 20:11:04 UTC (rev 72676)
@@ -31,7 +31,7 @@
 %% extension .ins) which are part of the distribution.
 %% 
 \ProvidesPackage{ltugproc}
-                   [2024-04-15 v2.32
+                   [2024-10-26 v2.33
            TUG compatibility package%
                    ]
 \@obsoletefile{ltugproc.cls}{ltugproc.sty}



More information about the tex-live-commits mailing list.