summaryrefslogtreecommitdiff
path: root/info/examples/tip/splitpar.tip
blob: d40236d2dfabde4537f4614cbf54340b093cb143 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
% This macro source file is from the four volume series
% "TeX in Practice" by Stephan von Bechtolsheim, published
% 1993 by Springer-Verlag, New York.
% Copyright 1993 Stephan von Bechtolsheim.
% No warranty or liability is assumed.
% This macro may be copied freely if no fees other than
% media cost or shipping charges are charged and as long
% as this copyright and the following source code itself
% is not changed. Please see the series for further information.
%
% Version: 1.0
% Date: May 1, 1993
%
%
% This source code is documented in 8.2.12, p. I-296.
% Original source in file "vboxes2.TEX", starting line 1096.
\wlog{L: "splitpar.tip" ["vboxes2.TEX," l. 1096, p. I-296]}%
% This file DOES belong to format "texip."
\catcode`\@ = 11
\newcount\@PPLineNumber
\newbox\@PrintParWithLinesBox
\newbox\@PrintParWithLinesTemp
\def\PrintParWithLineNumbers #1{%
    \par
    \@PPLineNumber = 1
    \splittopskip = 0.6666\baselineskip
    \setbox\@PrintParWithLinesBox = \vbox{#1}
    \@PrintParWithLineNumbers
}
\def\@PrintParWithLineNumbers{
    \ifvoid\@PrintParWithLinesBox
        \let\@PPNext = \relax
    \else
        \setbox\@PrintParWithLinesTemp =
            \vsplit\@PrintParWithLinesBox to 0.666\baselineskip
        \hbox{%
            \llap{% 
                \the\@PPLineNumber:% 
                \hskip 10pt
            }% 
            \box \@PrintParWithLinesTemp
        }% 
        \advance\@PPLineNumber by 1
        \wlog{Line \the\@PPLineNumber}%
        \let\@PPNext = \@PrintParWithLineNumbers
    \fi
    \@PPNext
}
\catcode`\@ = 12