Statistics
| Branch: | Revision:

iof-bird / bird-2.0.1 / doc / sbase / dist / birddoc / groff / mapping @ 6b3f1a54

History | View | Annotate | Download (11.5 KB)

1
% linuxdoc replacement file
2
% translates into nroff, using ms macros
3
% manpages can be processed using the man macros
4
% does not use neqn for math.
5

    
6
% Based on qwertz replacement file by Tom Gordon
7
% linuxdoc mods by mdw
8

    
9
% Groff dependencies are few.  To port to another roff:
10
% 1. Check and modify, if necessary, font changes.  (e.g. In psroff the
11
% same fonts have other names.)
12
% 2. Check the code for including Encapsulated PostScript, generated
13
% for eps elements.
14
% 3. Also make versions of general.grops and math.grops, which are sed
15
% scripts translating character entities into groff character references.
16

    
17

    
18
<birddoc>	+	".nr PS 11\n"
19

    
20
			% Hacked by mdw
21
			".nr PI 3n\n"
22
			".ds CF \\\\n\%\n"
23
			".ds CH \\&\n"
24
			".ds dR $\n"   % dollar, to avoid EQN conflicts
25

    
26
			% Start with no TOC
27
			".ds printtoc\n"
28

    
29
			% Footnote style
30
			".nr FF 1\n"
31

    
32
			% James Clark's trick to prevent unintended paragraph
33
			% breaks
34

    
35
			".tr \\&\n"
36

    
37
			% horizontal line
38
			".de hl\n"
39
			".br\n"
40
			"\\l'\\\\n(.lu-\\\\n(.iu'\n"
41
			"..\n"
42

    
43
			% paragraph spacing
44
			".if n .nr PD 1v\n"
45

    
46
			% margins added by mdw
47
                        ".nr PO 0.25i\n"
48
			".po 0.25i\n"
49
                        ".nr LL 7.0i\n"
50
                        ".nr TL 7.0i\n"
51
                        ".nr HM 0i\n"
52
                        ".nr FM 0i\n"
53

    
54
			% Turn off right-margin filling
55
			".na\n"
56

    
57
			% h is 1 if first paragraph after heading
58

    
59
			".nr h 0\n"
60

    
61
			% initialize heading level
62

    
63
			".nr il 1\n"
64

    
65
			% Number registers for list
66

    
67
			".nr bi 0\n"  % initialize begin items
68
			".nr ll 0\n"  % list level, stores current level
69
			".nr el 0\n"  % current enumeration level
70

    
71
			% Not all list levels are enumerations, as
72
			% itemizations can be embedded within enumerations
73
			% and vice versa
74

    
75
			% type of list level is in \n(t\n(ll, where
76
			% 0 : itemize, 1 : enumerate, 2: description
77

    
78
			% enumerator for an enumeration level is in
79
			% \n(e\n(el -- i.e. \n(e1=2 means current item of
80
			% enumeration level 1 is 2
81

    
82
			% context-sensitive paragraph macro
83

    
84
% Bug: There's some problem using this to re-start paragraphs after the
85
% </verb> and </code>, so after verb and code I insert .LP. That's fine
86
% except that is loses indentation when using verb or code inside of a list.
87

    
88
".de Pp\n"
89
".ie \\\\n(ll>0 \\{\\\n"   	 % within list?
90
".ie \\\\n(bi=1 \\{\\\n"   % first par element of item?
91
".nr bi 0\n"	 % reset bi flag
92
% if itemization, mark with a bullet
93
".if \\\\n(t\\\\n(ll=0 \\{.IP \\\\(bu\\}\n" % itemize
94
%  if enumeration: increment and print enumerator
95
% for this enumeration level
96
".if \\\\n(t\\\\n(ll=1 \\{.IP \\\\n+(e\\\\n(el.\\}\n"
97
% if first par element of descrip, do nothing
98
".\\}\n"
99
".el .sp \n"		% subsequent par element of item
100
".\\}\n"
101
".el \\{\\\n"		     	% not within list
102
".ie \\\\nh=1 \\{\\\n"	% first par after heading
103
".LP\n"
104
".nr h 0\n"	% reset h flag
105
".\\}\n"
106
".el .LP \n"   % Changed from .PP, mdw
107
".\\}\n"
108
".nh\n"
109
"..\n"
110

    
111

    
112

    
113
			% for each level, a number register is created
114
			% to store its type and current item number, where
115
			% -1=bullet of an itemized list.
116

    
117
			% Format of list level enumerators
118

    
119
			".ds f1 1\n"
120
			".ds f2 a\n"
121
			".ds f3 i\n"
122
			".ds f4 A\n"
123

    
124
			% Number registers for theorems
125
			".nr def 0\n"
126
			".nr prop 0\n"
127
			".nr lemma 0\n"
128
			".nr coroll 0\n"
129
			".nr proof 0\n"
130
			".nr theorem 0\n"
131

    
132
			% Reference commands
133

    
134
% redefine superscript strings so that refer tags look like [this]
135

    
136
			".ds \[. \[\n"
137
			".ds .\] \]\n"
138

    
139
</birddoc>
140

    
141
% set initial level of headings, in register il
142

    
143
<article>		+	".nr il 0"		+
144
</article>		+	".if '\\*[printtoc]'true' .PX\n"
145

    
146
<report>		+ 	".nr il 1"		+
147
</report>	+	".bp\n"
148
			".rm LH\n.rm RH\n"
149
			".TC"			+
150

    
151
<book>		+	".nr il 1"		+
152
</book>		+	".rm LH\n.rm RH\n"
153
			".bp\n"
154
			".TC"			+
155

    
156
<notes>
157
</notes>
158

    
159
<manpage>	+	".nr il -1"		+
160
</manpage>
161

    
162
<progdoc>
163
</progdoc>
164

    
165
% Hacked up titlepag stuff to look more reasonable. Titles and author
166
% names are now stored in strings, printed by the end of </titlepag>.
167
% Wake up! This uses groff-like long string names. You must use groff
168
% to format this.
169

    
170
<titlepag>	+	".ds mdwtitle\n"
171
			".ds mdwsubtitle\n"
172
			".ds mdwdate\n"
173
			".de printabstract\n"
174
			"..\n"			+
175
</titlepag>	+	"\\*[mdwtitle]\n"
176
			".br\n"
177
			".if !'\\*[mdwsubtitle]'' \\*[mdwsubtitle]\n"
178
			".br\n"
179
			".printauthor\n"
180
			".br\n"
181
			"\\*[mdwdate]\n"
182
			".br\n"
183
			".printabstract\n"
184
			".br\n"
185

    
186
%<title>		+	".TL"			+
187
%</title>
188

    
189
<title>		+	".ds mdwtitle "
190
</title>	+
191

    
192
%<subtitle>	+	".br\n"
193
%			".ft R\n"
194
%			".SM"		+
195
%</subtitle>	+	".LG"			+
196

    
197
<subtitle>	+	".ds mdwsubtitle "
198
</subtitle>	+
199

    
200
<date>		+	".ds mdwdate "
201
</date>		+
202

    
203
<abstract>	+ 	".de printabstract\n"
204
			".LP\n"
205
</abstract>	+	".."			+
206

    
207
% author needs to be set up as its own macro, fired off from .printtitle.
208

    
209
<author>	+ 	".de printauthor"	+
210
</author>	+	".."			+
211

    
212
%<name>		+	".AU"			+
213
%</name>
214

    
215
<name>		+	".br"			+
216
</name>
217

    
218
<and>
219
</and>
220

    
221
<thanks>			"\\**\n"
222
			".FS"			+
223
</thanks>	+	".FE"			+
224

    
225
<inst>		+	".br"			+
226
</inst>
227

    
228
%<newline>	+	".br"			+
229
<newline>	+	".br"
230
</newline>
231

    
232
<label>
233
</label>
234

    
235
<header>
236
</header>
237

    
238
<lhead>		+	".EH '"
239
</lhead>		"'''"		+
240

    
241
<rhead>		+	".OH '''"
242
</rhead>		"'"			+
243

    
244
<comment>	+	"(*"	+
245
</comment>	+	"*)"	+
246

    
247
% New abstract given above --mdw
248
%<abstract>	+	".AB"			+
249
%</abstract>	+	".AE"			+
250

    
251
<appendix>	+ 	".af H1 A"		+
252
</appendix>
253

    
254
% limitation: no list of figures or tables.  A table of contents
255
% is always generated for books and reports. Thus these next three tags
256
% are no-ops
257

    
258
% For now, no table-of-contents in ASCII output. (Uncomment this if
259
% desired).
260
%<toc>		+	".ds printtoc true"
261
%</toc>
262

    
263
<toc>
264
</toc>
265

    
266
<lof>
267
</lof>
268

    
269
<lot>
270
</lot>
271

    
272
<chapt>		+	".bp\n"
273
			".NH \\n(il "		+
274
</chapt>
275

    
276
<sect>		+	".NH 1+\\n(il" 		+
277
</sect>
278

    
279
<sect1>		+	".NH 2+\\n(il" 	+
280
</sect1>
281

    
282
<sect2>		+	".NH 3+\\n(il"		+
283
</sect2>
284

    
285
<sect3>		+	".NH 4+\\n(il"		+
286
</sect3>
287

    
288
<sect4>		+	".NH 5+\\n(il"		+
289
</sect4>
290

    
291
<heading>		".ds h "
292
</heading>	+	"\\*h\n"
293
			".XS \\n%\n"
294
			"\\*(SN \\*h\n"
295
			".XE\n"
296
			".nr h 1\n"  % set heading flag to true
297

    
298
<p>		+	".Pp"			+
299
</p>
300

    
301
<itemize>	+	".nr ll +1\n"	   % increment list level
302
			".nr t\\n(ll 0\n"    % set type of level to itemize
303
</itemize>	+	".nr ll -1\n"	% decrement list level
304

    
305
<enum>		+	".nr ll +1\n"	    % increment list level
306
			".nr el +1\n"	    % increment enumeration level
307
			".nr t\\n(ll 1\n"   % set type of level to enum
308
			".nr e\\n(el 0 1\n" % initialize enumerator
309
			".af e\\n(el \\*(f\\n(el\n" % style of enumerator
310
			".if \\n(ll>1 .RS"  +
311
</enum>		+	".if \\n(ll>1 .RE\n"
312
			".br\n"
313
			".nr el -1\n"	    % decrement enumeration level
314
			".nr ll -1\n"	    % decrement list level
315

    
316
<descrip>	+	".RS\n"
317
			".nr ll +1\n"	    % increment list level
318
			".nr t\\n(ll 2\n"   % set type of level to descrip
319
</descrip>	+	".nr ll -1\n"	    % decrement list level
320
			".RE"		+
321

    
322
% number register bi means "begin item".  Used in the .P macro to print
323
% bullets or numbers at beginning of first paragraph of an item.
324
% If bi=1 then the paragraph is the first one of the item.
325

    
326
<item>		+	".nr bi 1\n.Pp"		+
327
</item>
328

    
329
<tag>		+	".IP \"\\fB"
330
</tag>			"\\fR\"\n"
331
			".nr bi 1"			+
332

    
333
<m>			""
334
</m>			""
335

    
336
<cf>			""
337
</cf>			""
338

    
339
<cite>		+	".\[\n[ID]\n.\]"	+
340
</cite>
341

    
342
<ncite>		+	".\[\n[ID]\n.\]\n([NOTE])"
343
</ncite>
344

    
345
<footnote>		" (-- "
346
</footnote>		"--)"			+
347

    
348
<sq>			"\\*Q"
349
</sq>			"\\*U"
350

    
351
<lq>		+	".RS\n"
352
			".nr LL \\n(LL-\\n(PI"	+
353
</lq>		+	".nr LL \\n(LL+\\n(PI\n"
354
			".RE"			+
355

    
356
<em>			"\\fI"
357
</em>		 	"\\fP"
358

    
359
<bf>			"\\fB"
360
</bf>			"\\fR"
361

    
362
<it>			"\\fI"
363
</it>			"\\fR"
364

    
365
<sf>			"\\fR"
366
</sf>			"\\fR"
367

    
368
<sl>			"\\fI"
369
</sl>			"\\fR"
370

    
371
% Changed by mdw
372
<tt>			"\\fC"
373
</tt>			"\\fR"
374

    
375
% Added by mdw
376
<cparam>		"\\fI<"
377
</cparam>		">\\fR"
378

    
379
<url>			"[NAME] <\\fC[URL]\\fR>"
380
</url>
381

    
382
<htmlurl>		"[NAME]"
383
</htmlurl>
384

    
385
<ref>			"``[NAME]''"
386
</ref>
387

    
388
<nidx>			+ "\\#"
389
</nidx>			  "\\n"
390

    
391
<ncdx>			+ "\\#"
392
</ncdx>			  "\\n"
393

    
394
<pageref>		"??"
395
</pageref>
396

    
397
<x>
398
</x>
399

    
400
<mc>
401
</mc>
402

    
403
<biblio>	+	".\[\n"
404
			"$LIST$\n"
405
			".\]"			+
406
</biblio>
407

    
408
<code>		+	".DS L\n"
409
			".hl\n"
410
			".ft R\n"		+
411

    
412
</code>		+	".hl\n"
413
			".DE\n"
414
			".ft P\n"
415
		%	".Pp"	+ % continue previous paragraph (changed mdw)
416
			".LP"
417

    
418
<verb>		+	".DS L\n"
419
			".ft R\n"		+
420

    
421
</verb>		+	".DE\n"
422
			".ft P\n"
423
	 	%	".Pp"	+  % continue previous paragraph (changed mdw)
424
			".LP"
425

    
426
% tscreen added by mdw
427
<tscreen>       +       ".br\n"
428
                        ".po 0.75i\n"
429
                        ".ll 6.0i\n"
430
                        ".ft C\n"
431
                        ".LP\n"         % Used to be Pp
432
</tscreen>      +       ".br\n"
433
                        ".po 0.25i\n"
434
                        ".ll 7.0i\n"
435
                        ".ft R\n"       % This might not be correct
436
                        ".LP\n"         % Used to be Pp
437

    
438
<quote>         +       ".br\n"
439
                        ".po 0.75i\n"
440
                        ".ll 6.0i\n"
441
                        ".nr LL 6.0i\n"
442
                        ".LP\n"         % Used to be Pp
443
</quote>        +       ".br\n"
444
                        ".po 0.25i\n"
445
                        ".ll 7.0i\n"
446
                        ".nr LL 7.0i\n"
447
                        ".LP\n"         % Used to be Pp
448

    
449

    
450

    
451

    
452
% theorems and such
453

    
454
<def>		+	".sp\n"
455
			".nr def \\n\[def\]+1\n"
456
			".B \"Definition \\n\[def\] \"" +
457
</def>		+	".ft P\n.sp" 		+
458

    
459
<prop>		+	".sp\n"
460
			".nr prop \\n\[prop\]+1\n"
461
			".B \"Proposition \\n\[prop\] \"" +
462
</prop>		+	".ft P\n.sp" 		+
463

    
464

    
465
<lemma>		+	".sp\n"
466
			".nr lemma \\n\[lemma\]+1\n"
467
			".B \"Lemma \\n\[lemma\] \""	+
468
</lemma>	+	".ft P\n.sp" 		+
469

    
470
<coroll>	+	".sp\n"
471
			".nr coroll \\n\[coroll\]+1\n"
472
			".B \"Corolloary \\n\[coroll\] \"" +
473
</coroll>	+	".ft P\n.sp" 		+
474

    
475
<proof>		+	".sp\n"
476
			".nr proof \\n\[proof\]+1\n"
477
			".B \"Proof \\n\[proof\] \""	+
478
</proof>	+	".ft P\n.sp" 		+
479

    
480
<theorem>	+	".sp\n"
481
			".nr theorem \\n\[theorem\]+1\n"
482
			".B \"Theorem \\n\[theorem\] \"" +
483
</theorem>	+	".ft P\n.sp" 		+
484

    
485
<thtag>		+ 	".B\n("
486
</thtag>		")\n.I"			+
487

    
488
% mathematics -- this nroff version needs work.
489

    
490
<f>
491
</f>
492

    
493
<dm>		+	".DS L"		        +
494
</dm>		+	".DE"			+
495

    
496
<eq>		+	".DS L"			+
497
</eq>		+	".DE"			+
498

    
499
<fr>
500
</fr>
501

    
502
<nu>			"{"
503
</nu>			"} over "
504

    
505
<de>			"{"
506
</de>			"}"
507

    
508
<lim>
509
</lim>
510

    
511
<op>
512
</op>
513

    
514
<ll>			" from {"
515
</ll>			"}"
516

    
517
<ul>			" to {"
518
</ul>			"}"
519

    
520
<opd>
521
</opd>
522

    
523
<pr>			" prod "
524
</pr>
525

    
526
<in>			" int "
527
</in>
528

    
529
<sum>			" sum "
530
</sum>
531

    
532
% limitation: eqn only does square roots!
533

    
534
<root>			" sqrt {"
535
</root>			"}"
536

    
537
<ar>		+	".TS\n"
538
			"center, tab(|) ;\n"
539
			"[ca]."			+
540
</ar>		+	".TE"			+
541

    
542
<arr>   		"\n"
543
</arr>
544

    
545
<arc>   		"|"
546
</arc>
547

    
548

    
549
<sup>			" sup {"
550
</sup>			"}"
551

    
552
<inf>			" sub {"
553
</inf>			"}"
554

    
555

    
556
<unl>			"{"
557
</unl>			"} under "
558

    
559
<ovl>			"{"
560
</ovl>			"} bar "
561

    
562
<rf>			" bold{"
563
</rf>			"}"
564

    
565
<v>			"{"
566
</v>			"} vec "
567

    
568
% limitation: no calligraphic characters, using helvetica italics instead.  Is there a better font?
569

    
570
<fi>			"\\fI"
571
</fi>			"\\fP"
572

    
573
<phr>			" roman }"
574
</phr>			"}"
575

    
576

    
577
<tu>		+	".br"		+
578
</tu>
579

    
580
% figures
581

    
582
<figure>	% +	".KF"			+
583
</figure>	% +	".KE"			+
584

    
585
<eps>		+  	".if t .PSPIC [file].ps\n"
586
			".if n .sp 4"	  	+
587
</eps>
588

    
589
% Are TeX units properly handled by this translation of ph?
590

    
591
<ph>		+	".sp [VSPACE]"		+
592
</ph>
593

    
594
<caption>	+	".sp\n.ce"		+
595
</caption>
596

    
597
% tables
598

    
599
<table>		+	".KF\n.R"		+
600
</table>	+	".KE"			+
601

    
602
<tabular>	+	".TS\n"
603
			"center, tab(|) ; \n"
604
			"[ca]."			+
605
</tabular>	+	".TE"			+
606

    
607
<rowsep>		"\n"			+
608
</rowsep>
609

    
610
<colsep>		"|"
611
</colsep>
612

    
613
%<hline>		+	"_"			+
614
% gregh
615
<hline>		+	".hl\n"			+
616

    
617
</hline>
618

    
619
<slides>	+ 	".nr PS 18"		+
620
</slides>
621

    
622
<slide>
623
</slide>	+	".bp\n\\&"			+
624

    
625
% letters -- replacement for email, using mh format.
626

    
627
<letter>	+	".nf"	+
628
</letter>	+
629

    
630
<from>		+ 	"From: "
631
<to>		+	"To: "
632

    
633
<address>	+	".de Ad\n"
634
</address>	+	".."	+
635

    
636
<email>			" <"
637
</email>		">"
638

    
639
<subject>	+	"Subject: "
640

    
641
<sref>		+	"Sref: "
642
<rref>		+	"In-Reply-To: "
643

    
644
<cc>		+	"cc: "
645

    
646
<opening>	+	".fi\n.LP"	+
647

    
648
<closing>	+	".LP"		+
649

    
650
<encl>		+	".XP\n"
651
			"encl: "
652

    
653
<ps>		+	".LP\np.s."
654

    
655

    
656
% end of roff replacement file