% This file is part of the CTAN package named plain-widow. % % pxwmanual.tex: add manual \vsize change to pxwreport.tex % Version 1.0, 13.05.2025 % % Copyright (C) 2025 Udo Wermuth (author) % % This program is free software: you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by % the Free Software Foundation, either version 3 of the License, or % (at your option) any later version. % % This program is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. % % You should have received a copy of the GNU General Public License % along with this program. If not, see . % \input pxwreport.tex % code from single.tex with ``SINGLE'' replaced by ``MANUAL'' \def\footlinedist{30pt }%plain TeX's value: 24pt \def\makefootline{\baselineskip=\footlinedist \lineskiplimit=0pt\line{\the\footline}} \begingroup \dimen255=\footlinedist \gdef\PXnormaldist{\gdef\footlinedist{30 pt}} \advance\dimen255 by +1\baselineskip \xdef\PXplusdist{\noexpand\gdef\noexpand \footlinedist{\the\dimen255 }} \advance\dimen255 by -2\baselineskip \xdef\PXminusdist{\noexpand\gdef\noexpand \footlinedist{\the\dimen255 }}\endgroup \def\PXincVsize{% increase \vsize by one line \global\advance\vsize by +1\baselineskip \PXminusdist\wlog{MANUAL: \vsize + 1 line}} \def\PXdecVsize{% decrease \vsize by one line \global\advance\vsize by -1\baselineskip \PXplusdist\wlog{MANUAL: \vsize - 1 line}} \def\PXresetVsize{% reset \vsize to former value \ifdim\vsize=\PXsaveVsize \else \PXnormaldist \global\vsize=\PXsaveVsize \fi} \def\PXstorevsize{\edef\PXsaveVsize{\the\vsize}} \PXstorevsize % call this if \vsize is changed % % put the following macros into \def\PXpostoutput \def\PXplus(#1){% #1: page number; now +1 line \ifnum#1=\pageno \PXresetVsize \PXincVsize \fi \ignorespaces} \def\PXminus(#1){% #1: page number; now -1 line \ifnum#1=\pageno \PXresetVsize \PXdecVsize \fi \ignorespaces} \def\PXstop(#1){% #1: page number; now no change \ifnum#1=\pageno \PXresetVsize \wlog{MANUAL: \vsize}\fi \ignorespaces}