|
|
1.1 root 1: .de sh *** section heading
2: .if \\n(.$ .@d \\$1
3: .ds @@ #\\n(#0
4: .nr \\*(@@ +1
5: .ds @n \\n(#1
6: .if \\n(#2 .as @n .\\n(#2
7: .if \\n(#3 .as @n .\\n(#3
8: .if \\n(#4 .as @n .\\n(#4
9: .if \\n(#5 .as @n .\\n(#5
10: .if \\n(#6 .as @n .\\n(#6
11: .if !\\n(#0 .in 0
12: .if \\n(#0 .@p
13: ..
14: .de @d change section depth
15: .nr #0 \\$1
16: .if \\n(#0 .if !\\n(#1 .nr #1 0
17: .if !\\n(#0 .nr #1 0
18: .if \\n(#0-1 .if !\\n(#2 .nr #2 0
19: .if !\\n(#0-1 .nr #2 0
20: .if \\n(#0-2 .if !\\n(#3 .nr #3 0
21: .if !\\n(#0-2 .nr #3 0
22: .if \\n(#0-3 .if !\\n(#4 .nr #4 0
23: .if !\\n(#0-3 .nr #4 0
24: .if \\n(#0-4 .if !\\n(#5 .nr #5 0
25: .if !\\n(#0-4 .nr #5 0
26: .if \\n(#0-5 .if !\\n(#6 .nr #6 0
27: .if !\\n(#0-5 .nr #6 0
28: ..
29: .de @p print section heading
30: .in \\n(#i*\\n(#0u
31: .sp
32: .ti -\\n(#i
33: \\*(@n\&.\ \ \c
34: ..
35: .de up *** move up heading number (2.1.1 -> 2.2)
36: .sh -1
37: ..
38: .de ux *** heading up, no increment (2.1.1 -> 2.1)
39: .nr _9 \\n(#0-1
40: .if \\n(.$ .nr _9 +1
41: .if \\n(.$ .nr _9 \\$1
42: .@d \\n(_9
43: .in \\n(#i*\\n(#0u
44: ..
45: .de dn *** move down heading number (2.1.1 -> 2.1.1.1)
46: .sh +1
47: ..
48: .de gs *** get section number
49: .ds ,\\$1 \\*(@n
50: ..
51: .nr #i 4
52: .de PS *** space after a section title
53: .sp 1
54: ..
55: .po 5
56: .de @h
57: 'sp 3
58: 'tl \\*(HE
59: 'sp 2
60: ..
61: .de @f
62: 'bp
63: ..
64: .wh 0 @h
65: .wh -6 @f
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.