tmac: use ds instead of de + chop
[neatroff_make.git] / tmac / tmac.en
blobb0546c5aabba8c9a473b1fa232dbd2bb44ad2345
1 .\" A package for short English manuscripts
2 .\" Registers and their default values
3 .nr PS 14               \" point size
4 .nr VS \n(PS+12         \" vertical spacing
5 .nr LL 6i               \" line length
6 .nr PO 1.1i             \" page offset
7 .nr FP -1.2i            \" footer position
8 .\" Internal registers
9 .nr en.in 0             \" current indentation
10 .nr en.ip 2m            \" IP indentation
11 .nr en.pi 2m            \" RS indentation
12 .nr en.pg 1             \" page numbering (0 disables)
13 .ds en.cl "0            \" header colour
14 .\" Reset variables; when beginning a paragraph, e.g.
15 .de RT
16 .       fi
17 .       ft R
18 .       ad p
19 .       ps \\n(PS
20 .       vs \\n(VS
21 .       ll \\n(LLu
22 .       lt \\n(LLu
23 .       po \\n(POu
24 .       in \\n[en.in]u
25 .       cl 0
26 .       AL
28 .\" Alignment
29 .de AL
30 .       if \\n(.d%\\n(.v 'sp \\n(.vu-(\\n(.du%\\n(.vu)
32 .\" Paragraphs
33 .de LP          \" Paragraphs without temporary indentation
34 .       RT
36 .de PP          \" Ordinary paragraphs
37 .       RT
38 .       ti +3n
40 .de QP          \" Quoted paragraphs
41 .       LP
42 .       in \\n[en.in]u+0.5i
43 .       ll -2m
45 .de IP          \" Indented paragraphs
46 .       br
47 .       RT
48 .       ne 1
49 .       if \\n(.$>1 .nr en.ip \\$2
50 .       in +\\n[en.ip]u
51 \h'|-\\n[en.ip]u'\\$1
52 .       sp -1
54 .de RS          \" Indented block start
55 .       br
56 .       if \\n(.$ .nr en.pi \\$1
57 .       nr en.in +\\n[en.pi]
59 .de RE          \" Indented block end
60 .       br
61 .       if \\n(.$ .nr en.pi \\$1
62 .       nr en.in -\\n[en.pi]
64 .de QS          \" Quote start
65 .       br
66 .       RS
67 .       LP
69 .de QE          \" Quote end
70 .       br
71 .       RE
73 .\" Section header
74 .de SH
75 .       RT
76 .       sp
77 .       ne 1.5
78 .       cl \\*[en.cl]
79 .       ft HD
80 .       ps \\n(PS+2
81 .       ad l
82 .       if \\n(.$ \{\
83 \\$1
84 .               LP
85 .       \}
87 .\" Document title
88 .de TL
89 .       RT
90 .       cl \\*[en.cl]
91 .       ft HD
92 .       sp 2
93 .       ad c
94 .       ps \\n(PS+4
95 .       vs \\n(VS+6
96 .       fi
97 .       if \\n(.$ \{\
98 \\$1
99 .               sp 2
100 .               LP
101 .       \}
103 .\" Document author
104 .de AU
105 .       RT
106 .       ft R
107 .       sp 1
108 .       ce
110 .\" Preprocessor macros
111 .de EQ
112 .       RT
113 .       nf
114 .       di en.eqdiv
116 .de EN
117 .       di
118 .       if \\n(dn \{\
119 .               sp .5
120 .               ce
121 .               en.eqdiv
122 .               sp .5
123 .       \}
124 .       fi
126 .de PS
127 .       br
128 .       RT
129 .       in (\\n(.lu-\\$2)/2u
130 .       ne \\$1
132 .de PE
133 .       in
135 .de TS
136 .       br
137 .       RT
139 .de TE
141 .\" Header and footer macros
142 .de FT          \" Page footer
143 .       ev en.ft
144 .       FP
145 '       sp |\\n(.pu+\\n(FPu
146 .       RT
147 '       sp
148 .       FT.pg
149 '       bp
150 .       ev
151 .       if \\n(.t==(\\n(.p+(\\n(FP)) .HD
153 .de HD          \" Page header (called by FT)
154 .       ev en.ft
155 .       RT
156 .       sp 1
157 .       HD.pg
158 .       ev
159 .       ns
160 .       keepbop
162 .de FT.pg       \" Footer page number
163 .       ie \\n[en.pg]=1 'tl ''\>%\<''
164 .       el 'sp
166 .de HD.pg       \" Header page number
167 '       sp 3
169 .\" Footnotes
170 .de FS
171 '       br
172 .       ie \\n[en.footnum] .ne 2
173 .       el .ne 1
174 .       if !\\n[en.footnum] .nr en.footpos 0\\n(FP+\\n(VSp
175 .       da en.footdiv
176 .       ev en.footenv
177 .       RT
178 .       ps \\n(PS-4
179 .       vs \\n(PS-2
180 .       ad p
181 .       nr en.footnum +1
182 .       if \\n[en.footnum]=1 \l'3i'
183 .       ds en.footsign "\\n[en.footnum]
184 .       if \\n(.$>0 .ds en.footsign "\\$1
185 .       in 3n
186 .       ti -3n
187 \\*[en.footsign]
188 .       sp -1
190 .de FE
191 .       in 0
192 .       ev
193 .       di
194 \s-4\u\\*[en.footsign]\d\s+4
195 .       nr en.footpos -\\n(dn
196 .       ch FT \\n[en.footpos]u
198 .de FP
199 .       if \\n[en.footnum] \{\
200 .               ev en.footenv
201 '               nf
202 .               en.footdiv
203 .               rm en.footdiv
204 .               ev
205 .       \}
206 .       nr en.footnum 0
207 .       ch FT \\n(FPu
209 .\" Citations
210 .ds ct [\\$1]
211 .\" For keep package
212 .de KF
213 .       keepbeg f
215 .de KT
216 .       keepbeg t
218 .de KS
219 .       keepbeg d
221 .de KE
222 .       keepend
224 .de DS
225 .       RT
226 .       nf
228 .de DE
229 .       fi
231 .\" Font setup for Computer Modern
232 .de en.cmr
233 .       fp 1 R CMR10
234 .       fp 2 I CMTI10
235 .       fp 3 B CMB10
236 .       fp 4 BI CMBX10
237 .       fp 6 HD CMCSC10
238 .       fp 14 CMR CMR10
239 .       fp 15 CMEX CMEX10
240 .       fp 16 CMSY CMSY10
241 .       fp 17 CMMI CMMI10
242 .       fspecial CMR S1 S CMEX CMSY
243 .       ochar CMR { "\f[CMSY]{\fP
244 .       ochar CMR } "\f[CMSY]}\fP
245 .       ochar CMR \(<= "\f[CMSY]\(<=\fP
246 .       ochar CMR < "\f[CMSY]<\fP
247 .       ochar CMR > "\f[CMSY]>\fP
248 .       ochar CMR \(>= "\f[CMSY]\(>=\fP
249 .       ochar CMR \(mu "\f[CMSY]\(mu\fP
251 .\" Initialization
252 .de en.init
253 .       lg 1
254 .       kn 1
255 .       wh \\n(FPu FT
256 .       hy 14
257 .       hycost 800
258 .       hyp 10
259 .       ssh 15
260 .       fp 6 HD B
262 .en.init