[latex3-commits] [git/LaTeX3-latex3-latex3] master: more on OR hooks (unfinished) (7a041cc30)

Frank Mittelbach frank.mittelbach at latex-project.org
Mon Jun 24 11:02:28 CEST 2019


Repository : https://github.com/latex3/latex3
On branch  : master
Link       : https://github.com/latex3/latex3/commit/7a041cc30c97783b7988d077b797488d56afbfa4

>---------------------------------------------------------------

commit 7a041cc30c97783b7988d077b797488d56afbfa4
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date:   Mon Jun 24 11:02:28 2019 +0200

    more on OR hooks (unfinished)


>---------------------------------------------------------------

7a041cc30c97783b7988d077b797488d56afbfa4
 discussionpapers/2019-06-thoughts-on-hooks.tex | 46 ++++++++++++++++++++++++--
 1 file changed, 43 insertions(+), 3 deletions(-)

diff --git a/discussionpapers/2019-06-thoughts-on-hooks.tex b/discussionpapers/2019-06-thoughts-on-hooks.tex
index b3bf45cb5..3ab528fa7 100644
--- a/discussionpapers/2019-06-thoughts-on-hooks.tex
+++ b/discussionpapers/2019-06-thoughts-on-hooks.tex
@@ -8,7 +8,7 @@
   \LaTeX{} Project Team}
 
 %\date{2018-11-29}
-\date{2019-06-21}
+\date{2019-06-24}
 
 \newcounter{hook}
 \newcounter{config}
@@ -191,11 +191,11 @@ If there are several distinct use cases each could be added using
   compatibility) but it shows up in one or two other places in TL.
 \end{hook}
 
-\begin{hook}[kernel]{doc-structure}{begindocument}
+\begin{hook}[kernel]{\cs{document}}{begindocument}
 \item
 \end{hook}
 
-\begin{hook}[kernel]{doc-structure}{enddocument}
+\begin{hook}[kernel]{\cs{enddocument}}{enddocument}
 \item
 \end{hook}
 
@@ -203,6 +203,46 @@ If there are several distinct use cases each could be added using
 
 \subsection{Output routine}
 
+\subsubsection{Making pages}
+
+
+\begin{hook}[kernel]{\cs{@outputpage}}{begindvibox}
+\item
+  \cs{AtBeginDvi} is a legacy \LaTeXe{} interface that hooks into the
+  first shipout box at the very top. Afterwards the material is
+  dropped so it doesn't show up in later boxes. What is special is
+  that the hook itself is implemented as a box and each time
+  \cs{AtBeginDvi} is called more material is added to that box which
+  eventually is unboxed into the first shipout box. in that respect
+  that hook is rather ``special'' and right now I'm not sure it really
+  has to---use cases please.
+\item
+  If not then my proposal would be to deprecate it in favor of a
+  ``normal'' hook at the same place (i.e., implemented as a token
+  list) that would fit into the general model outlined above.
+\end{hook}
+
+\begin{hook}{\cs{@outputpage}}{firstshipout}
+\item
+  Suggested replacement for \texttt{begindvibox} as a normal named
+  hook. Executed at the very top inside the first shipoutbox.
+\item
+  Not being implemented as a box register internally also means that
+  it could execute other code than just adding \cs{special}s etc to
+  the shipout box.
+\end{hook}
+
+\begin{hook}{\cs{@outputpage}}{shipout}
+\item
+  Executed directly at the top of the shiout box but only for shipouts
+  after the first (which uses \texttt{firstshipout}.
+\item
+  For code that should be executed at all shipouts one need to put it
+  into both \texttt{firstshipout} and \texttt{shipout}.
+\end{hook}
+
+
+
 \subsubsection{Making columns}
 
 \begin{hook}{\cs{@makecol}}{pre}





More information about the latex3-commits mailing list