.ig
Jeremy Holden: NROFF macros

S => Single chapter format

V1 = chapter no.
V2 = section no.
V3 = subsection no.
V4 = figure no.
V5 = Pending fig count
S1 = chapter string
S2 = section string
S3 = subsection string
S4 = figure string
P1 = para indent
P2 = indent in EX - XE
P3 = top margin
P4 = bottom margin
P5 = indent in TB - BT
L? = figure lengths
T? = figure titles
..
.de CH Chapter
.ds PH
.if \\n(V1 .bp
.nr V1 +1
.nr V2 0
.nr V3 0
.ev 2
.da TC
\\*(S1\t\t\\$1\t\\n%
.di
.ev
.UC
.ul
\\*(S1  \\$1
.ds PH \\$1
.sp 1
.LC
.sp 1
..
.de SE New section
.sp 2
.ne 3
.nr V2 +1
.nr V3 0
.ev 2
.da TC
\t\\*(S2\t\t\\$1\t\\n%
.di
.ev
.UC
\\*(S2	\\$1
.sp 1
.LC
..
.de SS New subsection
.sp 1
.ne 3
.nr V3 +1
.nf
\\*(S3	\\$1
.fi
.sp 1
..
.de PA New paragraph
.sp
.ne 2
.ti \\n(P1
..
.de EX Prog insert
.sp
.nf
.nr V9 \\w'\\$1'
.if \\n(V9 .if \\$1 .nm \\$1 1 \\n(P2-3
.if \\n(V9 .if !\\$1 .nm +0 1 \\n(P2-3
.if \\n(V9 .ll -\\n(P2
.if !\\n(V9 .in +\\n(P2
..
.de XE End insert
.sp
.fi
.if \\n(V9 .nm
.if \\n(V9 .ll +\\n(P2
.if !\\n(V9 .in -\\n(P2
..
.de TB Table start
.sp 1
.ev 1
.in \\n(P5
.ta \\n(P5-\\n(P2+1
..
.de TE Table entry
.ne 2
.br
.ti -\\n(P5-\\n(P2
\\$1\t\c
..
.de BT Table end
.in
.sp 1
.ev
..
.de FI Figure
.nr V5 +1
.nr L\\n(V5 \\$1
.ds T\\n(V5 \\$2
.M1
..
.de M1 Figure assist
'if \\n(V5 'if \\n(.t-\\n(L1-1 .M2
..
.de M2 Figure output
'sp \\n(L1
'nr V4 +1
'tl ''Figure \\*(S4: \\*(T1''
'ev 2
'da TF
\\*(S4\t\\*(T1\t\\n%
'di
'ev
'sp 1
'nr L1 \\n(L2
'nr L2 \\n(L3
'nr L3 \\n(L4
'nr L4 \\n(L5
'nr L5 \\n(L6
'nr L6 \\n(L7
'nr L7 \\n(L8
'nr L8 \\n(L9
'nr L9 0
'ds T1 \\*(T2
'ds T2 \\*(T3
'ds T3 \\*(T4
'ds T4 \\*(T5
'ds T5 \\*(T6
'ds T6 \\*(T7
'ds T7 \\*(T8
'ds T8 \\*(T9
'ds T9
'nr V5 -1
..
.de RE Reference
[\\$1\\ \\$2]\c
..
.de UC
.tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ
..
.de LC
.tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz
..
.de HD Header
'sp 1
'UC
'tl '\\*(PH'''
'LC
'sp \\n(P3-2
'M1
'M1
'M1
'M1
'M1
'M1
'M1
'M1
'M1
..
.de FO Footer
'nr F1 1
'bp
..
.de PN Page number
'tl ''- % -''
..
.de NPH Special header for Testplan document
'sp 1
'tl 'Test Plan, York MODULA Compiler''Page %'
'tl 'June 1978, Rev.A.'''
'sp3
..
.nr V1 0 1
.nr V2 0 1
.nr V3 0 1
.nr V4 0 1
.nr V5 0 1
.nr P1 5
.nr P2 12
.nr P3 4
.nr P4 6
.nr P5 30
.ds S1 \\n(V1.
.ds S2 \\n(V1.\\n(V2
.ds S3 \\n(V1.\\n(V2.\\n(V3
.ds S4 \\n(V1.\\n(V4
.if \nS .ds S1 
.if \nS .ds S2 \\n(V2
.if \nS .ds S3 \\n(V2.\\n(V3
.if \nS .ds S4 \\n(V4
.ev 2
.ta 3 15 18 60
.nf
.ev
.wh 0 NPH
.wh -\n(P4 FO
