-
-
Notifications
You must be signed in to change notification settings - Fork 275
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
a2b0792
commit 0c7019a
Showing
1 changed file
with
69 additions
and
46 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -46,7 +46,7 @@ | |
\author{Leslie Lamport, Frank Mittelbach, Chris Rowley} | ||
\begin{document} | ||
\MaintainedByLaTeXTeam{latex} | ||
\maketitle | ||
\maketitle \tableofcontents | ||
\DocInput{\filename} | ||
\end{document} | ||
%</driver> | ||
|
@@ -135,24 +135,16 @@ | |
% | ||
% \section{Output Routine and float handling} | ||
% | ||
% \subsection{Core commands} | ||
% | ||
% The `2ekernel' code ensures that a |\usepackage{autoout1}| is | ||
% essentially ignored if a `full' format is being used that has | ||
% the autoload file mode already in the format. | ||
% \begin{macrocode} | ||
%<defx>\begingroup | ||
%<defx>\makeatletter | ||
%<defx>\nfss@catcodes | ||
%<2ekernel>\expandafter\let\csname [email protected]\endcsname\fmtversion | ||
%<*2ekernel> | ||
\message{output,} | ||
% \end{macrocode} | ||
% | ||
% \subsection{Historical notes on the algorithm and commands} | ||
% | ||
% | ||
% \begin{oldcomments} | ||
% \begin{macrocode} | ||
%<*2ekernel> | ||
\message{output,} | ||
% \end{macrocode} | ||
% **************************************** | ||
% * OUTPUT * | ||
% **************************************** | ||
|
@@ -652,9 +644,13 @@ | |
% \nointerlineskip | ||
% \hbox{\vrule height 0 width 0 depth \@pagedp} | ||
% END | ||
% \end{oldcomments} | ||
% | ||
% | ||
% | ||
% \subsection{Core definitions} | ||
% | ||
% Floats and marginpars add a lot of dead cycles. | ||
% \end{oldcomments} | ||
% \begin{macrocode} | ||
\maxdeadcycles = 100 | ||
% \end{macrocode} | ||
|
@@ -698,7 +694,10 @@ | |
\fi} | ||
% \end{macrocode} | ||
% | ||
% DEFINITION OF FLOAT BOXES: | ||
% | ||
% \subsubsection{Definition of float boxes} | ||
% | ||
% | ||
% \changes{v1.3a}{2015/09/205} | ||
% {extended \cs{@freelist}} | ||
% \begin{macrocode} | ||
|
@@ -764,7 +763,11 @@ | |
\gdef\@dbldeferlist{} | ||
% \end{macrocode} | ||
% | ||
% PAGE LAYOUT PARAMETERS | ||
% | ||
% | ||
% \subsubsection{Page layout parameters} | ||
% | ||
% | ||
% \begin{macrocode} | ||
\newdimen\topmargin | ||
\newdimen\oddsidemargin | ||
|
@@ -898,7 +901,12 @@ | |
% \end{macro} | ||
% \end{macro} | ||
% | ||
% INTERNAL REGISTERS | ||
% | ||
% | ||
% | ||
% \subsubsection{Internal registers} | ||
% | ||
% | ||
% | ||
% \begin{macrocode} | ||
\newcount\@topnum | ||
|
@@ -926,6 +934,11 @@ | |
\def\@thefoot{\@oddfoot} | ||
% \end{macrocode} | ||
% | ||
% | ||
% | ||
% | ||
% \subsubsection{Page break commands} | ||
% | ||
% \begin{macro}{\clearpage} | ||
% \changes{v1.1r}{1995/10/11}{Added a check so that it does not lose | ||
% the argument of \cs{twocolumn[...]}} | ||
|
@@ -1436,6 +1449,11 @@ | |
% | ||
% | ||
% | ||
% \subsubsection{Output routine commands} | ||
% | ||
% | ||
% | ||
% | ||
% \begin{macro}{\output} | ||
% \changes{v1.0f}{1993/12/05}{Command changed} | ||
% \begin{macro}{\@specialoutput} | ||
|
@@ -2139,13 +2157,13 @@ | |
% \changes{v1.4m}{2025/02/14}{Macro added} | ||
% \changes{v1.4m}{2025/02/14}{Finally fix bottom skip bug (from 2.09)} | ||
% | ||
% This is really a bug fix for the kernel but one we only | ||
% automatically make in new documents that are using \cs{DocumentMetadata}. | ||
% If | ||
% \cs{raggedbottom} is in force, footnotes get attached to the main | ||
% galley at a distance of \cs{footskip} on all pages except on | ||
% those that are ended by \cs{newpage} or \cs{clearpage} where the | ||
% \cs{vfil} from \cs{newpage} pushes the footnotes to the very bottom. | ||
% This is really a bug fix for the kernel (from the 2.09 days) but | ||
% one we only make by default in new documents that are using | ||
% \cs{DocumentMetadata}. If \cs{raggedbottom} is in force, | ||
% footnotes get attached to the main galley at a distance of | ||
% \cs{footskip} on all pages except on those that are ended by | ||
% \cs{newpage} or \cs{clearpage} where the \cs{vfil} from | ||
% \cs{newpage} pushes the footnotes to the very bottom. | ||
% | ||
% This is kind of a weird difference to a page ending with | ||
% \cs{pagebreak}---in that case the page is also run | ||
|
@@ -2214,8 +2232,9 @@ | |
% | ||
% \subsection{The output routine configuration components} | ||
% | ||
% Here we provide the components that are used to define code for the | ||
% \socket{build/column/outputbox} socket. | ||
% Here we provide the comands that are used to define code for the | ||
% socket \socket{build/column/outputbox}. The all manipulate the | ||
% \cs{@outputbox} box in one way or another. | ||
% | ||
% | ||
% \begin{macro}{\@outputbox@append} | ||
|
@@ -2263,7 +2282,8 @@ | |
\ifvoid\footins \else | ||
% \end{macrocode} | ||
% Handling split footnotes need further work so this is for the | ||
% moment just a dummy that does nothing. | ||
% moment just a dummy that does nothing. It might vanish and get | ||
% replaced by a socket eventually. | ||
% \task{fmi}{The code for handling split footnotes will get revised as part | ||
% of socket handling in the future} | ||
% \begin{macrocode} | ||
|
@@ -2511,20 +2531,22 @@ | |
} | ||
% \end{macrocode} | ||
% The \texttt{footnote-floats} plug implements the layout used by | ||
% \LaTeX{} but with the bottom skip bug corrected; This will be | ||
% the default when \cs{DocumentMetadata} is usedit can be | ||
% \LaTeX{} but with the bottom skip bug corrected. This will be | ||
% the default when \cs{DocumentMetadata} is used; it can be | ||
% overwritten either through \pkg{footmisc} or by assigning any of | ||
% the other plugs (or by coding yet another plug for the socket). | ||
% \end{plugdecl} | ||
% | ||
% \begin{plugdecl}{footnotes-floats-legacy} | ||
% This implements the 2.09 layout (including its bottom skip bug). | ||
% \begin{macrocode} | ||
\NewSocketPlug {build/column/outputbox}{footnotes-floats-legacy} {% | ||
% \end{macrocode} | ||
% In the legacy case we don't really want to take out the bottom | ||
% skip, but rather then altering \cs{@outputbox@removebskip} in | ||
% \cs{makecol} to do nothing, which we would then have to undo in | ||
% each other layout, we simply reinsert it immediately again. | ||
% each other layout, we simply reinsert the dropped skip | ||
% immediately again. | ||
% \begin{macrocode} | ||
\@outputbox@reinsertbskip | ||
\@outputbox@appendfootnotes | ||
|
@@ -2678,10 +2700,6 @@ | |
%<latexrelease> \let \@if@footnotes@TF \@undefined | ||
%<latexrelease> \let \@if@bfloats@TF \@undefined | ||
%<latexrelease> | ||
%<latexrelease> | ||
%<latexrelease> | ||
%<latexrelease> | ||
%<latexrelease> | ||
%<latexrelease>\EndIncludeInRelease | ||
%<*2ekernel> | ||
% \end{macrocode} | ||
|
@@ -2698,7 +2716,6 @@ | |
\ifvbox\@kludgeins\insert\@kludgeins | ||
{\unvbox\@kludgeins}\fi | ||
} | ||
%</2ekernel> | ||
% \end{macrocode} | ||
% \end{macro} | ||
% | ||
|
@@ -2709,7 +2726,6 @@ | |
% \begin{macro}{\@textbottom} | ||
% These do nothing as a default. | ||
% \begin{macrocode} | ||
%<*2ekernel> | ||
\let \@texttop \relax | ||
\let \@textbottom \relax | ||
% \end{macrocode} | ||
|
@@ -3222,11 +3238,21 @@ | |
% \end{macrocode} | ||
% \end{macro} | ||
% | ||
% | ||
% | ||
% | ||
% | ||
% | ||
% \subsubsection{Dealing with floats} | ||
% | ||
% | ||
% | ||
% \begin{macro}{\@combinefloats} | ||
% \changes{v1.4m}{2025/02/14}{Macro got a new name} | ||
% Old name kept to support legacy packages. | ||
% Old name for what is now called \cs{@outputbox@attachfloats}; | ||
% kept to support legacy packages. | ||
% \begin{macrocode} | ||
\let \@combinefloats \@outputbox@attachfloats | ||
\let \@combinefloats \@outputbox@attachfloats | ||
% \end{macrocode} | ||
% \end{macro} | ||
% | ||
|
@@ -4996,21 +5022,18 @@ | |
% This part of the file is part of the implementation of the following | ||
% two new commands for \LaTeX2e{}. | ||
% | ||
% | ||
% \begin{verbatim} | ||
%\begin{verbatim} | ||
% \enlargethispage{<dim>} | ||
% \end{verbatim} | ||
% | ||
%\end{verbatim} | ||
% Adds |<dim>| to the height of the current column only. On the printed | ||
% page the bottom of this column is extended downwards by exactly | ||
% |<dim>| without having any effect on the placement of the footer; this | ||
% may result in an overprinting. | ||
% | ||
% \begin{verbatim} | ||
%\begin{verbatim} | ||
% \enlargethispage*{<dim>} | ||
% \end{verbatim} | ||
% | ||
% Similar to |\enlargethispage| but it tries to squeeze the column to | ||
%\end{verbatim} | ||
%% Similar to |\enlargethispage| but it tries to squeeze the column to | ||
% be printed in as small a space as possible, ie it uses any | ||
% shrinkability in the column. If the column was not explicitly broken | ||
% (\eg with |\pagebreak|) this may result in an overfull box message but | ||
|