[latex3-commits] [git/LaTeX3-latex3-latex2e] develop: Gh920 (#952) (e1b7641c)
GitHub
noreply at github.com
Thu Nov 10 12:26:34 CET 2022
Repository : https://github.com/latex3/latex2e
On branch : develop
Link : https://github.com/latex3/latex2e/commit/e1b7641c3de895f94dcf0086a223b944c8a08f47
>---------------------------------------------------------------
commit e1b7641c3de895f94dcf0086a223b944c8a08f47
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date: Thu Nov 10 12:26:34 2022 +0100
Gh920 (#952)
* start at adding hook for #920
* drop stray lvt file
* call hook "shipout"
* ltnews entry
* Minor fixes
* Fix test files
Co-authored-by: PhelypeOleinik <phelype.oleinik at latex-project.org>
>---------------------------------------------------------------
e1b7641c3de895f94dcf0086a223b944c8a08f47
base/changes.txt | 6 +++
base/doc/ltnews37.tex | 24 ++++++++++
base/ltshipout.dtx | 51 ++++++++++++++++-----
base/testfiles-lthooks/ltcmdhooks-001.tlg | 1 +
base/testfiles-lthooks/lthooks-000.tlg | 1 +
base/testfiles-lthooks/lthooks-001.tlg | 3 ++
base/testfiles-lthooks/lthooks-002.tlg | 3 ++
base/testfiles-lthooks/lthooks-003.tlg | 2 +
base/testfiles-lthooks/lthooks-004.tlg | 2 +
base/testfiles-lthooks/lthooks-005.tlg | 2 +
base/testfiles-lthooks/lthooks-006.tlg | 2 +
base/testfiles-lthooks/lthooks-007.tlg | 3 ++
base/testfiles-lthooks/lthooks-008.tlg | 2 +
base/testfiles-lthooks/lthooks-009.tlg | 1 +
base/testfiles-lthooks/lthooks-011.tlg | 4 ++
base/testfiles-lthooks/lthooks-013.tlg | 1 +
base/testfiles-lthooks/lthooks-021.tlg | 1 +
base/testfiles-lthooks/lthooks-legacy.tlg | 1 +
base/testfiles-lthooks2/lthooks2-002.tlg | 1 +
base/testfiles-lthooks2/lthooks2-005.tlg | 2 +
base/testfiles-search/github-0920.luatex.tlg | 66 ++++++++++++++++++++++++++++
base/testfiles-search/github-0920.lvt | 40 +++++++++++++++++
base/testfiles-search/github-0920.tlg | 61 +++++++++++++++++++++++++
base/testfiles-search/github-0920.xetex.tlg | 60 +++++++++++++++++++++++++
24 files changed, 328 insertions(+), 12 deletions(-)
diff --git a/base/changes.txt b/base/changes.txt
index 1a49239f..282ab939 100644
--- a/base/changes.txt
+++ b/base/changes.txt
@@ -11,6 +11,12 @@ All changes above are only part of the development branch for the next release.
================================================================================
+2022-11-08 Frank Mittelbach <Frank.Mittelbach at latex-project.org>
+
+ * ltshipout.dtx:
+ Add a shipout hook to be executed just before we
+ actually do the shipout (gh/920)
+
2022-11-07 Frank Mittelbach <Frank.Mittelbach at latex-project.org>
* ltvers.dtx (section{Version Identification}):
diff --git a/base/doc/ltnews37.tex b/base/doc/ltnews37.tex
index 3c686dc4..827a8f2e 100644
--- a/base/doc/ltnews37.tex
+++ b/base/doc/ltnews37.tex
@@ -159,6 +159,26 @@
\githubissue{943}
+\subsection{A further hook for shipping out pages}
+
+Since October 2020 the shipout process offers a number of hooks to
+adjust what is happening before, during, and after the
+\cs{shipout}. For example, with the \hook{shipout/before} hook, packages
+can reset code they have altered (e.g., \cs{catcode}s during
+verbatim-like processing) and with \hook{shipout/background} and
+\hook{shipout/foreground} material can be added to the pages.
+Details are given in \cite{37:ltshipout-doc}. However, what was
+missing was a hook that allows a package writer to manipulate the
+completed page (with foreground and background attached) just before
+the actual shipout happens.
+
+For this we now provide the additional hook \hook{shipout}. One
+use case (sometimes needed in print production) is to mirror the
+whole page via \cs{reflectbox} including all the extra data that may
+have been added into the fore- or background.
+%
+\githubissue{920}
+
\subsection{Displaying release information in the \texttt{.log}}
@@ -214,6 +234,10 @@ eventually be moved into \pkg{unicode-math}.
\fontsize{9.3}{11.3}\selectfont
+\bibitem{37:ltshipout-doc} Frank Mittelbach, \LaTeX{}~Project~Team:
+ \emph{The \texttt{\upshape ltshipout} documentation}.\\
+ Run \texttt{texdoc} \texttt{ltshipout-doc} to view.
+
%\bibitem{37:blueprint} Frank Mittelbach and Chris Rowley:
% \emph{\LaTeX{} Tagged PDF \Dash A blueprint for a large project}.\\
% \url{https://latex-project.org/publications/indexbyyear/2020/}
diff --git a/base/ltshipout.dtx b/base/ltshipout.dtx
index ae29c1ac..7aa07f75 100644
--- a/base/ltshipout.dtx
+++ b/base/ltshipout.dtx
@@ -32,8 +32,8 @@
%%% From File: ltshipout.dtx
%
% \begin{macrocode}
-\providecommand\ltshipoutversion{v1.0m}
-\providecommand\ltshipoutdate{2022/08/26}
+\providecommand\ltshipoutversion{v1.0n}
+\providecommand\ltshipoutdate{2022/11/08}
% \end{macrocode}
%
%<*driver>
@@ -75,7 +75,7 @@
% \providecommand\pkg[1]{\texttt{#1}}
%
%
-% \title{The \texttt{ltshipout} package\thanks{This package has version
+% \title{The \texttt{ltshipout} documentation\thanks{This file has version
% \ltshipoutversion\ dated \ltshipoutdate, \copyright\ \LaTeX\
% Project.}}
%
@@ -241,6 +241,18 @@
% But being placed after the main box content it will be typeset
% later and thus overprints it (i.e., is in the foreground).
%
+% \item[\hook{shipout}]
+% This hook is executed after foreground and/or background
+% material has been added, i.e., just in front of the actual
+% shipout operation. Its purpose is to allow manipulation of the
+% finalized box (stored in \cs{ShipoutBox}) with the extra
+% material also in place (which is not yet the case in
+% \hook{shipout/before}).
+%
+% It cannot be used to cancel the shipout operation via
+% \cs{DiscardShipoutBox} (that has
+% to happen in \hook{shipout/before}, if desired!
+%
%
% \item[\hook{shipout/firstpage}]
%
@@ -296,7 +308,7 @@
% actual shipout. It is even run if there was a
% \cs{DiscardShipoutBox} request in the document.
%
-% The other hooks (except \hook{shipout/after}) are added inside
+% The other hooks (except \hook{shipout} and \hook{shipout/after}) are added inside
% hboxes to the box being shipped out in the following order:
% \begin{center}
% \begin{tabular}{ll}
@@ -307,9 +319,13 @@
% \hook{shipout/lastpage} & only on the last page \\
% \end{tabular}
% \end{center}
-% If any of the hooks has no code then that particular no box is
+% If any of the hooks has no code then the corresponding box is
% added at that point.
%
+% Once the (page) box has got the above extra content it can
+% again be manipulated using the \hook{shipout} hook and then
+% is shipped out for real.
+%
% Once the (page) box has been shipped out the \hook{shipout/after}
% hook is called (while you are still inside the output routine). It
% is not called if the shipout box was discarded.
@@ -381,13 +397,16 @@
%
% \fmi{Once we have a new mark mechanism available we can improve
% on that and make sure that the declaration applies to the page
-% that contains it.}
+% that contains it --- not done (yet)}
+%
+% \cs{DiscardShipoutBox} cannot be used in any of the \hook{shipout/...}
+% hooks other than \hook{shipout/before}.
% \end{function}
%
% In the \pkg{atbegshi} package there are a number of additional
% commands for use inside the \hook{shipout/before} hook. They
% should normally not be needed any more as one can instead simply
-% add code to the hooks \hook{shipout/before},
+% add code to the hooks \hook{shipout/before}, \hook{shipout},
% \hook{shipout/background} or
% \hook{shipout/foreground}.\footnote{If that assumption turns out to
% be wrong it would be trivial to change them to public functions
@@ -401,7 +420,9 @@
%
% \begin{variable}{pre_shipout_filter}
% Under Lua\TeX{} the \texttt{pre\_shipout\_filter} Lua callback is
-% provided which gets called immediately before the shipout primitive gets invoked.
+% provided which gets called directly after the
+% \hook{shipout} hook, immediately before the shipout
+% primitive gets invoked.
% The signature is
% \begin{verbatim}
% function(<node> head)
@@ -1014,15 +1035,20 @@
\_@@_add_foreground_box:n
{ \UseHook{shipout/lastpage}
\@kernel at after@shipout at lastpage }
- \bool_gset_true:N \g_@@_lastpage_handled_bool
% \end{macrocode}
% We record that we have handled the \hook{shipout/lastpage} hook
% but only if we really did.
% \changes{v1.0m}{2022/05/08}{Handle case where shipout/lastpage is
% run too early (gh/813)}
% \begin{macrocode}
+ \bool_gset_true:N \g_@@_lastpage_handled_bool
}
}
+% \end{macrocode}
+%
+% \changes{v1.0n}{2022/11/08}{Add shipout hook (gh/920)}
+% \begin{macrocode}
+ \hook_use:n {shipout}
\@@_finalize_box:
% \end{macrocode}
% Finally we run the actual \TeX{} primitive for shipout. As that will
@@ -1116,13 +1142,14 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{shipout/before,shipout/after,
+% \begin{macro}{shipout/before,shipout,shipout/after,
% shipout/foreground,shipout/background,
-% shipout/firstpage,
-% shipout/lastpage}
+% shipout/firstpage,shipout/lastpage}
% Declaring all hooks for the shipout code.
+% \changes{v1.0n}{2022/11/08}{Add shipout hook (gh/920)}
% \begin{macrocode}
\hook_new:n{shipout/before}
+\hook_new:n{shipout}
\hook_new:n{shipout/after}
\hook_new:n{shipout/foreground}
\hook_new:n{shipout/background}
diff --git a/base/testfiles-lthooks/ltcmdhooks-001.tlg b/base/testfiles-lthooks/ltcmdhooks-001.tlg
index af30b303..f69eef81 100644
--- a/base/testfiles-lthooks/ltcmdhooks-001.tlg
+++ b/base/testfiles-lthooks/ltcmdhooks-001.tlg
@@ -109,6 +109,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-000.tlg b/base/testfiles-lthooks/lthooks-000.tlg
index cdb41a24..cd010532 100644
--- a/base/testfiles-lthooks/lthooks-000.tlg
+++ b/base/testfiles-lthooks/lthooks-000.tlg
@@ -49,6 +49,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-001.tlg b/base/testfiles-lthooks/lthooks-001.tlg
index b39a905e..13090a78 100644
--- a/base/testfiles-lthooks/lthooks-001.tlg
+++ b/base/testfiles-lthooks/lthooks-001.tlg
@@ -55,6 +55,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
@@ -198,6 +199,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
> {file/before}
> {file/after}
> {shipout/before}
+> {shipout}
> {shipout/after}
> {shipout/foreground}
> {shipout/background}
@@ -266,6 +268,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-002.tlg b/base/testfiles-lthooks/lthooks-002.tlg
index b3012ce1..8d87e1e1 100644
--- a/base/testfiles-lthooks/lthooks-002.tlg
+++ b/base/testfiles-lthooks/lthooks-002.tlg
@@ -55,6 +55,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
@@ -200,6 +201,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
> {file/before}
> {file/after}
> {shipout/before}
+> {shipout}
> {shipout/after}
> {shipout/foreground}
> {shipout/background}
@@ -268,6 +270,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-003.tlg b/base/testfiles-lthooks/lthooks-003.tlg
index ba98957b..ce888b43 100644
--- a/base/testfiles-lthooks/lthooks-003.tlg
+++ b/base/testfiles-lthooks/lthooks-003.tlg
@@ -55,6 +55,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
> {file/before}
> {file/after}
> {shipout/before}
+> {shipout}
> {shipout/after}
> {shipout/foreground}
> {shipout/background}
@@ -134,6 +135,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-004.tlg b/base/testfiles-lthooks/lthooks-004.tlg
index 93d6c664..0f01787d 100644
--- a/base/testfiles-lthooks/lthooks-004.tlg
+++ b/base/testfiles-lthooks/lthooks-004.tlg
@@ -45,6 +45,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
> {file/before}
> {file/after}
> {shipout/before}
+> {shipout}
> {shipout/after}
> {shipout/foreground}
> {shipout/background}
@@ -118,6 +119,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-005.tlg b/base/testfiles-lthooks/lthooks-005.tlg
index 0c2d890d..9a186d92 100644
--- a/base/testfiles-lthooks/lthooks-005.tlg
+++ b/base/testfiles-lthooks/lthooks-005.tlg
@@ -62,6 +62,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
> {file/before}
> {file/after}
> {shipout/before}
+> {shipout}
> {shipout/after}
> {shipout/foreground}
> {shipout/background}
@@ -141,6 +142,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-006.tlg b/base/testfiles-lthooks/lthooks-006.tlg
index b401dc65..8cc27db4 100644
--- a/base/testfiles-lthooks/lthooks-006.tlg
+++ b/base/testfiles-lthooks/lthooks-006.tlg
@@ -43,6 +43,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
> {file/before}
> {file/after}
> {shipout/before}
+> {shipout}
> {shipout/after}
> {shipout/foreground}
> {shipout/background}
@@ -114,6 +115,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-007.tlg b/base/testfiles-lthooks/lthooks-007.tlg
index 0958de0d..4c06114e 100644
--- a/base/testfiles-lthooks/lthooks-007.tlg
+++ b/base/testfiles-lthooks/lthooks-007.tlg
@@ -43,6 +43,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
> {file/before}
> {file/after}
> {shipout/before}
+> {shipout}
> {shipout/after}
> {shipout/foreground}
> {shipout/background}
@@ -115,6 +116,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
@@ -271,6 +273,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-008.tlg b/base/testfiles-lthooks/lthooks-008.tlg
index 82f0842f..bd1fe551 100644
--- a/base/testfiles-lthooks/lthooks-008.tlg
+++ b/base/testfiles-lthooks/lthooks-008.tlg
@@ -45,6 +45,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
> {file/before}
> {file/after}
> {shipout/before}
+> {shipout}
> {shipout/after}
> {shipout/foreground}
> {shipout/background}
@@ -122,6 +123,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-009.tlg b/base/testfiles-lthooks/lthooks-009.tlg
index 86d0691c..b0b0d668 100644
--- a/base/testfiles-lthooks/lthooks-009.tlg
+++ b/base/testfiles-lthooks/lthooks-009.tlg
@@ -55,6 +55,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-011.tlg b/base/testfiles-lthooks/lthooks-011.tlg
index 3bebed02..13186602 100644
--- a/base/testfiles-lthooks/lthooks-011.tlg
+++ b/base/testfiles-lthooks/lthooks-011.tlg
@@ -50,6 +50,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
@@ -204,6 +205,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
@@ -360,6 +362,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
@@ -518,6 +521,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-013.tlg b/base/testfiles-lthooks/lthooks-013.tlg
index 6167d20c..cf1b5cb4 100644
--- a/base/testfiles-lthooks/lthooks-013.tlg
+++ b/base/testfiles-lthooks/lthooks-013.tlg
@@ -105,6 +105,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-021.tlg b/base/testfiles-lthooks/lthooks-021.tlg
index 1ff2106b..dcb39abe 100644
--- a/base/testfiles-lthooks/lthooks-021.tlg
+++ b/base/testfiles-lthooks/lthooks-021.tlg
@@ -49,6 +49,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks/lthooks-legacy.tlg b/base/testfiles-lthooks/lthooks-legacy.tlg
index 1ade9750..332f5aca 100644
--- a/base/testfiles-lthooks/lthooks-legacy.tlg
+++ b/base/testfiles-lthooks/lthooks-legacy.tlg
@@ -74,6 +74,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks2/lthooks2-002.tlg b/base/testfiles-lthooks2/lthooks2-002.tlg
index 024b3813..1beec6b2 100644
--- a/base/testfiles-lthooks2/lthooks2-002.tlg
+++ b/base/testfiles-lthooks2/lthooks2-002.tlg
@@ -63,6 +63,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-lthooks2/lthooks2-005.tlg b/base/testfiles-lthooks2/lthooks2-005.tlg
index 2e8b4b84..3a7fd5d7 100644
--- a/base/testfiles-lthooks2/lthooks2-005.tlg
+++ b/base/testfiles-lthooks2/lthooks2-005.tlg
@@ -50,6 +50,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
@@ -192,6 +193,7 @@ Update code for hook 'class/after' on input line ...:
Update code for hook 'file/before' on input line ...:
Update code for hook 'file/after' on input line ...:
Update code for hook 'shipout/before' on input line ...:
+Update code for hook 'shipout' on input line ...:
Update code for hook 'shipout/after' on input line ...:
Update code for hook 'shipout/foreground' on input line ...:
Update code for hook 'shipout/background' on input line ...:
diff --git a/base/testfiles-search/github-0920.luatex.tlg b/base/testfiles-search/github-0920.luatex.tlg
new file mode 100644
index 00000000..68f4ce86
--- /dev/null
+++ b/base/testfiles-search/github-0920.luatex.tlg
@@ -0,0 +1,66 @@
+This is a generated file for the l3build validation system.
+Don't change this file in any respect.
+Completed box being shipped out [1]
+\vbox(682.0+0.0)x525.23788, direction TLT
+.\hbox(682.0+0.0)x597.50787, shifted -72.26999, direction TLT
+..\hbox(682.0+0.0)x597.50787, direction TLT
+...\kern597.50787
+...\hbox(682.0+0.0)x0.0, direction TLT
+....\special{ps: currentpoint currentpoint translate -1 1 scale neg exch neg exch translate}
+....\hbox(682.0+0.0)x0.0, glue set - 597.50787fil, direction TLT
+.....\hbox(682.0+0.0)x597.50787, direction TLT
+......\hbox(682.0+0.0)x597.50787, glue set 127.23788fil, direction TLT
+.......\vbox(682.0+0.0)x470.26999, direction TLT
+........\vbox(682.0+0.0)x398.0, shifted 72.26999, direction TLT
+.........\hbox(0.0+0.0)x0.0, direction TLT
+.........\hbox(0.0+0.0)x0.0, direction TLT
+..........\kern0.0
+..........\vbox(0.0+0.0)x0.0, direction TLT
+...........\kern0.0
+...........\hbox(0.0+0.0)x0.0, direction TLT
+............\hbox(16.99782+0.0)x0.0, glue set - 117.24966fil, shifted 100.0, direction TLT
+.............\kern100.0
+.............\OT1/cmr/m/n/24.88 X
+.............\glue 0.0 plus 1.0fil minus 1.0fil
+............\glue 0.0 plus 1.0fil minus 1.0fil
+...........\glue 0.0 plus 1.0fil minus 1.0fil
+.........\glue 17.0
+.........\vbox(665.0+0.0)x345.0, shifted 53.0, direction TLT
+..........\vbox(12.0+0.0)x345.0, glue set 12.0fil, direction TLT
+...........\glue 0.0 plus 1.0fil
+...........\hbox(0.0+0.0)x345.0, direction TLT
+............\hbox(0.0+0.0)x345.0, direction TLT
+..........\glue 25.0
+..........\glue(\lineskip) 0.0
+..........\vbox(598.0+0.0)x345.0, glue set 587.9372fil, direction TLT
+...........\write-{}
+...........\glue(\topskip) 3.16669
+...........\hbox(6.83331+0.0)x345.0, glue set 323.1944fil, direction TLT
+............\localpar
+.............\localinterlinepenalty=0
+.............\localbrokenpenalty=0
+.............\localleftbox=null
+.............\localrightbox=null
+............\hbox(0.0+0.0)x0.0, direction TLT
+............\OT1/cmr/m/n/10 A
+............\OT1/cmr/m/n/10 B
+............\OT1/cmr/m/n/10 C
+............\penalty 10000
+............\glue(\parfillskip) 0.0 plus 1.0fil
+............\glue(\rightskip) 0.0
+...........\glue 0.0 plus 1.0fil
+...........\glue 0.0
+...........\glue 0.0 plus 0.0001fil
+..........\glue(\baselineskip) 23.55556
+..........\hbox(6.44444+0.0)x345.0, direction TLT
+...........\hbox(6.44444+0.0)x345.0, glue set 170.0fil, direction TLT
+............\glue 0.0 plus 1.0fil
+............\OT1/cmr/m/n/10 1
+............\glue 0.0 plus 1.0fil
+.........\kern0.0
+.........\kern0.0
+.......\glue 0.0 plus 1.0fil minus 1.0fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+....\special{ps: currentpoint currentpoint translate 1 -1 div 1 1 div scale neg exch neg exch translate}
+...\glue 0.0 plus 1.0fil minus 1.0fil
+(github-0920.aux)
diff --git a/base/testfiles-search/github-0920.lvt b/base/testfiles-search/github-0920.lvt
new file mode 100644
index 00000000..9bae3836
--- /dev/null
+++ b/base/testfiles-search/github-0920.lvt
@@ -0,0 +1,40 @@
+\RequirePackage[enable-debug]{expl3}
+\ExplSyntaxOn
+\debug_on:n { check-declarations , deprecation }
+\ExplSyntaxOff
+
+\documentclass[a4paper,oneside]{article}
+\usepackage{pict2e,graphicx}
+
+
+
+\input{regression-test}
+
+\showoutput
+
+
+\setlength\parindent{0pt}
+
+\AddToHook{shipout/background}{%
+ \put(100,-100){\Huge X}%
+}
+
+
+\AddToHook{shipout}{%
+ \setbox\ShipoutBox=\vbox{\moveright1in\box\ShipoutBox}%
+ \setbox\ShipoutBox=\hbox to\paperwidth{\box\ShipoutBox\hss}%
+ \setbox\ShipoutBox=\hbox{\reflectbox{\box\ShipoutBox}}%
+ \setbox\ShipoutBox=\vbox{\moveleft1in\box\ShipoutBox}%
+}
+
+\begin{document}
+
+\START
+
+ABC
+
+\end{document}
+
+
+
+
diff --git a/base/testfiles-search/github-0920.tlg b/base/testfiles-search/github-0920.tlg
new file mode 100644
index 00000000..1e01cd12
--- /dev/null
+++ b/base/testfiles-search/github-0920.tlg
@@ -0,0 +1,61 @@
+This is a generated file for the l3build validation system.
+Don't change this file in any respect.
+Completed box being shipped out [1]
+\vbox(682.0+0.0)x525.23788
+.\hbox(682.0+0.0)x597.50787, shifted -72.26999
+..\hbox(682.0+0.0)x597.50787
+...\kern 597.50787
+...\hbox(682.0+0.0)x0.0
+....\special{ps: currentpoint currentpoint translate -1 1 scale neg exch neg exch translate}
+....\hbox(682.0+0.0)x0.0, glue set - 597.50787fil
+.....\hbox(682.0+0.0)x597.50787
+......\hbox(682.0+0.0)x597.50787, glue set 127.23788fil
+.......\vbox(682.0+0.0)x470.26999
+........\vbox(682.0+0.0)x398.0, shifted 72.26999
+.........\hbox(0.0+0.0)x0.0
+.........\hbox(0.0+0.0)x0.0
+..........\kern -72.27
+..........\vbox(0.0+0.0)x0.0, glue set 72.27fil
+...........\kern -72.27
+...........\hbox(0.0+0.0)x0.0
+............\hbox(16.99782+0.0)x0.0, glue set - 117.24966fil, shifted 100.0
+.............\kern 100.0
+.............\OT1/cmr/m/n/24.88 X
+.............\glue 0.0 plus 1.0fil minus 1.0fil
+............\glue 0.0 plus 1.0fil minus 1.0fil
+...........\glue 0.0 plus 1.0fil minus 1.0fil
+.........\glue 17.0
+.........\vbox(665.0+0.0)x345.0, shifted 53.0
+..........\vbox(12.0+0.0)x345.0, glue set 12.0fil
+...........\glue 0.0 plus 1.0fil
+...........\hbox(0.0+0.0)x345.0
+............\hbox(0.0+0.0)x345.0
+..........\glue 25.0
+..........\glue(\lineskip) 0.0
+..........\vbox(598.0+0.0)x345.0, glue set 587.9372fil
+...........\write-{}
+...........\glue(\topskip) 3.16669
+...........\hbox(6.83331+0.0)x345.0, glue set 323.1944fil
+............\hbox(0.0+0.0)x0.0
+............\OT1/cmr/m/n/10 A
+............\OT1/cmr/m/n/10 B
+............\OT1/cmr/m/n/10 C
+............\penalty 10000
+............\glue(\parfillskip) 0.0 plus 1.0fil
+............\glue(\rightskip) 0.0
+...........\glue 0.0 plus 1.0fil
+...........\glue 0.0
+...........\glue 0.0 plus 0.0001fil
+..........\glue(\baselineskip) 23.55556
+..........\hbox(6.44444+0.0)x345.0
+...........\hbox(6.44444+0.0)x345.0, glue set 170.0fil
+............\glue 0.0 plus 1.0fil
+............\OT1/cmr/m/n/10 1
+............\glue 0.0 plus 1.0fil
+.........\kern 0.0
+.........\kern 0.0
+.......\glue 0.0 plus 1.0fil minus 1.0fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+....\special{ps: currentpoint currentpoint translate 1 -1 div 1 1 div scale neg exch neg exch translate}
+...\glue 0.0 plus 1.0fil minus 1.0fil
+(github-0920.aux)
diff --git a/base/testfiles-search/github-0920.xetex.tlg b/base/testfiles-search/github-0920.xetex.tlg
new file mode 100644
index 00000000..faa481e7
--- /dev/null
+++ b/base/testfiles-search/github-0920.xetex.tlg
@@ -0,0 +1,60 @@
+This is a generated file for the l3build validation system.
+Don't change this file in any respect.
+Completed box being shipped out [1]
+\vbox(682.0+0.0)x525.23788
+.\hbox(682.0+0.0)x597.50787, shifted -72.26999
+..\hbox(682.0+0.0)x597.50787
+...\kern 597.50787
+...\hbox(682.0+0.0)x0.0
+....\special{pdf:btrans}
+....\special{x:scale -1 1}
+....\hbox(682.0+0.0)x0.0, glue set - 597.50787fil
+.....\hbox(682.0+0.0)x597.50787
+......\hbox(682.0+0.0)x597.50787, glue set 127.23788fil
+.......\vbox(682.0+0.0)x470.26999
+........\vbox(682.0+0.0)x398.0, shifted 72.26999
+.........\hbox(0.0+0.0)x0.0
+..........\kern -72.26999
+..........\vbox(0.0+0.0)x0.0, glue set 72.26999fil
+...........\kern -72.26999
+...........\hbox(0.0+0.0)x0.0
+............\hbox(16.99782+0.0)x0.0, glue set - 117.24966fil, shifted 100.0
+.............\kern 100.0
+.............\OT1/cmr/m/n/24.88 X
+.............\glue 0.0 plus 1.0fil minus 1.0fil
+............\glue 0.0 plus 1.0fil minus 1.0fil
+...........\glue 0.0 plus 1.0fil minus 1.0fil
+.........\glue 17.0
+.........\vbox(665.0+0.0)x345.0, shifted 53.0
+..........\vbox(12.0+0.0)x345.0, glue set 12.0fil
+...........\glue 0.0 plus 1.0fil
+...........\hbox(0.0+0.0)x345.0
+............\hbox(0.0+0.0)x345.0
+..........\glue 25.0
+..........\glue(\lineskip) 0.0
+..........\vbox(598.0+0.0)x345.0, glue set 587.9372fil
+...........\write-{}
+...........\glue(\topskip) 3.16669
+...........\hbox(6.83331+0.0)x345.0, glue set 323.1944fil
+............\hbox(0.0+0.0)x0.0
+............\OT1/cmr/m/n/10 A
+............\OT1/cmr/m/n/10 B
+............\OT1/cmr/m/n/10 C
+............\penalty 10000
+............\glue(\parfillskip) 0.0 plus 1.0fil
+............\glue(\rightskip) 0.0
+...........\glue 0.0 plus 1.0fil
+...........\glue 0.0
+...........\glue 0.0 plus 0.0001fil
+..........\glue(\baselineskip) 23.55556
+..........\hbox(6.44444+0.0)x345.0
+...........\hbox(6.44444+0.0)x345.0, glue set 170.0fil
+............\glue 0.0 plus 1.0fil
+............\OT1/cmr/m/n/10 1
+............\glue 0.0 plus 1.0fil
+.........\kern 0.0
+.......\glue 0.0 plus 1.0fil minus 1.0fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+....\special{pdf:etrans}
+...\glue 0.0 plus 1.0fil minus 1.0fil
+(github-0920.aux)
More information about the latex3-commits
mailing list.