gerbil 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +23 -0
- data/README +1 -0
- data/Rakefile +48 -0
- data/bin/gerbil +275 -0
- data/doc/HelloWorld.input +37 -0
- data/doc/HelloWorld.spec +66 -0
- data/doc/gerbil.png +0 -0
- data/doc/gerbil.svg +330 -0
- data/doc/guide.erb +677 -0
- data/doc/guide.html +3416 -0
- data/fmt/html.icons/LICENSE +67 -0
- data/fmt/html.icons/README +30 -0
- data/fmt/html.icons/caution.png +0 -0
- data/fmt/html.icons/important.png +0 -0
- data/fmt/html.icons/note.png +0 -0
- data/fmt/html.icons/tip.png +0 -0
- data/fmt/html.icons/warning.png +0 -0
- data/fmt/html.yaml +897 -0
- data/fmt/latex.yaml +2 -0
- data/fmt/man.yaml +2 -0
- data/fmt/text.yaml +2 -0
- data/lib/gerbil.rb +11 -0
- data/lib/gerbil/html.rb +149 -0
- data/lib/gerbil/rdoc.rb +91 -0
- metadata +99 -0
data/doc/guide.html
ADDED
@@ -0,0 +1,3416 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
5
|
+
<meta name="date" content="12 January 2008"/>
|
6
|
+
<meta name="author" content="Suraj N. Kurapati"/>
|
7
|
+
<meta name="generator" content="Gerbil 1.0.0"/>
|
8
|
+
<link rel="alternate" type="application/rss+xml" href="http://gerbil.rubyforge.org/news.xml"/>
|
9
|
+
<title>Gerbil 1.0.0 user guide</title>
|
10
|
+
|
11
|
+
<style type="text/css" media="screen">
|
12
|
+
body
|
13
|
+
{
|
14
|
+
color : #000000;
|
15
|
+
background-color : #FFFFFF;
|
16
|
+
line-height : 1.5em;
|
17
|
+
font-family : Calibri, Verdana, sans-serif;
|
18
|
+
}
|
19
|
+
|
20
|
+
/* emphasis */
|
21
|
+
|
22
|
+
em,
|
23
|
+
blockquote
|
24
|
+
{
|
25
|
+
font-family : Cambria, Georgia, serif;
|
26
|
+
}
|
27
|
+
|
28
|
+
/* headings */
|
29
|
+
|
30
|
+
h1,
|
31
|
+
h2,
|
32
|
+
h3,
|
33
|
+
h4,
|
34
|
+
h5,
|
35
|
+
h6,
|
36
|
+
.title
|
37
|
+
{
|
38
|
+
font-weight : lighter;
|
39
|
+
font-family : Constantia, "Book Antiqua", "URW Bookman L", serif;
|
40
|
+
}
|
41
|
+
|
42
|
+
#lof h1,
|
43
|
+
#lof h2,
|
44
|
+
#lof h3,
|
45
|
+
#lof h4,
|
46
|
+
#lof h5,
|
47
|
+
#lof h6
|
48
|
+
{
|
49
|
+
margin-top : 1.25em;
|
50
|
+
}
|
51
|
+
|
52
|
+
#content h1,
|
53
|
+
#content h2,
|
54
|
+
#content h3,
|
55
|
+
#content h4,
|
56
|
+
#content h5,
|
57
|
+
#content h6
|
58
|
+
{
|
59
|
+
margin-top : 2.5em;
|
60
|
+
line-height : 1.25em;
|
61
|
+
}
|
62
|
+
|
63
|
+
#content h1
|
64
|
+
{
|
65
|
+
font-size : 2.0em;
|
66
|
+
}
|
67
|
+
|
68
|
+
#content h2
|
69
|
+
{
|
70
|
+
font-size : 1.8em;
|
71
|
+
}
|
72
|
+
|
73
|
+
#content h3
|
74
|
+
{
|
75
|
+
font-size : 1.6em;
|
76
|
+
}
|
77
|
+
|
78
|
+
#content h4
|
79
|
+
{
|
80
|
+
font-size : 1.4em;
|
81
|
+
}
|
82
|
+
|
83
|
+
#content h5
|
84
|
+
{
|
85
|
+
font-size : 1.2em;
|
86
|
+
}
|
87
|
+
|
88
|
+
#content h6
|
89
|
+
{
|
90
|
+
font-size : 1.0em;
|
91
|
+
}
|
92
|
+
|
93
|
+
/* tables */
|
94
|
+
|
95
|
+
table
|
96
|
+
{
|
97
|
+
border : none;
|
98
|
+
}
|
99
|
+
|
100
|
+
th,
|
101
|
+
td
|
102
|
+
{
|
103
|
+
padding : 1em;
|
104
|
+
border : 1px solid #C0C0C0;
|
105
|
+
vertical-align : top;
|
106
|
+
background-color : #FFFFFF;
|
107
|
+
}
|
108
|
+
|
109
|
+
th
|
110
|
+
{
|
111
|
+
background-color : #F5F5F5;
|
112
|
+
}
|
113
|
+
|
114
|
+
table
|
115
|
+
{
|
116
|
+
margin : auto;
|
117
|
+
}
|
118
|
+
|
119
|
+
/* document structure */
|
120
|
+
|
121
|
+
#header
|
122
|
+
{
|
123
|
+
margin-bottom : 5em;
|
124
|
+
text-align : center;
|
125
|
+
}
|
126
|
+
|
127
|
+
#abstract
|
128
|
+
{
|
129
|
+
margin-bottom : 5em;
|
130
|
+
}
|
131
|
+
|
132
|
+
#toc li
|
133
|
+
{
|
134
|
+
list-style-type : none;
|
135
|
+
}
|
136
|
+
|
137
|
+
#toc li ul
|
138
|
+
{
|
139
|
+
padding-bottom : 1em;
|
140
|
+
border-left : thick solid #F5F5F5;
|
141
|
+
_border-left : none; /* for IE6 */
|
142
|
+
}
|
143
|
+
|
144
|
+
#toc li ul:hover
|
145
|
+
{
|
146
|
+
border-color : #DCDCDC;
|
147
|
+
}
|
148
|
+
|
149
|
+
#toc > ul
|
150
|
+
{
|
151
|
+
padding-left : 1em;
|
152
|
+
}
|
153
|
+
|
154
|
+
#references
|
155
|
+
{
|
156
|
+
margin-top : 5em;
|
157
|
+
}
|
158
|
+
|
159
|
+
#footer
|
160
|
+
{
|
161
|
+
border-top : thick dotted #DCDCDC;
|
162
|
+
padding-top : 1em;
|
163
|
+
margin-top : 5em;
|
164
|
+
text-align : center;
|
165
|
+
}
|
166
|
+
|
167
|
+
/* document nodes */
|
168
|
+
|
169
|
+
.part > .title,
|
170
|
+
.chapter > .title
|
171
|
+
{
|
172
|
+
padding-bottom : 0.5em;
|
173
|
+
}
|
174
|
+
|
175
|
+
.part > .title > big,
|
176
|
+
.chapter > .title > big
|
177
|
+
{
|
178
|
+
display : block;
|
179
|
+
margin-top : 0.25em;
|
180
|
+
}
|
181
|
+
|
182
|
+
.part .title big,
|
183
|
+
.chapter .title big
|
184
|
+
{
|
185
|
+
_display : block; /* for IE6 */
|
186
|
+
_margin-top : 0.25em; /* for IE6 */
|
187
|
+
_margin-bottom : 0.75em; /* for IE6 */
|
188
|
+
}
|
189
|
+
|
190
|
+
.paragraph > .title,
|
191
|
+
.tip > .title,
|
192
|
+
.note > .title,
|
193
|
+
.caution > .title,
|
194
|
+
.warning > .title,
|
195
|
+
.important > .title,
|
196
|
+
.figure > .title,
|
197
|
+
.table > .title,
|
198
|
+
.example > .title,
|
199
|
+
.equation > .title,
|
200
|
+
.procedure > .title
|
201
|
+
{
|
202
|
+
font-size : large;
|
203
|
+
margin-top : 2em;
|
204
|
+
}
|
205
|
+
|
206
|
+
.paragraph .title,
|
207
|
+
.tip .title,
|
208
|
+
.note .title,
|
209
|
+
.caution .title,
|
210
|
+
.warning .title,
|
211
|
+
.important .title,
|
212
|
+
.figure .title,
|
213
|
+
.table .title,
|
214
|
+
.example .title,
|
215
|
+
.equation .title,
|
216
|
+
.procedure .title
|
217
|
+
{
|
218
|
+
_font-size : large; /* for IE6 */
|
219
|
+
_font-weight : bold; /* large is not bold in IE6 */
|
220
|
+
_margin-top : 2em; /* for IE6 */
|
221
|
+
}
|
222
|
+
|
223
|
+
.tip ,
|
224
|
+
.note ,
|
225
|
+
.caution ,
|
226
|
+
.warning ,
|
227
|
+
.important,
|
228
|
+
.figure ,
|
229
|
+
.table ,
|
230
|
+
.example ,
|
231
|
+
.equation ,
|
232
|
+
.procedure
|
233
|
+
{
|
234
|
+
margin : 3em;
|
235
|
+
}
|
236
|
+
|
237
|
+
.tip > .icon,
|
238
|
+
.note > .icon,
|
239
|
+
.caution > .icon,
|
240
|
+
.warning > .icon,
|
241
|
+
.important > .icon
|
242
|
+
{
|
243
|
+
float : left;
|
244
|
+
margin : 0 1em 1em 0; /* top right bottom left */
|
245
|
+
}
|
246
|
+
|
247
|
+
.tip .icon,
|
248
|
+
.note .icon,
|
249
|
+
.caution .icon,
|
250
|
+
.warning .icon,
|
251
|
+
.important .icon
|
252
|
+
{
|
253
|
+
_display : none; /* IE6 cannot display embedded images */
|
254
|
+
}
|
255
|
+
|
256
|
+
.figure > .title
|
257
|
+
{
|
258
|
+
text-align : center;
|
259
|
+
}
|
260
|
+
|
261
|
+
.figure .title
|
262
|
+
{
|
263
|
+
_text-align : center; /* for IE6 */
|
264
|
+
}
|
265
|
+
|
266
|
+
.figure > .content img
|
267
|
+
{
|
268
|
+
display : block;
|
269
|
+
margin : auto;
|
270
|
+
}
|
271
|
+
|
272
|
+
.figure .content img
|
273
|
+
{
|
274
|
+
_display : block; /* for IE6 */
|
275
|
+
_margin : auto; /* for IE6 */
|
276
|
+
}
|
277
|
+
|
278
|
+
body
|
279
|
+
{
|
280
|
+
margin : auto;
|
281
|
+
padding : 0.5em;
|
282
|
+
max-width : 36em;
|
283
|
+
}
|
284
|
+
|
285
|
+
/* hyperlinks */
|
286
|
+
|
287
|
+
a
|
288
|
+
{
|
289
|
+
color : #0000FF;
|
290
|
+
text-decoration : none;
|
291
|
+
}
|
292
|
+
|
293
|
+
a:visited
|
294
|
+
{
|
295
|
+
color : #800080;
|
296
|
+
}
|
297
|
+
|
298
|
+
a:hover
|
299
|
+
{
|
300
|
+
color : #FF0000;
|
301
|
+
text-decoration : underline;
|
302
|
+
}
|
303
|
+
|
304
|
+
a:target
|
305
|
+
{
|
306
|
+
color : #FF0000;
|
307
|
+
text-decoration : underline;
|
308
|
+
}
|
309
|
+
|
310
|
+
a.toc:link,
|
311
|
+
a.toc:visited
|
312
|
+
{
|
313
|
+
text-decoration : none;
|
314
|
+
z-index : 1;
|
315
|
+
}
|
316
|
+
|
317
|
+
a img
|
318
|
+
{
|
319
|
+
border : none;
|
320
|
+
}
|
321
|
+
|
322
|
+
/* source code */
|
323
|
+
|
324
|
+
tt,
|
325
|
+
code,
|
326
|
+
pre
|
327
|
+
{
|
328
|
+
font-family : Consolas, "Lucida Console", monospace;
|
329
|
+
}
|
330
|
+
|
331
|
+
tt
|
332
|
+
{
|
333
|
+
font-weight : bold;
|
334
|
+
color : #A52A2A;
|
335
|
+
background-color : #FFFAF0;
|
336
|
+
}
|
337
|
+
|
338
|
+
/* output of syntax colorizer */
|
339
|
+
.code
|
340
|
+
{
|
341
|
+
background-color : #FFFFF0;
|
342
|
+
}
|
343
|
+
|
344
|
+
pre
|
345
|
+
{
|
346
|
+
line-height : normal;
|
347
|
+
border : 1px dashed #C0C0C0;
|
348
|
+
background-color : #F5FFDF;
|
349
|
+
padding : 1em;
|
350
|
+
overflow : auto;
|
351
|
+
cursor : text;
|
352
|
+
}
|
353
|
+
|
354
|
+
/*
|
355
|
+
pre:hover
|
356
|
+
{
|
357
|
+
border : none;
|
358
|
+
position : fixed;
|
359
|
+
z-index : 1;
|
360
|
+
margin : 0;
|
361
|
+
top : 0;
|
362
|
+
left : 0;
|
363
|
+
right : 0;
|
364
|
+
bottom : 0;
|
365
|
+
overflow : auto;
|
366
|
+
cursor : text;
|
367
|
+
}
|
368
|
+
*/
|
369
|
+
|
370
|
+
/* emphasis */
|
371
|
+
|
372
|
+
blockquote
|
373
|
+
{
|
374
|
+
margin : 1em;
|
375
|
+
border : 5px dotted #C0C0C0;
|
376
|
+
padding : 1em;
|
377
|
+
color : #444;
|
378
|
+
}
|
379
|
+
|
380
|
+
hr
|
381
|
+
{
|
382
|
+
color : #FF0000; /* for IE6 */
|
383
|
+
background-color : #FF0000; /* for Firefox */
|
384
|
+
}
|
385
|
+
|
386
|
+
</style>
|
387
|
+
<style type="text/css" media="print">
|
388
|
+
body
|
389
|
+
{
|
390
|
+
color : #000000;
|
391
|
+
background-color : #FFFFFF;
|
392
|
+
line-height : 1.5em;
|
393
|
+
font-family : Calibri, Verdana, sans-serif;
|
394
|
+
}
|
395
|
+
|
396
|
+
/* emphasis */
|
397
|
+
|
398
|
+
em,
|
399
|
+
blockquote
|
400
|
+
{
|
401
|
+
font-family : Cambria, Georgia, serif;
|
402
|
+
}
|
403
|
+
|
404
|
+
/* headings */
|
405
|
+
|
406
|
+
h1,
|
407
|
+
h2,
|
408
|
+
h3,
|
409
|
+
h4,
|
410
|
+
h5,
|
411
|
+
h6,
|
412
|
+
.title
|
413
|
+
{
|
414
|
+
font-weight : lighter;
|
415
|
+
font-family : Constantia, "Book Antiqua", "URW Bookman L", serif;
|
416
|
+
}
|
417
|
+
|
418
|
+
#lof h1,
|
419
|
+
#lof h2,
|
420
|
+
#lof h3,
|
421
|
+
#lof h4,
|
422
|
+
#lof h5,
|
423
|
+
#lof h6
|
424
|
+
{
|
425
|
+
margin-top : 1.25em;
|
426
|
+
}
|
427
|
+
|
428
|
+
#content h1,
|
429
|
+
#content h2,
|
430
|
+
#content h3,
|
431
|
+
#content h4,
|
432
|
+
#content h5,
|
433
|
+
#content h6
|
434
|
+
{
|
435
|
+
margin-top : 2.5em;
|
436
|
+
line-height : 1.25em;
|
437
|
+
}
|
438
|
+
|
439
|
+
#content h1
|
440
|
+
{
|
441
|
+
font-size : 2.0em;
|
442
|
+
}
|
443
|
+
|
444
|
+
#content h2
|
445
|
+
{
|
446
|
+
font-size : 1.8em;
|
447
|
+
}
|
448
|
+
|
449
|
+
#content h3
|
450
|
+
{
|
451
|
+
font-size : 1.6em;
|
452
|
+
}
|
453
|
+
|
454
|
+
#content h4
|
455
|
+
{
|
456
|
+
font-size : 1.4em;
|
457
|
+
}
|
458
|
+
|
459
|
+
#content h5
|
460
|
+
{
|
461
|
+
font-size : 1.2em;
|
462
|
+
}
|
463
|
+
|
464
|
+
#content h6
|
465
|
+
{
|
466
|
+
font-size : 1.0em;
|
467
|
+
}
|
468
|
+
|
469
|
+
/* tables */
|
470
|
+
|
471
|
+
table
|
472
|
+
{
|
473
|
+
border : none;
|
474
|
+
}
|
475
|
+
|
476
|
+
th,
|
477
|
+
td
|
478
|
+
{
|
479
|
+
padding : 1em;
|
480
|
+
border : 1px solid #C0C0C0;
|
481
|
+
vertical-align : top;
|
482
|
+
background-color : #FFFFFF;
|
483
|
+
}
|
484
|
+
|
485
|
+
th
|
486
|
+
{
|
487
|
+
background-color : #F5F5F5;
|
488
|
+
}
|
489
|
+
|
490
|
+
table
|
491
|
+
{
|
492
|
+
margin : auto;
|
493
|
+
}
|
494
|
+
|
495
|
+
/* document structure */
|
496
|
+
|
497
|
+
#header
|
498
|
+
{
|
499
|
+
margin-bottom : 5em;
|
500
|
+
text-align : center;
|
501
|
+
}
|
502
|
+
|
503
|
+
#abstract
|
504
|
+
{
|
505
|
+
margin-bottom : 5em;
|
506
|
+
}
|
507
|
+
|
508
|
+
#toc li
|
509
|
+
{
|
510
|
+
list-style-type : none;
|
511
|
+
}
|
512
|
+
|
513
|
+
#toc li ul
|
514
|
+
{
|
515
|
+
padding-bottom : 1em;
|
516
|
+
border-left : thick solid #F5F5F5;
|
517
|
+
_border-left : none; /* for IE6 */
|
518
|
+
}
|
519
|
+
|
520
|
+
#toc li ul:hover
|
521
|
+
{
|
522
|
+
border-color : #DCDCDC;
|
523
|
+
}
|
524
|
+
|
525
|
+
#toc > ul
|
526
|
+
{
|
527
|
+
padding-left : 1em;
|
528
|
+
}
|
529
|
+
|
530
|
+
#references
|
531
|
+
{
|
532
|
+
margin-top : 5em;
|
533
|
+
}
|
534
|
+
|
535
|
+
#footer
|
536
|
+
{
|
537
|
+
border-top : thick dotted #DCDCDC;
|
538
|
+
padding-top : 1em;
|
539
|
+
margin-top : 5em;
|
540
|
+
text-align : center;
|
541
|
+
}
|
542
|
+
|
543
|
+
/* document nodes */
|
544
|
+
|
545
|
+
.part > .title,
|
546
|
+
.chapter > .title
|
547
|
+
{
|
548
|
+
padding-bottom : 0.5em;
|
549
|
+
}
|
550
|
+
|
551
|
+
.part > .title > big,
|
552
|
+
.chapter > .title > big
|
553
|
+
{
|
554
|
+
display : block;
|
555
|
+
margin-top : 0.25em;
|
556
|
+
}
|
557
|
+
|
558
|
+
.part .title big,
|
559
|
+
.chapter .title big
|
560
|
+
{
|
561
|
+
_display : block; /* for IE6 */
|
562
|
+
_margin-top : 0.25em; /* for IE6 */
|
563
|
+
_margin-bottom : 0.75em; /* for IE6 */
|
564
|
+
}
|
565
|
+
|
566
|
+
.paragraph > .title,
|
567
|
+
.tip > .title,
|
568
|
+
.note > .title,
|
569
|
+
.caution > .title,
|
570
|
+
.warning > .title,
|
571
|
+
.important > .title,
|
572
|
+
.figure > .title,
|
573
|
+
.table > .title,
|
574
|
+
.example > .title,
|
575
|
+
.equation > .title,
|
576
|
+
.procedure > .title
|
577
|
+
{
|
578
|
+
font-size : large;
|
579
|
+
margin-top : 2em;
|
580
|
+
}
|
581
|
+
|
582
|
+
.paragraph .title,
|
583
|
+
.tip .title,
|
584
|
+
.note .title,
|
585
|
+
.caution .title,
|
586
|
+
.warning .title,
|
587
|
+
.important .title,
|
588
|
+
.figure .title,
|
589
|
+
.table .title,
|
590
|
+
.example .title,
|
591
|
+
.equation .title,
|
592
|
+
.procedure .title
|
593
|
+
{
|
594
|
+
_font-size : large; /* for IE6 */
|
595
|
+
_font-weight : bold; /* large is not bold in IE6 */
|
596
|
+
_margin-top : 2em; /* for IE6 */
|
597
|
+
}
|
598
|
+
|
599
|
+
.tip ,
|
600
|
+
.note ,
|
601
|
+
.caution ,
|
602
|
+
.warning ,
|
603
|
+
.important,
|
604
|
+
.figure ,
|
605
|
+
.table ,
|
606
|
+
.example ,
|
607
|
+
.equation ,
|
608
|
+
.procedure
|
609
|
+
{
|
610
|
+
margin : 3em;
|
611
|
+
}
|
612
|
+
|
613
|
+
.tip > .icon,
|
614
|
+
.note > .icon,
|
615
|
+
.caution > .icon,
|
616
|
+
.warning > .icon,
|
617
|
+
.important > .icon
|
618
|
+
{
|
619
|
+
float : left;
|
620
|
+
margin : 0 1em 1em 0; /* top right bottom left */
|
621
|
+
}
|
622
|
+
|
623
|
+
.tip .icon,
|
624
|
+
.note .icon,
|
625
|
+
.caution .icon,
|
626
|
+
.warning .icon,
|
627
|
+
.important .icon
|
628
|
+
{
|
629
|
+
_display : none; /* IE6 cannot display embedded images */
|
630
|
+
}
|
631
|
+
|
632
|
+
.figure > .title
|
633
|
+
{
|
634
|
+
text-align : center;
|
635
|
+
}
|
636
|
+
|
637
|
+
.figure .title
|
638
|
+
{
|
639
|
+
_text-align : center; /* for IE6 */
|
640
|
+
}
|
641
|
+
|
642
|
+
.figure > .content img
|
643
|
+
{
|
644
|
+
display : block;
|
645
|
+
margin : auto;
|
646
|
+
}
|
647
|
+
|
648
|
+
.figure .content img
|
649
|
+
{
|
650
|
+
_display : block; /* for IE6 */
|
651
|
+
_margin : auto; /* for IE6 */
|
652
|
+
}
|
653
|
+
|
654
|
+
/* headings */
|
655
|
+
|
656
|
+
h1,
|
657
|
+
h2,
|
658
|
+
h3,
|
659
|
+
h4,
|
660
|
+
h5,
|
661
|
+
h6
|
662
|
+
{
|
663
|
+
font-weight : normal;
|
664
|
+
}
|
665
|
+
|
666
|
+
/* hyperlinks */
|
667
|
+
|
668
|
+
a:link,
|
669
|
+
a:visited,
|
670
|
+
a:active
|
671
|
+
{
|
672
|
+
color : #0000FF;
|
673
|
+
font-weight : bold;
|
674
|
+
text-decoration : underline;
|
675
|
+
}
|
676
|
+
|
677
|
+
a:after
|
678
|
+
{
|
679
|
+
content : " (" attr(href) ")";
|
680
|
+
font-family : sans-serif;
|
681
|
+
font-weight : normal;
|
682
|
+
font-size : 90%;
|
683
|
+
}
|
684
|
+
|
685
|
+
a[href^="#"]:after
|
686
|
+
{
|
687
|
+
content : "";
|
688
|
+
}
|
689
|
+
|
690
|
+
a[href^="#"]
|
691
|
+
{
|
692
|
+
color : #A52A2A;
|
693
|
+
font-weight : lighter;
|
694
|
+
text-decoration : none;
|
695
|
+
font-style : italic;
|
696
|
+
}
|
697
|
+
|
698
|
+
a.toc:link,
|
699
|
+
a.toc:visited
|
700
|
+
{
|
701
|
+
color : inherit;
|
702
|
+
.color : #000000; /* for IE6 and IE7 */
|
703
|
+
font-weight : inherit;
|
704
|
+
text-decoration : none;
|
705
|
+
font-style : normal;
|
706
|
+
}
|
707
|
+
|
708
|
+
/* source code */
|
709
|
+
|
710
|
+
tt
|
711
|
+
{
|
712
|
+
color : inherit;
|
713
|
+
background-color : inherit;
|
714
|
+
font-weight : normal;
|
715
|
+
}
|
716
|
+
|
717
|
+
pre,
|
718
|
+
.code
|
719
|
+
{
|
720
|
+
border : none;
|
721
|
+
overflow : visible;
|
722
|
+
background-color : inherit;
|
723
|
+
}
|
724
|
+
|
725
|
+
/* document structure */
|
726
|
+
|
727
|
+
#lof
|
728
|
+
{
|
729
|
+
display : none;
|
730
|
+
}
|
731
|
+
|
732
|
+
/* document nodes */
|
733
|
+
|
734
|
+
.part > .title > big,
|
735
|
+
.chapter > .title > big
|
736
|
+
{
|
737
|
+
padding-bottom : 0.5em;
|
738
|
+
}
|
739
|
+
|
740
|
+
.part .title big,
|
741
|
+
.chapter .title big
|
742
|
+
{
|
743
|
+
_padding-bottom : 0.5em; /* for IE6 */
|
744
|
+
}
|
745
|
+
|
746
|
+
</style>
|
747
|
+
</head>
|
748
|
+
<body>
|
749
|
+
<div id="header">
|
750
|
+
<img src="gerbil.png" alt="Gerbil logo" title="Gerbil logo"/>
|
751
|
+
<h1 class="title">Gerbil 1.0.0 user guide</h1>
|
752
|
+
<h2 class="authors"><a href="http://snk.tuxfamily.org">Suraj N. Kurapati</a></h2>
|
753
|
+
<h3 class="date">12 January 2008</h3>
|
754
|
+
</div>
|
755
|
+
|
756
|
+
|
757
|
+
<div id="toc"><h1>Contents</h1> <ul><li>1 <a id="a-606119568" href="#Introduction">Introduction</a><ul><li>1.1 <a id="a-606159968" href="#Features">Features</a></li><li>1.2 <a id="a-606177788" href="#License">License</a></li><li>1.3 <a id="a-606188228" href="#Project-links">Project links</a></li><li>1.4 <a id="a-606197328" href="#Testimonials">Testimonials</a></li></ul></li><li>2 <a id="a-606221808" href="#Setup">Setup</a><ul><li>2.1 <a id="a-606231778" href="#Requirements">Requirements</a></li><li>2.2 <a id="a-606260568" href="#Installation">Installation</a></li><li>2.3 <a id="a-606279698" href="#Manifest">Manifest</a></li><li>2.4 <a id="a-606366508" href="#Version-numbering-system">Version numbering system</a></li></ul></li><li>3 <a id="a-605821358" href="#Theory-of-operation">Theory of operation</a><ul><li>3.1 <a id="a-605973608" href="#Nodes">Nodes</a><ul><li>3.1.1 <a id="a-606391018" href="#Node.class">The <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> class</a></li></ul></li><li>3.2 <a id="a-606400128" href="#SpecFile">Format specification file</a><ul><li>3.2.1 <a id="a-606411538" href="#SpecFile.nodes">Node definition</a><ul><li>3.2.1.1 <a id="a-606416068" href="#SpecFile.nodes.output">Node output template</a></li></ul></li><li>3.2.2 <a id="a-606422248" href="#SpecFile.output">Document output template</a></li><li>3.2.3 <a id="a-606427348" href="#HelloWorld">Creating your own custom format</a></li></ul></li></ul></li><li>4 <a id="a-606480938" href="#Usage">Usage</a><ul><li>4.1 <a id="a-606487938" href="#include">The <strong>include</strong> directive</a></li><li>4.2 <a id="a-606495288" href="#unindent">The <code class="code"><span style="color:#d70; font-weight:bold">$unindent</span></code> variable</a></li></ul></li><li>5 <a id="a-606500788" href="#Formats">Formats</a><ul><li>5.1 <a id="a-606511128" href="#html">HTML</a><ul><li>5.1.1 <a id="a-606515908" href="#Text-to-HTML-conversion">Text to HTML conversion</a><ul><li>5.1.1.1 <a id="a-606523368" href="#Syntax-coloring-for-source-code">Syntax coloring for source code</a><ul><li>5.1.1.1.1 <a id="a-606526838" href="#Specifying-the-programming-language">Specifying the programming language</a></li></ul></li><li>5.1.1.2 <a id="a-606530408" href="#Smart-sizing-of-source-code">Smart sizing of source code</a></li><li>5.1.1.3 <a id="a-606533778" href="#Protecting-verbatim-text">Protecting verbatim text</a></li></ul></li><li>5.1.2 <a id="a-606537558" href="#Parameters">Parameters</a></li><li>5.1.3 <a id="a-606544438" href="#Methods">Methods</a></li><li>5.1.4 <a id="a-605947998" href="#html.nodes">Nodes</a><ul><li>5.1.4.1 <a id="a-606977348" href="#Structure">Structure</a><ul><li>5.1.4.1.1 <a id="a-606979058" href="#html.nodes.header">header</a></li><li>5.1.4.1.2 <a id="a-606981438" href="#html.nodes.footer">footer</a></li><li>5.1.4.1.3 <a id="a-606983888" href="#html.nodes.abstract">abstract</a></li><li>5.1.4.1.4 <a id="a-606986568" href="#html.nodes.xref">xref</a></li></ul></li><li>5.1.4.2 <a id="a-607003538" href="#Organization">Organization</a><ul><li>5.1.4.2.1 <a id="a-607006398" href="#html.nodes.part">part</a><ul><li>5.1.4.2.1.1 <a id="a-607008508" href="#An-example">An example</a></li></ul></li><li>5.1.4.2.2 <a id="a-607013408" href="#html.nodes.chapter">chapter</a><ul><li>5.1.4.2.2.1 <a id="a-607015098" href="#An-example-607320788">An example</a></li></ul></li><li>5.1.4.2.3 <a id="a-607017608" href="#html.nodes.section">section</a><ul><li>5.1.4.2.3.1 <a id="a-607019328" href="#An-example-607375788">An example</a></li></ul></li><li>5.1.4.2.4 <a id="a-607022188" href="#html.nodes.paragraph">paragraph</a></li></ul></li><li>5.1.4.3 <a id="a-607029428" href="#Admonitions">Admonitions</a><ul><li>5.1.4.3.1 <a id="a-607044968" href="#html.nodes.warning">warning</a></li><li>5.1.4.3.2 <a id="a-607058408" href="#html.nodes.caution">caution</a></li><li>5.1.4.3.3 <a id="a-607083158" href="#html.nodes.important">important</a></li><li>5.1.4.3.4 <a id="a-607106368" href="#html.nodes.note">note</a></li><li>5.1.4.3.5 <a id="a-607126398" href="#html.nodes.tip">tip</a></li></ul></li><li>5.1.4.4 <a id="a-607146608" href="#Auxilary-materials">Auxilary materials</a><ul><li>5.1.4.4.1 <a id="a-607156758" href="#html.nodes.figure">figure</a></li><li>5.1.4.4.2 <a id="a-607167508" href="#html.nodes.table">table</a></li><li>5.1.4.4.3 <a id="a-607181668" href="#html.nodes.example">example</a></li><li>5.1.4.4.4 <a id="a-607192218" href="#html.nodes.equation">equation</a></li><li>5.1.4.4.5 <a id="a-607200198" href="#html.nodes.procedure">procedure</a></li></ul></li><li>5.1.4.5 <a id="a-607214698" href="#Bibliography">Bibliography</a><ul><li>5.1.4.5.1 <a id="a-607220038" href="#html.nodes.reference">reference</a></li><li>5.1.4.5.2 <a id="a-607228848" href="#html.nodes.cite">cite</a></li></ul></li></ul></li></ul></li><li>5.2 <a id="a-607236588" href="#text">Plain text</a></li><li>5.3 <a id="a-607238658" href="#latex">LaTeX</a></li><li>5.4 <a id="a-607240758" href="#man">UNIX man page</a></li></ul></li></ul></div>
|
758
|
+
|
759
|
+
<div id="lof"><h1>Cautions</h1> <ol><li><a id="a-607073178" href="#An-example-607498328">An example</a></li></ol><h1>Equations</h1> <ol><li><a id="a-607196278" href="#An-example-607221568">An example</a></li></ol><h1>Examples</h1> <ol><li><a id="a-606456098" href="#HelloWorld.spec">HelloWorld format specification file</a></li><li><a id="a-606464288" href="#HelloWorld.input">Input document for HelloWorld format</a></li><li><a id="a-606473548" href="#HelloWorld.output">Output of HelloWorld format</a></li><li><a id="a-607184898" href="#An-example-607042088">An example</a></li></ol><h1>Figures</h1> <ol><li><a id="a-607164328" href="#An-example-607631908">An example</a></li></ol><h1>Importants</h1> <ol><li><a id="a-607095998" href="#An-example-607529068">An example</a></li></ol><h1>Notes</h1> <ol><li><a id="a-606154428" href="#See-the-source-of-this-guide">See the source of this guide</a></li><li><a id="a-606451038" href="#Author-s-note-about-documentation-quality">Author’s note about documentation quality</a></li><li><a id="a-607119428" href="#An-example-607565368">An example</a></li></ol><h1>Procedures</h1> <ol><li><a id="a-607207998" href="#An-example-607256878">An example</a></li></ol><h1>Tables</h1> <ol><li><a id="a-607171508" href="#An-example-607655288">An example</a></li></ol><h1>Tips</h1> <ol><li><a id="a-607138628" href="#An-example-607596398">An example</a></li></ol><h1>Warnings</h1> <ol><li><a id="a-607049428" href="#An-example-607469688">An example</a></li></ol></div>
|
760
|
+
|
761
|
+
<div id="content">
|
762
|
+
<div class="chapter">
|
763
|
+
<h1 class="title">
|
764
|
+
Chapter
|
765
|
+
<a class="toc" id="Introduction" href="#a-606119568">1</a>
|
766
|
+
|
767
|
+
<br/>
|
768
|
+
|
769
|
+
<big>Introduction</big>
|
770
|
+
</h1>
|
771
|
+
|
772
|
+
<div class="content"><p>Gerbil is an <strong>extensible document generator</strong> based on <a href="http://www.ruby-doc.org/docs/ProgrammingRuby/html/web.html#S2">eRuby</a> that outputs to any format you want: <a class="xref" href="#html">HTML (web page)</a>, <a class="xref" href="#latex">LaTeX</a>, <a class="xref" href="#man">UNIX man page</a>, <a class="xref" href="#text">plain text</a>, <a class="xref" href="#HelloWorld">your own custom format</a>, and so on.</p>
|
773
|
+
|
774
|
+
|
775
|
+
<p>Gerbil is <strong>lighter</strong> and more <strong>flexible</strong> than <a href="http://www.docbook.org">DocBook</a>, <a href="http://deplate.sourceforge.net">Deplate</a>, and <a href="http://www.jus.uio.no/sisu/SiSU/">SiSU</a> because it is small, fast, and lets you <a class="xref" href="#HelloWorld">define your own custom format</a>. Furthermore, Gerbil is <strong>scriptable</strong> unlike raw text generators such as <a href="http://www.methods.co.nz/asciidoc/">AsciiDoc</a>, <a href="http://txt2tags.sourceforge.net">txt2tags</a>, and <a href="http://www.triptico.com/software/grutatxt.html">Grutatxt</a> because it lets you inject Ruby code directly into your documents for dynamic content generation.</p>
|
776
|
+
|
777
|
+
|
778
|
+
<p>Gerbil is <strong>open-source software</strong> (see <a class="xref" href="#License">Section 1.2: <em>License</em></a>) so feel free to contribute your improvements and discuss your ideas in the <a href="http://rubyforge.org/mailman/listinfo/gerbil-talk">project mailing list</a>. You can obtain the source code from Gerbil’s <a href="http://darcs.net">Darcs</a> repository by running the following command:</p>
|
779
|
+
|
780
|
+
|
781
|
+
<pre>darcs get http://gerbil.rubyforge.org/src gerbil</pre>
|
782
|
+
|
783
|
+
|
784
|
+
<p><div class="note">
|
785
|
+
<p class="title"><a class="toc" id="See-the-source-of-this-guide" href="#a-606154428">Note 1</a>. See the source of this guide</p>
|
786
|
+
|
787
|
+
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
788
|
+
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
789
|
+
Lmlua3NjYXBlLm9yZ5vuPBoAAAmCSURBVGiB1ZltbJXlGcd/9/N+Tlssh1Ja
|
790
|
+
hNEJaK2UFxFptqC2wGCSTWdM3DSQzWVDEzVxy4xfjNkHQ8xMnEEXviwZ62Rj
|
791
|
+
6siWTcVBZeJA5yBQpOWlKNZSaEvpyyk95zwv970Pp+fY5/S0tFBkXsmTc67n
|
792
|
+
eu77+f/u6349Ryil+Cqbdq0FXKldEuClp+3nfvVz/eJLT9vPXQv/igFc13tq
|
793
|
+
w4/ujLqu99S18C9lRr6br7zyyi2WZb2eSqUqpVSUlE5BSmW8/PLL6sv2bdtu
|
794
|
+
TiaT9z/++ONN486AZVm/XLiw+qZlt98Wun/bsqUhf+nSJSF/ya2LQv6ixQtD
|
795
|
+
/sJFC0L+guqqkF91S2XIr6y6idlfm1Vp2/Yz+XSOCiCEqDJMQ3ze+hm6bnC+
|
796
|
+
sx9d1zl+vBlN1znf2Y+m6TQfa0LTvvCbmo6G/KNHj4T8Ix83hvzGI4dD/uHG
|
797
|
+
QyG/peUElmUJIURlPp2jAkgpiwXg+R5FM9dRv3U/heXrkFJSWHZ32i/7NlJK
|
798
|
+
CsrWUr91P9EZa5FSEildQ/3W/USmfwspJc701dRv3Y9dshopJda0VdRv3Y8V
|
799
|
+
W4mUEjO2kvqt+zCm1iGlxCiu5fe/24defBeu6yHSkopHAxD51oEtW7bEb1++
|
800
|
+
rLC5+ShBEKCU+uJCgWJCvlJD9/iinlw/o2O4b5omixct4fixkz2PPPJILB9A
|
801
|
+
3kEspYzOmjWbxYuWjIiNtfBdjdjg4EWam44XjhYf0YU2b948xTTNoGRaSbjl
|
802
|
+
R2mlqx0rLCxC0zR98+bNdj6AERkIgiDmOI6nlDK/7NbOF1NKYdt2KplMxoCz
|
803
|
+
ufERAKZpxiKRSDC8wnfeeWfUl06W0FxbtWpV9tloNOoPDg6OD0BKGYtEIqGX
|
804
|
+
rV69etKFXio2vGs5jqOklOMbxJqmxaLRqBheSRAEo77sSoWOZkKI7DORSERo
|
805
|
+
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
|
844
|
+
" alt="note" class="icon"/>
|
845
|
+
|
846
|
+
<div class="content">Did you know that this user guide was generated by Gerbil? Here is <a href="guide.erb">the source document</a> to prove it!</div>
|
847
|
+
</div>
|
848
|
+
<div class="section">
|
849
|
+
<h2 class="title">
|
850
|
+
<a class="toc" id="Features" href="#a-606159968">1.1</a> Features
|
851
|
+
</h2>
|
852
|
+
<div class="content"><ul>
|
853
|
+
<li>Composed of <strong>less than 200 lines</strong> of code!</li>
|
854
|
+
<li>Lets you <a class="xref" href="#HelloWorld"><strong>define your own</strong> document format</a>.</li>
|
855
|
+
<li>Supports <strong>any text-based output</strong> format.</li>
|
856
|
+
<li>Generates a <strong>table of contents</strong> automatically.</li>
|
857
|
+
</ul></div>
|
858
|
+
</div>
|
859
|
+
<div class="section">
|
860
|
+
<h2 class="title">
|
861
|
+
<a class="toc" id="License" href="#a-606177788">1.2</a> License
|
862
|
+
</h2>
|
863
|
+
<div class="content"><p>Copyright 2006 Suraj N. Kurapati <SNK at GNA dot ORG></p>
|
864
|
+
|
865
|
+
|
866
|
+
<p>Permission is hereby granted, free of charge, to any person obtaining a
|
867
|
+
copy of this software and associated documentation files (the "Software"),
|
868
|
+
to deal in the Software without restriction, including without limitation
|
869
|
+
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
870
|
+
and/or sell copies of the Software, and to permit persons to whom the
|
871
|
+
Software is furnished to do so, subject to the following conditions:</p>
|
872
|
+
|
873
|
+
|
874
|
+
<ul>
|
875
|
+
<li>All copies and substantial portions of the Software (the "Derivatives")
|
876
|
+
and their corresponding machine-readable source code (the "Code") must
|
877
|
+
include the above copyright notice and this permission notice.</li>
|
878
|
+
</ul>
|
879
|
+
|
880
|
+
|
881
|
+
<ul>
|
882
|
+
<li>Upon distribution, the Derivatives must be accompanied either by the Code
|
883
|
+
or—provided that the Code is obtainable for no more than the cost of
|
884
|
+
distribution plus a nominal fee—by information on how to obtain the Code.</li>
|
885
|
+
</ul>
|
886
|
+
|
887
|
+
|
888
|
+
<p><span class="caps">THE SOFTWARE IS PROVIDED</span> "AS IS", <span class="caps">WITHOUT WARRANTY OF ANY KIND</span>, EXPRESS OR
|
889
|
+
IMPLIED, INCLUDING <span class="caps">BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY</span>, FITNESS
|
890
|
+
<span class="caps">FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT</span>. IN <span class="caps">NO EVENT SHALL THE AUTHORS OR</span>
|
891
|
+
<span class="caps">COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM</span>, DAMAGES <span class="caps">OR OTHER LIABILITY</span>, WHETHER
|
892
|
+
<span class="caps">IN AN ACTION OF CONTRACT</span>, TORT <span class="caps">OR OTHERWISE</span>, ARISING FROM, OUT <span class="caps">OF OR IN</span>
|
893
|
+
<span class="caps">CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE</span>.</p></div>
|
894
|
+
</div>
|
895
|
+
<div class="section">
|
896
|
+
<h2 class="title">
|
897
|
+
<a class="toc" id="Project-links" href="#a-606188228">1.3</a> Project links
|
898
|
+
</h2>
|
899
|
+
<div class="content"><ul>
|
900
|
+
<li><a href="http://gerbil.rubyforge.org/news.xml">Announcements</a> <img src="http://gerbil.rubyforge.org/feed-icon-28x28.png" title="RSS icon" alt="RSS icon" /> – project news and release announcements.</li>
|
901
|
+
<li><a href="http://rubyforge.org/frs/?group_id=4905">Download area</a> – place to obtain release packages.</li>
|
902
|
+
<li><a href="http://rubyforge.org/mailman/listinfo/gerbil-talk">Mailing list</a> – ask questions, get help, discuss.</li>
|
903
|
+
</ul></div>
|
904
|
+
</div>
|
905
|
+
<div class="section">
|
906
|
+
<h2 class="title">
|
907
|
+
<a class="toc" id="Testimonials" href="#a-606197328">1.4</a> Testimonials
|
908
|
+
</h2>
|
909
|
+
<div class="content"><blockquote>
|
910
|
+
<p>I actually felt like printing it [the user guide], because it’s just so well-thought typographically… Even if it [Gerbil] weren’t great by itself, I’d feel good just looking at the manual. —<a href="http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/283052"><em>Vitor Peres</em> in [ruby-talk:283052]</a></p>
|
911
|
+
</blockquote></div>
|
912
|
+
</div></p></div>
|
913
|
+
</div>
|
914
|
+
<div class="chapter">
|
915
|
+
<h1 class="title">
|
916
|
+
Chapter
|
917
|
+
<a class="toc" id="Setup" href="#a-606221808">2</a>
|
918
|
+
|
919
|
+
<br/>
|
920
|
+
|
921
|
+
<big>Setup</big>
|
922
|
+
</h1>
|
923
|
+
|
924
|
+
<div class="content"><div class="section">
|
925
|
+
<h2 class="title">
|
926
|
+
<a class="toc" id="Requirements" href="#a-606231778">2.1</a> Requirements
|
927
|
+
</h2>
|
928
|
+
<div class="content"><p>Your system needs the following software to run Gerbil.</p>
|
929
|
+
|
930
|
+
|
931
|
+
<table border="1">
|
932
|
+
<tr>
|
933
|
+
<th>Software </th>
|
934
|
+
<th>Notes </th>
|
935
|
+
</tr>
|
936
|
+
<tr>
|
937
|
+
<td> <a href="http://ruby-lang.org">Ruby</a> </td>
|
938
|
+
<td> Version 1.8.x is required. </td>
|
939
|
+
</tr>
|
940
|
+
<tr>
|
941
|
+
<td> <a href="http://whytheluckystiff.net/ruby/redcloth/">RedCloth</a> </td>
|
942
|
+
<td> Required by the <a class="xref" href="#html">default HTML format</a>. </td>
|
943
|
+
</tr>
|
944
|
+
<tr>
|
945
|
+
<td> <a href="http://coderay.rubychan.de/">CodeRay</a> </td>
|
946
|
+
<td> Required by the <a class="xref" href="#html">default HTML format</a>. </td>
|
947
|
+
</tr>
|
948
|
+
</table>
|
949
|
+
|
950
|
+
|
951
|
+
|
952
|
+
|
953
|
+
<p>If your system has <a href="http://rubygems.org/">RubyGems</a>, then you can install RedCloth and CodeRay by running the following command:</p>
|
954
|
+
|
955
|
+
|
956
|
+
<pre>gem install RedCloth coderay</pre></div>
|
957
|
+
</div>
|
958
|
+
<div class="section">
|
959
|
+
<h2 class="title">
|
960
|
+
<a class="toc" id="Installation" href="#a-606260568">2.2</a> Installation
|
961
|
+
</h2>
|
962
|
+
<div class="content"><p>If your system has <a href="http://rubygems.org/">RubyGems</a>, then you can install Gerbil by running the following commands:</p>
|
963
|
+
|
964
|
+
|
965
|
+
<pre>gem install gerbil
|
966
|
+
gerbil -v</pre>
|
967
|
+
|
968
|
+
|
969
|
+
Otherwise, follow these instructions:
|
970
|
+
<ol>
|
971
|
+
<li>Download the newest release package from <a href="http://rubyforge.org/frs/?group_id=4905">the download area</a>.</li>
|
972
|
+
<li>Extract the release package anywhere you want on your system.</li>
|
973
|
+
<li>Go inside the extracted directory and run the following command:
|
974
|
+
<pre>ruby bin/gerbil -v</pre></li>
|
975
|
+
</ol>
|
976
|
+
|
977
|
+
|
978
|
+
<p>If the installation was successful, then you will see output like this: <pre>Gerbil 1.0.0 (2008-01-12) http://gerbil.rubyforge.org /home/sun/src/gerbil
|
979
|
+
</pre></p>
|
980
|
+
|
981
|
+
|
982
|
+
<p>Otherwise, you can ask for help in the <a href="http://rubyforge.org/mailman/listinfo/gerbil-talk">project mailing list</a>.</p></div>
|
983
|
+
</div>
|
984
|
+
<div class="section">
|
985
|
+
<h2 class="title">
|
986
|
+
<a class="toc" id="Manifest" href="#a-606279698">2.3</a> Manifest
|
987
|
+
</h2>
|
988
|
+
<div class="content">Now that Gerbil is installed on your system, let us examine its installation directory.
|
989
|
+
<ul>
|
990
|
+
<li>If you installed Gerbil manually, then you already know the location of its installation directory.</li>
|
991
|
+
<li>If you installed Gerbil using RubyGems, then run <pre>gerbil -v</pre> and select the right-most item in the output—that is the path of Gerbil’s installation directory.</li>
|
992
|
+
</ul>
|
993
|
+
|
994
|
+
|
995
|
+
Inside Gerbil’s installation directory, you will see (among other things) the following items:
|
996
|
+
<ul>
|
997
|
+
<li><tt>bin/</tt> – contains executable programs.
|
998
|
+
<ul>
|
999
|
+
<li><tt>gerbil</tt> – the main source code of Gerbil.</li>
|
1000
|
+
</ul>
|
1001
|
+
</li>
|
1002
|
+
<li><tt>fmt/</tt> – contains the predefined set of format specification files (see <a class="xref" href="#SpecFile">Section 3.2: <em>Format specification file</em></a>). If you ever need to install your custom format specification file globally, put it inside this directory.
|
1003
|
+
<ul>
|
1004
|
+
<li><tt>latex.yaml</tt> – high-quality typesetting</li>
|
1005
|
+
<li><tt>html.yaml</tt> – web page for the Internet</li>
|
1006
|
+
<li><tt>man.yaml</tt> – manual page for UNIX</li>
|
1007
|
+
<li><tt>text.yaml</tt> – plain text, nothing fancy</li>
|
1008
|
+
</ul>
|
1009
|
+
</li>
|
1010
|
+
<li><tt>lib/</tt> – Gerbil automatically adds this directory to Ruby’s load path.
|
1011
|
+
<ul>
|
1012
|
+
<li><tt>gerbil.rb</tt> – project version information.</li>
|
1013
|
+
<li><tt>gerbil/</tt>
|
1014
|
+
<ul>
|
1015
|
+
<li><tt>html.rb</tt> – provides the <code class="code"><span style="color:#036; font-weight:bold">String</span><span style="color:#888">#to_html</span></code> method.</li>
|
1016
|
+
<li><tt>rdoc.rb</tt> – provides RDoc parse trees to Ruby code.</li>
|
1017
|
+
</ul>
|
1018
|
+
</li>
|
1019
|
+
</ul>
|
1020
|
+
</li>
|
1021
|
+
<li><tt>doc/</tt> – contains the user guide and other documentation.
|
1022
|
+
<ul>
|
1023
|
+
<li><tt>gerbil.svg</tt> – the source file of the Gerbil logo.</li>
|
1024
|
+
<li><tt>guide.erb</tt> – the source file of this user guide.</li>
|
1025
|
+
</ul>
|
1026
|
+
</li>
|
1027
|
+
<li><tt>LICENSE</tt> – the project license and copyright notice.</li>
|
1028
|
+
</ul></div>
|
1029
|
+
</div>
|
1030
|
+
<div class="section">
|
1031
|
+
<h2 class="title">
|
1032
|
+
<a class="toc" id="Version-numbering-system" href="#a-606366508">2.4</a> Version numbering system
|
1033
|
+
</h2>
|
1034
|
+
<div class="content">Gerbil uses the <a href="http://www.rubygems.org/read/chapter/7">RubyGems rational versioning policy</a> to number its releases. This <strong>major.minor.patch</strong> numbering policy <a href="http://ablog.apress.com/?p=738">is summarized</a> as follows.
|
1035
|
+
|
1036
|
+
|
1037
|
+
<table border="1">
|
1038
|
+
<tr>
|
1039
|
+
<td> Version number components: </td>
|
1040
|
+
<th>Major </th>
|
1041
|
+
<th>Minor </th>
|
1042
|
+
<th>Patch </th>
|
1043
|
+
</tr>
|
1044
|
+
<tr>
|
1045
|
+
<th>Backwards compatible? </th>
|
1046
|
+
<td> no </td>
|
1047
|
+
<td> yes </td>
|
1048
|
+
<td> yes </td>
|
1049
|
+
</tr>
|
1050
|
+
<tr>
|
1051
|
+
<th>New features? </th>
|
1052
|
+
<td> yes </td>
|
1053
|
+
<td> yes </td>
|
1054
|
+
<td> no </td>
|
1055
|
+
</tr>
|
1056
|
+
<tr>
|
1057
|
+
<th>Bug fixes? </th>
|
1058
|
+
<td> yes </td>
|
1059
|
+
<td> yes </td>
|
1060
|
+
<td> yes </td>
|
1061
|
+
</tr>
|
1062
|
+
</table></div>
|
1063
|
+
</div></div>
|
1064
|
+
</div>
|
1065
|
+
<div class="chapter">
|
1066
|
+
<h1 class="title">
|
1067
|
+
Chapter
|
1068
|
+
<a class="toc" id="Theory-of-operation" href="#a-605821358">3</a>
|
1069
|
+
|
1070
|
+
<br/>
|
1071
|
+
|
1072
|
+
<big>Theory of operation</big>
|
1073
|
+
</h1>
|
1074
|
+
|
1075
|
+
<div class="content">When you run Gerbil, it operates in the following order:
|
1076
|
+
<ol>
|
1077
|
+
<li>loads the <a class="xref" href="#SpecFile">format specification file</a></li>
|
1078
|
+
<li>creates an <strong>input document</strong> by:
|
1079
|
+
<ul>
|
1080
|
+
<li>reading the input (the content of either the input file or the standard input stream) into memory</li>
|
1081
|
+
<li>evaluating <a class="xref" href="#include">include directives</a> in the input</li>
|
1082
|
+
</ul>
|
1083
|
+
</li>
|
1084
|
+
<li>transforms the input document into a <strong>processed document</strong> by:
|
1085
|
+
<ul>
|
1086
|
+
<li>building a “document tree” data-structure from <a class="xref" href="#Nodes">nodes</a> present in the input document</li>
|
1087
|
+
<li>replacing every node in the input document with the result of its <a class="xref" href="#SpecFile.nodes.output">node output template</a></li>
|
1088
|
+
</ul>
|
1089
|
+
</li>
|
1090
|
+
<li>transforms the processed document into an <strong>output document</strong> according to the <a class="xref" href="#SpecFile.output">document output template</a></li>
|
1091
|
+
<li>prints the output document to the standard output stream</li>
|
1092
|
+
</ol>
|
1093
|
+
|
1094
|
+
|
1095
|
+
<p>Although there is only one document being processed here, we refer to it using three distinct terms (<strong>input</strong>, <strong>processed</strong>, and <strong>output</strong>). This distinction helps us talk about the document in a particular state because the content of the document changes radically with every transformation—thus it would be ambiguous to say “the input document” all the time.</p>
|
1096
|
+
|
1097
|
+
|
1098
|
+
<p><div class="section">
|
1099
|
+
<h2 class="title">
|
1100
|
+
<a class="toc" id="Nodes" href="#a-605973608">3.1</a> Nodes
|
1101
|
+
</h2>
|
1102
|
+
<div class="content"><p>A node is a block of text that appears like this:</p>
|
1103
|
+
|
1104
|
+
|
1105
|
+
<pre><% node_type node_argument1, node_argument2, ... do |node_object| %>
|
1106
|
+
node_content
|
1107
|
+
<% end %></pre>
|
1108
|
+
|
1109
|
+
|
1110
|
+
<p>Or like this:</p>
|
1111
|
+
|
1112
|
+
|
1113
|
+
<pre><% node_type node_argument1, node_argument2, ... do %>
|
1114
|
+
node_content
|
1115
|
+
<% end %></pre>
|
1116
|
+
|
1117
|
+
|
1118
|
+
<p>Or like this:</p>
|
1119
|
+
|
1120
|
+
|
1121
|
+
<pre><%= node_type node_argument1, node_argument2, ... %></pre>
|
1122
|
+
|
1123
|
+
|
1124
|
+
<p>Technically, what you see above is really a method invocation made up of the following components:</p>
|
1125
|
+
|
1126
|
+
|
1127
|
+
<table border="1">
|
1128
|
+
<tr>
|
1129
|
+
<th>Component </th>
|
1130
|
+
<th>Description </th>
|
1131
|
+
</tr>
|
1132
|
+
<tr>
|
1133
|
+
<td> node_type </td>
|
1134
|
+
<td> name of the method being invoked </td>
|
1135
|
+
</tr>
|
1136
|
+
<tr>
|
1137
|
+
<td> node_argument1, node_argument2, ... </td>
|
1138
|
+
<td> arguments for the method invocation </td>
|
1139
|
+
</tr>
|
1140
|
+
<tr>
|
1141
|
+
<td> node_content </td>
|
1142
|
+
<td> a block argument being passed to the method invocation </td>
|
1143
|
+
</tr>
|
1144
|
+
<tr>
|
1145
|
+
<td> node_object </td>
|
1146
|
+
<td> a <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> object (see <a class="xref" href="#Node.class">Section 3.1.1: <em>The <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> class</em></a>) representing this method invocation </td>
|
1147
|
+
</tr>
|
1148
|
+
</table>
|
1149
|
+
|
1150
|
+
|
1151
|
+
|
1152
|
+
|
1153
|
+
<p>A <a class="xref" href="#SpecFile">format specification file</a> defines what types of nodes an input document may use.</p>
|
1154
|
+
|
1155
|
+
|
1156
|
+
<p><div class="section">
|
1157
|
+
<h3 class="title">
|
1158
|
+
<a class="toc" id="Node.class" href="#a-606391018">3.1.1</a> The <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> class
|
1159
|
+
</h3>
|
1160
|
+
<div class="content"><p>When Gerbil builds a document tree from nodes present in an input document, it stores information about these nodes into <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> objects. A <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> object has the following properties (methods):</p>
|
1161
|
+
|
1162
|
+
|
1163
|
+
<table border="1">
|
1164
|
+
<tr>
|
1165
|
+
<th>Property </th>
|
1166
|
+
<th>Type </th>
|
1167
|
+
<th>Description </th>
|
1168
|
+
</tr>
|
1169
|
+
<tr>
|
1170
|
+
<td> type </td>
|
1171
|
+
<td> String </td>
|
1172
|
+
<td> Name of the type of this node. </td>
|
1173
|
+
</tr>
|
1174
|
+
<tr>
|
1175
|
+
<td> args </td>
|
1176
|
+
<td> Array </td>
|
1177
|
+
<td> Arguments passed to this node. </td>
|
1178
|
+
</tr>
|
1179
|
+
<tr>
|
1180
|
+
<td> content </td>
|
1181
|
+
<td> String </td>
|
1182
|
+
<td> The block of text passed to this node. </td>
|
1183
|
+
</tr>
|
1184
|
+
<tr>
|
1185
|
+
<td> output </td>
|
1186
|
+
<td> String </td>
|
1187
|
+
<td> Result of the node output template for the content of this node. </td>
|
1188
|
+
</tr>
|
1189
|
+
<tr>
|
1190
|
+
<td> digest </td>
|
1191
|
+
<td> String </td>
|
1192
|
+
<td> A unique identifier for the content of this node. </td>
|
1193
|
+
</tr>
|
1194
|
+
<tr>
|
1195
|
+
<td> trace </td>
|
1196
|
+
<td> Array </td>
|
1197
|
+
<td> A stack trace describing the location of this node in the input document. </td>
|
1198
|
+
</tr>
|
1199
|
+
<tr>
|
1200
|
+
<td> index </td>
|
1201
|
+
<td> String </td>
|
1202
|
+
<td> A LaTeX-style section number for this node. This property is only present if the “index” parameter is enabled in the definition of this type of node. </td>
|
1203
|
+
</tr>
|
1204
|
+
<tr>
|
1205
|
+
<td> number </td>
|
1206
|
+
<td> Integer </td>
|
1207
|
+
<td> An order-of-occurrence number for this node. This property is only present if the “number” parameter is enabled in the definition of this type of node. </td>
|
1208
|
+
</tr>
|
1209
|
+
<tr>
|
1210
|
+
<td> depth </td>
|
1211
|
+
<td> Integer </td>
|
1212
|
+
<td> Distance from the root of the document tree to this node. </td>
|
1213
|
+
</tr>
|
1214
|
+
<tr>
|
1215
|
+
<td> parent </td>
|
1216
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> </td>
|
1217
|
+
<td> The <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> object which contains this node. The value of this property will be <code class="code"><span style="color:#038; font-weight:bold">nil</span></code> if this node is a root of the document tree. </td>
|
1218
|
+
</tr>
|
1219
|
+
<tr>
|
1220
|
+
<td> children </td>
|
1221
|
+
<td> Array of <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> </td>
|
1222
|
+
<td> List of child nodes from the document tree. </td>
|
1223
|
+
</tr>
|
1224
|
+
</table>
|
1225
|
+
|
1226
|
+
|
1227
|
+
|
1228
|
+
|
1229
|
+
<p>Furthermore, the <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> class is derived from <a href="http://www.ruby-doc.org/stdlib/libdoc/ostruct/rdoc/classes/OpenStruct.html">Ruby’s <code class="code"><span style="color:#036; font-weight:bold">OpenStruct</span></code> class</a>, so you can define new properties for <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> objects dynamically.</p></div>
|
1230
|
+
</div></p></div>
|
1231
|
+
</div>
|
1232
|
+
<div class="section">
|
1233
|
+
<h2 class="title">
|
1234
|
+
<a class="toc" id="SpecFile" href="#a-606400128">3.2</a> Format specification file
|
1235
|
+
</h2>
|
1236
|
+
<div class="content"><p>A format specification file is a plain-text file marked up in <a href="http://yaml4r.sourceforge.net/cookbook/">YAML syntax</a>. Through the following parameters, it defines (1) what types of nodes an input document may contain, (2) how the content of those nodes is transformed into output, and (3) how the processed document is transformed into the output document.</p>
|
1237
|
+
|
1238
|
+
|
1239
|
+
<table border="1">
|
1240
|
+
<tr>
|
1241
|
+
<th>Parameter </th>
|
1242
|
+
<th>Type </th>
|
1243
|
+
<th>Description </th>
|
1244
|
+
</tr>
|
1245
|
+
<tr>
|
1246
|
+
<td> desc </td>
|
1247
|
+
<td> String </td>
|
1248
|
+
<td> A short description of the output format. </td>
|
1249
|
+
</tr>
|
1250
|
+
<tr>
|
1251
|
+
<td> code </td>
|
1252
|
+
<td> String </td>
|
1253
|
+
<td> Ruby code that will be loaded before the input document is processed. This source code will be evaluated inside the main Gerbil executable, so any file-system or path-dependent portions of this source code should take appropriate precautions. </td>
|
1254
|
+
</tr>
|
1255
|
+
<tr>
|
1256
|
+
<td> nodes </td>
|
1257
|
+
<td> Hash </td>
|
1258
|
+
<td> A listing of <a class="xref" href="#SpecFile.nodes">node definitions</a>. </td>
|
1259
|
+
</tr>
|
1260
|
+
<tr>
|
1261
|
+
<td> output </td>
|
1262
|
+
<td> String </td>
|
1263
|
+
<td> An eRuby template for the final output document. See <a class="xref" href="#SpecFile.output">Section 3.2.2: <em>Document output template</em></a>. </td>
|
1264
|
+
</tr>
|
1265
|
+
</table>
|
1266
|
+
|
1267
|
+
|
1268
|
+
|
1269
|
+
|
1270
|
+
<p><div class="section">
|
1271
|
+
<h3 class="title">
|
1272
|
+
<a class="toc" id="SpecFile.nodes" href="#a-606411538">3.2.1</a> Node definition
|
1273
|
+
</h3>
|
1274
|
+
<div class="content"><p>A node definition is a mapping from a name (the “node type”) to the following set of parameters:</p>
|
1275
|
+
|
1276
|
+
|
1277
|
+
<table border="1">
|
1278
|
+
<tr>
|
1279
|
+
<th>Parameter </th>
|
1280
|
+
<th>Type </th>
|
1281
|
+
<th>Description </th>
|
1282
|
+
</tr>
|
1283
|
+
<tr>
|
1284
|
+
<td> index </td>
|
1285
|
+
<td> Boolean </td>
|
1286
|
+
<td> Assign a LaTeX-style section number to this node? </td>
|
1287
|
+
</tr>
|
1288
|
+
<tr>
|
1289
|
+
<td> number </td>
|
1290
|
+
<td> Boolean </td>
|
1291
|
+
<td> Assign an order-of-occurrence number to this node? </td>
|
1292
|
+
</tr>
|
1293
|
+
<tr>
|
1294
|
+
<td> silent </td>
|
1295
|
+
<td> Boolean </td>
|
1296
|
+
<td> Suppress the output of this node? </td>
|
1297
|
+
</tr>
|
1298
|
+
<tr>
|
1299
|
+
<td> output </td>
|
1300
|
+
<td> String </td>
|
1301
|
+
<td> An eRuby template for the content of this node. See <a class="xref" href="#SpecFile.nodes.output">Section 3.2.1.1: <em>Node output template</em></a>. </td>
|
1302
|
+
</tr>
|
1303
|
+
</table>
|
1304
|
+
|
1305
|
+
|
1306
|
+
|
1307
|
+
|
1308
|
+
<p>You may define additional parameters in a node definition if you want.</p>
|
1309
|
+
|
1310
|
+
|
1311
|
+
<p><div class="section">
|
1312
|
+
<h4 class="title">
|
1313
|
+
<a class="toc" id="SpecFile.nodes.output" href="#a-606416068">3.2.1.1</a> Node output template
|
1314
|
+
</h4>
|
1315
|
+
<div class="content"><p>A node output template (the <strong>output</strong> parameter in a node definition) is an eRuby template that transforms a node’s content into output. During the processing stage, Gerbil replaces all nodes in the input document with the result of this template <em>unless</em> the <strong>silent</strong> parameter is enabled in this node’s definition.</p>
|
1316
|
+
|
1317
|
+
|
1318
|
+
<p>The following variables are available for use in this template:</p>
|
1319
|
+
|
1320
|
+
|
1321
|
+
<table border="1">
|
1322
|
+
<tr>
|
1323
|
+
<th>Variable </th>
|
1324
|
+
<th>Type </th>
|
1325
|
+
<th>Description </th>
|
1326
|
+
</tr>
|
1327
|
+
<tr>
|
1328
|
+
<td> @node </td>
|
1329
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> </td>
|
1330
|
+
<td> the node for which this template is being evaluated </td>
|
1331
|
+
</tr>
|
1332
|
+
<tr>
|
1333
|
+
<td> @roots </td>
|
1334
|
+
<td> Array of <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> </td>
|
1335
|
+
<td> All root nodes in the document tree. </td>
|
1336
|
+
</tr>
|
1337
|
+
<tr>
|
1338
|
+
<td> @nodes </td>
|
1339
|
+
<td> Array of <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> </td>
|
1340
|
+
<td> All nodes in the document tree. </td>
|
1341
|
+
</tr>
|
1342
|
+
<tr>
|
1343
|
+
<td> @types </td>
|
1344
|
+
<td> Hash </td>
|
1345
|
+
<td> Mapping from node type (String) to array of <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> objects having that type. </td>
|
1346
|
+
</tr>
|
1347
|
+
<tr>
|
1348
|
+
<td> @spec </td>
|
1349
|
+
<td> Hash </td>
|
1350
|
+
<td> Data from the format specification file. </td>
|
1351
|
+
</tr>
|
1352
|
+
</table>
|
1353
|
+
|
1354
|
+
|
1355
|
+
|
1356
|
+
|
1357
|
+
<p>Gerbil also provides the following mappings inside the <code class="code"><span style="color:#33B">@spec</span></code> variable:</p>
|
1358
|
+
|
1359
|
+
|
1360
|
+
<table border="1">
|
1361
|
+
<tr>
|
1362
|
+
<th>Expression </th>
|
1363
|
+
<th>Type </th>
|
1364
|
+
<th>Description </th>
|
1365
|
+
</tr>
|
1366
|
+
<tr>
|
1367
|
+
<td> <code class="code"><span style="color:#33B">@spec</span>[<span style="color:#A60">:name</span>]</code> </td>
|
1368
|
+
<td> String </td>
|
1369
|
+
<td> Short-hand name of the current format. </td>
|
1370
|
+
</tr>
|
1371
|
+
<tr>
|
1372
|
+
<td> <code class="code"><span style="color:#33B">@spec</span>[<span style="color:#A60">:file</span>]</code> </td>
|
1373
|
+
<td> String </td>
|
1374
|
+
<td> Path of the current format specification file. </td>
|
1375
|
+
</tr>
|
1376
|
+
</table></div>
|
1377
|
+
</div></p></div>
|
1378
|
+
</div>
|
1379
|
+
<div class="section">
|
1380
|
+
<h3 class="title">
|
1381
|
+
<a class="toc" id="SpecFile.output" href="#a-606422248">3.2.2</a> Document output template
|
1382
|
+
</h3>
|
1383
|
+
<div class="content"><p>A document output template (the <strong>output</strong> parameter in a format specification file) is an eRuby template that transforms a processed document into the final output document.</p>
|
1384
|
+
|
1385
|
+
|
1386
|
+
<p>The following variables are available for use in this template:</p>
|
1387
|
+
|
1388
|
+
|
1389
|
+
<table border="1">
|
1390
|
+
<tr>
|
1391
|
+
<th>Variable </th>
|
1392
|
+
<th>Type </th>
|
1393
|
+
<th>Description </th>
|
1394
|
+
</tr>
|
1395
|
+
<tr>
|
1396
|
+
<td> @content </td>
|
1397
|
+
<td> String </td>
|
1398
|
+
<td> Content of the processed document. </td>
|
1399
|
+
</tr>
|
1400
|
+
<tr>
|
1401
|
+
<td> @roots </td>
|
1402
|
+
<td> Array of <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> </td>
|
1403
|
+
<td> All root nodes in the document tree. </td>
|
1404
|
+
</tr>
|
1405
|
+
<tr>
|
1406
|
+
<td> @nodes </td>
|
1407
|
+
<td> Array of <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> </td>
|
1408
|
+
<td> All nodes in the document tree. </td>
|
1409
|
+
</tr>
|
1410
|
+
<tr>
|
1411
|
+
<td> @types </td>
|
1412
|
+
<td> Hash </td>
|
1413
|
+
<td> Mapping from node type (String) to array of <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> objects having that type. </td>
|
1414
|
+
</tr>
|
1415
|
+
<tr>
|
1416
|
+
<td> @spec </td>
|
1417
|
+
<td> Hash </td>
|
1418
|
+
<td> Data from the format specification file. </td>
|
1419
|
+
</tr>
|
1420
|
+
</table>
|
1421
|
+
|
1422
|
+
|
1423
|
+
|
1424
|
+
|
1425
|
+
<p>Gerbil also provides the following mappings inside the <code class="code"><span style="color:#33B">@spec</span></code> variable:</p>
|
1426
|
+
|
1427
|
+
|
1428
|
+
<table border="1">
|
1429
|
+
<tr>
|
1430
|
+
<th>Expression </th>
|
1431
|
+
<th>Type </th>
|
1432
|
+
<th>Description </th>
|
1433
|
+
</tr>
|
1434
|
+
<tr>
|
1435
|
+
<td> <code class="code"><span style="color:#33B">@spec</span>[<span style="color:#A60">:name</span>]</code> </td>
|
1436
|
+
<td> String </td>
|
1437
|
+
<td> Short-hand name of the current format. </td>
|
1438
|
+
</tr>
|
1439
|
+
<tr>
|
1440
|
+
<td> <code class="code"><span style="color:#33B">@spec</span>[<span style="color:#A60">:file</span>]</code> </td>
|
1441
|
+
<td> String </td>
|
1442
|
+
<td> Path of the current format specification file. </td>
|
1443
|
+
</tr>
|
1444
|
+
</table></div>
|
1445
|
+
</div>
|
1446
|
+
<div class="section">
|
1447
|
+
<h3 class="title">
|
1448
|
+
<a class="toc" id="HelloWorld" href="#a-606427348">3.2.3</a> Creating your own custom format
|
1449
|
+
</h3>
|
1450
|
+
<div class="content">Here is a working example to help you digest all that you’ve learned so far about format specification files. A few things to notice in this example are:
|
1451
|
+
<ul>
|
1452
|
+
<li>We define a <code class="code">generate_name()</code> method in <a class="xref" href="#HelloWorld.spec">Example 1: <em>HelloWorld format specification file</em></a> and make use of it in the <a class="xref" href="#HelloWorld.input">Example 2: <em>Input document for HelloWorld format</em></a>. This shows how to provide format-specific functionality to an input document.</li>
|
1453
|
+
<li>We define a <code class="code"><span style="color:#d70; font-weight:bold">$style</span></code> variable in <a class="xref" href="#HelloWorld.input">Example 2: <em>Input document for HelloWorld format</em></a> and make use of it in <a class="xref" href="#HelloWorld.spec">Example 1: <em>HelloWorld format specification file</em></a>. This shows how to make your format accept parameters from an input document.</li>
|
1454
|
+
</ul>
|
1455
|
+
|
1456
|
+
|
1457
|
+
To run this example, perform the following steps:
|
1458
|
+
<ol>
|
1459
|
+
<li>Save the code shown in <a class="xref" href="#HelloWorld.spec">Example 1: <em>HelloWorld format specification file</em></a> to a file named <tt>HelloWorld.spec</tt></li>
|
1460
|
+
<li>Save the text shown in <a class="xref" href="#HelloWorld.input">Example 2: <em>Input document for HelloWorld format</em></a> to a file named <tt>HelloWorld.input</tt></li>
|
1461
|
+
<li>Run this command: <pre>gerbil HelloWorld.spec HelloWorld.input > HelloWorld.output</pre></li>
|
1462
|
+
<li>Examine the <tt>HelloWorld.output</tt> file until you are satisfied!</li>
|
1463
|
+
</ol>
|
1464
|
+
|
1465
|
+
|
1466
|
+
<p><div class="note">
|
1467
|
+
<p class="title"><a class="toc" id="Author-s-note-about-documentation-quality" href="#a-606451038">Note 2</a>. Author’s note about documentation quality</p>
|
1468
|
+
|
1469
|
+
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
1470
|
+
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
1471
|
+
Lmlua3NjYXBlLm9yZ5vuPBoAAAmCSURBVGiB1ZltbJXlGcd/9/N+Tlssh1Ja
|
1472
|
+
hNEJaK2UFxFptqC2wGCSTWdM3DSQzWVDEzVxy4xfjNkHQ8xMnEEXviwZ62Rj
|
1473
|
+
6siWTcVBZeJA5yBQpOWlKNZSaEvpyyk95zwv970Pp+fY5/S0tFBkXsmTc67n
|
1474
|
+
eu77+f/u6349Ryil+Cqbdq0FXKldEuClp+3nfvVz/eJLT9vPXQv/igFc13tq
|
1475
|
+
w4/ujLqu99S18C9lRr6br7zyyi2WZb2eSqUqpVSUlE5BSmW8/PLL6sv2bdtu
|
1476
|
+
TiaT9z/++ONN486AZVm/XLiw+qZlt98Wun/bsqUhf+nSJSF/ya2LQv6ixQtD
|
1477
|
+
/sJFC0L+guqqkF91S2XIr6y6idlfm1Vp2/Yz+XSOCiCEqDJMQ3ze+hm6bnC+
|
1478
|
+
sx9d1zl+vBlN1znf2Y+m6TQfa0LTvvCbmo6G/KNHj4T8Ix83hvzGI4dD/uHG
|
1479
|
+
QyG/peUElmUJIURlPp2jAkgpiwXg+R5FM9dRv3U/heXrkFJSWHZ32i/7NlJK
|
1480
|
+
CsrWUr91P9EZa5FSEildQ/3W/USmfwspJc701dRv3Y9dshopJda0VdRv3Y8V
|
1481
|
+
W4mUEjO2kvqt+zCm1iGlxCiu5fe/24defBeu6yHSkopHAxD51oEtW7bEb1++
|
1482
|
+
rLC5+ShBEKCU+uJCgWJCvlJD9/iinlw/o2O4b5omixct4fixkz2PPPJILB9A
|
1483
|
+
3kEspYzOmjWbxYuWjIiNtfBdjdjg4EWam44XjhYf0YU2b948xTTNoGRaSbjl
|
1484
|
+
R2mlqx0rLCxC0zR98+bNdj6AERkIgiDmOI6nlDK/7NbOF1NKYdt2KplMxoCz
|
1485
|
+
ufERAKZpxiKRSDC8wnfeeWfUl06W0FxbtWpV9tloNOoPDg6OD0BKGYtEIqGX
|
1486
|
+
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
|
1526
|
+
" alt="note" class="icon"/>
|
1527
|
+
|
1528
|
+
<div class="content"><p>Please excuse my lack of creativity for this example. I tried different ideas but scrapped most of them because writing documentation is hard and mostly boring. (Although I did have fun reading the wacky names produced by the <code class="code">generate_name()</code> method!)</p>
|
1529
|
+
|
1530
|
+
|
1531
|
+
<p>Instead, I just <em>really</em> want to get the first release of Gerbil out the door and continue work on my other programming projects, but I cannot do so until I’ve written some documentation. Ah, the dilemma of an open-source developer who cares about documentation!</p>
|
1532
|
+
|
1533
|
+
|
1534
|
+
<p>On the other hand, if you have ideas on how to improve this example, please speak up in the <a href="http://rubyforge.org/mailman/listinfo/gerbil-talk">project mailing list</a>. Thanks!</p></div>
|
1535
|
+
</div>
|
1536
|
+
<div class="example">
|
1537
|
+
<p class="title"><a class="toc" id="HelloWorld.spec" href="#a-606456098">Example 1</a>. HelloWorld format specification file</p>
|
1538
|
+
<div class="content"><pre class="code" lang="rhtml">
|
1539
|
+
desc: A illustrative format.
|
1540
|
+
|
1541
|
+
code: |
|
1542
|
+
# Returns a random, but pronounceable, name.
|
1543
|
+
def generate_name
|
1544
|
+
letters = ('a'..'z').to_a - %w[ c q w x ] # redundant sounds
|
1545
|
+
vowels = %w[a e i o u]
|
1546
|
+
consonants = letters - vowels
|
1547
|
+
sets = [consonants, vowels]
|
1548
|
+
|
1549
|
+
length = 3 + rand(5)
|
1550
|
+
|
1551
|
+
name = ''
|
1552
|
+
length.times do |i|
|
1553
|
+
set = sets[i % sets.length]
|
1554
|
+
name <span style="color:#F00; background-color:#FAA"><</span><span style="color:#F00; background-color:#FAA"><</span> set[rand(set.length)]
|
1555
|
+
end
|
1556
|
+
|
1557
|
+
name
|
1558
|
+
end
|
1559
|
+
|
1560
|
+
class Node
|
1561
|
+
def name
|
1562
|
+
@name ||= generate_name
|
1563
|
+
end
|
1564
|
+
end
|
1565
|
+
|
1566
|
+
nodes:
|
1567
|
+
hello:
|
1568
|
+
index: true
|
1569
|
+
number: true
|
1570
|
+
silent: false
|
1571
|
+
output: |
|
1572
|
+
<span style="color:#070"><h1></span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.type <span style="color:black">%></span></span> #<span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.index <span style="color:black">%></span></span>: <span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.name.inspect <span style="color:black">%></span></span><span style="color:#070"></h1></span>
|
1573
|
+
My name is <span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.name.inspect <span style="color:black">%></span></span> and these are my properties:
|
1574
|
+
<span style="color:#070"><table></span>
|
1575
|
+
<span style="color:#070"><tr></span>
|
1576
|
+
<span style="color:#070"><th></span>Property<span style="color:#070"></th></span>
|
1577
|
+
<span style="color:#070"><th></span>Value<span style="color:#070"></th></span>
|
1578
|
+
<span style="color:#070"></tr></span>
|
1579
|
+
<span style="color:#070"><tr></span>
|
1580
|
+
<span style="color:#070"><td></span>args<span style="color:#070"></td></span>
|
1581
|
+
<span style="color:#070"><td></span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.args.inspect <span style="color:black">%></span></span><span style="color:#070"></td></span>
|
1582
|
+
<span style="color:#070"></tr></span>
|
1583
|
+
<span style="color:#070"><tr></span>
|
1584
|
+
<span style="color:#070"><td></span>index<span style="color:#070"></td></span>
|
1585
|
+
<span style="color:#070"><td></span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.index.inspect <span style="color:black">%></span></span><span style="color:#070"></td></span>
|
1586
|
+
<span style="color:#070"></tr></span>
|
1587
|
+
<span style="color:#070"><tr></span>
|
1588
|
+
<span style="color:#070"><td></span>number<span style="color:#070"></td></span>
|
1589
|
+
<span style="color:#070"><td></span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.number.inspect <span style="color:black">%></span></span><span style="color:#070"></td></span>
|
1590
|
+
<span style="color:#070"></tr></span>
|
1591
|
+
<span style="color:#070"><tr></span>
|
1592
|
+
<span style="color:#070"><td></span>trace<span style="color:#070"></td></span>
|
1593
|
+
<span style="color:#070"><td></span><span style="color:#070"><ul></span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.trace.map {|s| <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20"><li></span><span style="background: #eee"><span style="font-weight: bold; color: #888">#{</span>s<span style="font-weight: bold; color: #888">}</span></span><span style="color:#D20"></li></span><span style="color:#710">"</span></span>} <span style="color:black">%></span></span><span style="color:#070"></ul></span><span style="color:#070"></td></span>
|
1594
|
+
<span style="color:#070"></tr></span>
|
1595
|
+
<span style="color:#070"><tr></span>
|
1596
|
+
<span style="color:#070"><td></span>content<span style="color:#070"></td></span>
|
1597
|
+
<span style="color:#070"><td></span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@node</span>.content <span style="color:black">%></span></span><span style="color:#070"></td></span>
|
1598
|
+
<span style="color:#070"></tr></span>
|
1599
|
+
<span style="color:#070"></table></span>
|
1600
|
+
|
1601
|
+
output: |
|
1602
|
+
Welcome to the "<span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@spec</span>[<span style="color:#A60">:name</span>] <span style="color:black">%></span></span>" format.
|
1603
|
+
<span style="color:#070"><div</span> <span style="color:#007">style</span>=<span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#d70; font-weight:bold">$style</span> <span style="color:black">%></span></span><span style="color:#710">"</span></span><span style="color:#070">></span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@content</span> <span style="color:black">%></span></span><span style="color:#070"></div></span>
|
1604
|
+
That's all folks!
|
1605
|
+
|
1606
|
+
</pre></div>
|
1607
|
+
</div>
|
1608
|
+
<div class="example">
|
1609
|
+
<p class="title"><a class="toc" id="HelloWorld.input" href="#a-606464288">Example 2</a>. Input document for HelloWorld format</p>
|
1610
|
+
<div class="content"><pre class="code" lang="rhtml">
|
1611
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#d70; font-weight:bold">$style</span> = <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">border-left: thick solid salmon; padding-left: 1em;</span><span style="color:#710">"</span></span> <span style="color:black">%></span></span>
|
1612
|
+
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Pretentious</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1613
|
+
<span style="color:#070"><big></span>I'm<span style="color:#070"></big></span> the very first node, oh _yes_ I am! *sneer*
|
1614
|
+
|
1615
|
+
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Bashful</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1616
|
+
Hi, I... *hide*
|
1617
|
+
|
1618
|
+
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Hopeful</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1619
|
+
*sigh*
|
1620
|
+
|
1621
|
+
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Confused</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1622
|
+
Huh?
|
1623
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1624
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1625
|
+
|
1626
|
+
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Raving</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1627
|
+
Oh it's *on* now! You're going *down*!
|
1628
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1629
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1630
|
+
|
1631
|
+
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Sleepy</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1632
|
+
*yawn* Just five more minutes...
|
1633
|
+
|
1634
|
+
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Peaceful</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1635
|
+
So _be_ happy my friend, *happy*!
|
1636
|
+
|
1637
|
+
<span style="background: #eee"><span style="color:black"><%=</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Lonely (as you can see, I have no block)</span><span style="color:#710">"</span></span> <span style="color:black">%></span></span>
|
1638
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1639
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1640
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1641
|
+
|
1642
|
+
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Snappy</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1643
|
+
Zip! Zap! Wake up, you sap!
|
1644
|
+
_Whoo I'm wild!_ ;-)
|
1645
|
+
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1646
|
+
|
1647
|
+
<span style="background: #eee"><span style="color:black"><%=</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Independent (no block, no parents, I am _free_!)</span><span style="color:#710">"</span></span> <span style="color:black">%></span></span>
|
1648
|
+
</pre></div>
|
1649
|
+
</div>
|
1650
|
+
<div class="example">
|
1651
|
+
<p class="title"><a class="toc" id="HelloWorld.output" href="#a-606473548">Example 3</a>. Output of HelloWorld format</p>
|
1652
|
+
<div class="content">Welcome to the “HelloWorld” format.
|
1653
|
+
<div style="border-left: thick solid salmon; padding-left: 1em;"><h1>hello #1: “gel”</h1>
|
1654
|
+
My name is “gel” and these are my properties:
|
1655
|
+
<table border="1">
|
1656
|
+
<tr>
|
1657
|
+
<th>Property</th>
|
1658
|
+
<th>Value</th>
|
1659
|
+
</tr>
|
1660
|
+
<tr>
|
1661
|
+
<td>args</td>
|
1662
|
+
<td>[“Pretentious”]</td>
|
1663
|
+
</tr>
|
1664
|
+
<tr>
|
1665
|
+
<td>index</td>
|
1666
|
+
<td>“1”</td>
|
1667
|
+
</tr>
|
1668
|
+
<tr>
|
1669
|
+
<td>number</td>
|
1670
|
+
<td>1</td>
|
1671
|
+
</tr>
|
1672
|
+
<tr>
|
1673
|
+
<td>trace</td>
|
1674
|
+
<td><ul><li>INPUT:1</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1675
|
+
</tr>
|
1676
|
+
<tr>
|
1677
|
+
<td>content</td>
|
1678
|
+
<td> <big>I’m</big> the very first node, oh <em>yes</em> I am! <strong>sneer</strong>
|
1679
|
+
|
1680
|
+
<h1>hello #1.1: “guvamuy”</h1>
|
1681
|
+
My name is “guvamuy” and these are my properties:
|
1682
|
+
<table border="1">
|
1683
|
+
<tr>
|
1684
|
+
<th>Property</th>
|
1685
|
+
<th>Value</th>
|
1686
|
+
</tr>
|
1687
|
+
<tr>
|
1688
|
+
<td>args</td>
|
1689
|
+
<td>[“Bashful”]</td>
|
1690
|
+
</tr>
|
1691
|
+
<tr>
|
1692
|
+
<td>index</td>
|
1693
|
+
<td>“1.1”</td>
|
1694
|
+
</tr>
|
1695
|
+
<tr>
|
1696
|
+
<td>number</td>
|
1697
|
+
<td>2</td>
|
1698
|
+
</tr>
|
1699
|
+
<tr>
|
1700
|
+
<td>trace</td>
|
1701
|
+
<td><ul><li>INPUT:3</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1702
|
+
</tr>
|
1703
|
+
<tr>
|
1704
|
+
<td>content</td>
|
1705
|
+
<td> Hi, I… <strong>hide</strong>
|
1706
|
+
|
1707
|
+
<h1>hello #1.1.1: “nuvub”</h1>
|
1708
|
+
My name is “nuvub” and these are my properties:
|
1709
|
+
<table border="1">
|
1710
|
+
<tr>
|
1711
|
+
<th>Property</th>
|
1712
|
+
<th>Value</th>
|
1713
|
+
</tr>
|
1714
|
+
<tr>
|
1715
|
+
<td>args</td>
|
1716
|
+
<td>[“Hopeful”]</td>
|
1717
|
+
</tr>
|
1718
|
+
<tr>
|
1719
|
+
<td>index</td>
|
1720
|
+
<td>“1.1.1”</td>
|
1721
|
+
</tr>
|
1722
|
+
<tr>
|
1723
|
+
<td>number</td>
|
1724
|
+
<td>3</td>
|
1725
|
+
</tr>
|
1726
|
+
<tr>
|
1727
|
+
<td>trace</td>
|
1728
|
+
<td><ul><li>INPUT:5</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:3</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1729
|
+
</tr>
|
1730
|
+
<tr>
|
1731
|
+
<td>content</td>
|
1732
|
+
<td> <strong>sigh</strong>
|
1733
|
+
|
1734
|
+
<h1>hello #1.1.1.1: “gaguy”</h1>
|
1735
|
+
My name is “gaguy” and these are my properties:
|
1736
|
+
<table border="1">
|
1737
|
+
<tr>
|
1738
|
+
<th>Property</th>
|
1739
|
+
<th>Value</th>
|
1740
|
+
</tr>
|
1741
|
+
<tr>
|
1742
|
+
<td>args</td>
|
1743
|
+
<td>[“Confused”]</td>
|
1744
|
+
</tr>
|
1745
|
+
<tr>
|
1746
|
+
<td>index</td>
|
1747
|
+
<td>“1.1.1.1”</td>
|
1748
|
+
</tr>
|
1749
|
+
<tr>
|
1750
|
+
<td>number</td>
|
1751
|
+
<td>4</td>
|
1752
|
+
</tr>
|
1753
|
+
<tr>
|
1754
|
+
<td>trace</td>
|
1755
|
+
<td><ul><li>INPUT:7</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:5</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:3</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1756
|
+
</tr>
|
1757
|
+
<tr>
|
1758
|
+
<td>content</td>
|
1759
|
+
<td> Huh?
|
1760
|
+
</td>
|
1761
|
+
</tr>
|
1762
|
+
</table></td>
|
1763
|
+
</tr>
|
1764
|
+
</table>
|
1765
|
+
<h1>hello #1.1.2: “lozije”</h1>
|
1766
|
+
My name is “lozije” and these are my properties:
|
1767
|
+
<table border="1">
|
1768
|
+
<tr>
|
1769
|
+
<th>Property</th>
|
1770
|
+
<th>Value</th>
|
1771
|
+
</tr>
|
1772
|
+
<tr>
|
1773
|
+
<td>args</td>
|
1774
|
+
<td>[“Raving”]</td>
|
1775
|
+
</tr>
|
1776
|
+
<tr>
|
1777
|
+
<td>index</td>
|
1778
|
+
<td>“1.1.2”</td>
|
1779
|
+
</tr>
|
1780
|
+
<tr>
|
1781
|
+
<td>number</td>
|
1782
|
+
<td>5</td>
|
1783
|
+
</tr>
|
1784
|
+
<tr>
|
1785
|
+
<td>trace</td>
|
1786
|
+
<td><ul><li>INPUT:9</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:3</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1787
|
+
</tr>
|
1788
|
+
<tr>
|
1789
|
+
<td>content</td>
|
1790
|
+
<td> Oh it’s <strong>on</strong> now! You’re going <strong>down</strong>!
|
1791
|
+
</td>
|
1792
|
+
</tr>
|
1793
|
+
</table></td>
|
1794
|
+
</tr>
|
1795
|
+
</table>
|
1796
|
+
<h1>hello #1.2: “rame”</h1>
|
1797
|
+
My name is “rame” and these are my properties:
|
1798
|
+
<table border="1">
|
1799
|
+
<tr>
|
1800
|
+
<th>Property</th>
|
1801
|
+
<th>Value</th>
|
1802
|
+
</tr>
|
1803
|
+
<tr>
|
1804
|
+
<td>args</td>
|
1805
|
+
<td>[“Sleepy”]</td>
|
1806
|
+
</tr>
|
1807
|
+
<tr>
|
1808
|
+
<td>index</td>
|
1809
|
+
<td>“1.2”</td>
|
1810
|
+
</tr>
|
1811
|
+
<tr>
|
1812
|
+
<td>number</td>
|
1813
|
+
<td>6</td>
|
1814
|
+
</tr>
|
1815
|
+
<tr>
|
1816
|
+
<td>trace</td>
|
1817
|
+
<td><ul><li>INPUT:11</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1818
|
+
</tr>
|
1819
|
+
<tr>
|
1820
|
+
<td>content</td>
|
1821
|
+
<td> <strong>yawn</strong> Just five more minutes…
|
1822
|
+
|
1823
|
+
<h1>hello #1.2.1: “rojed”</h1>
|
1824
|
+
My name is “rojed” and these are my properties:
|
1825
|
+
<table border="1">
|
1826
|
+
<tr>
|
1827
|
+
<th>Property</th>
|
1828
|
+
<th>Value</th>
|
1829
|
+
</tr>
|
1830
|
+
<tr>
|
1831
|
+
<td>args</td>
|
1832
|
+
<td>[“Peaceful”]</td>
|
1833
|
+
</tr>
|
1834
|
+
<tr>
|
1835
|
+
<td>index</td>
|
1836
|
+
<td>“1.2.1”</td>
|
1837
|
+
</tr>
|
1838
|
+
<tr>
|
1839
|
+
<td>number</td>
|
1840
|
+
<td>7</td>
|
1841
|
+
</tr>
|
1842
|
+
<tr>
|
1843
|
+
<td>trace</td>
|
1844
|
+
<td><ul><li>INPUT:13</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:11</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1845
|
+
</tr>
|
1846
|
+
<tr>
|
1847
|
+
<td>content</td>
|
1848
|
+
<td> So <em>be</em> happy my friend, <strong>happy</strong>!
|
1849
|
+
|
1850
|
+
<h1>hello #1.2.1.1: “tehen”</h1>
|
1851
|
+
My name is “tehen” and these are my properties:
|
1852
|
+
<table border="1">
|
1853
|
+
<tr>
|
1854
|
+
<th>Property</th>
|
1855
|
+
<th>Value</th>
|
1856
|
+
</tr>
|
1857
|
+
<tr>
|
1858
|
+
<td>args</td>
|
1859
|
+
<td>[“Lonely (as you can see, I have no block)”]</td>
|
1860
|
+
</tr>
|
1861
|
+
<tr>
|
1862
|
+
<td>index</td>
|
1863
|
+
<td>“1.2.1.1”</td>
|
1864
|
+
</tr>
|
1865
|
+
<tr>
|
1866
|
+
<td>number</td>
|
1867
|
+
<td>8</td>
|
1868
|
+
</tr>
|
1869
|
+
<tr>
|
1870
|
+
<td>trace</td>
|
1871
|
+
<td><ul><li>INPUT:15</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:13</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:11</li><li>bin/gerbil:80:in `content_from_block’</li><li>bin/gerbil:216:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1872
|
+
</tr>
|
1873
|
+
<tr>
|
1874
|
+
<td>content</td>
|
1875
|
+
<td></td>
|
1876
|
+
</tr>
|
1877
|
+
</table>
|
1878
|
+
</td>
|
1879
|
+
</tr>
|
1880
|
+
</table></td>
|
1881
|
+
</tr>
|
1882
|
+
</table></td>
|
1883
|
+
</tr>
|
1884
|
+
</table>
|
1885
|
+
<h1>hello #2: “vubose”</h1>
|
1886
|
+
My name is “vubose” and these are my properties:
|
1887
|
+
<table border="1">
|
1888
|
+
<tr>
|
1889
|
+
<th>Property</th>
|
1890
|
+
<th>Value</th>
|
1891
|
+
</tr>
|
1892
|
+
<tr>
|
1893
|
+
<td>args</td>
|
1894
|
+
<td>[“Snappy”]</td>
|
1895
|
+
</tr>
|
1896
|
+
<tr>
|
1897
|
+
<td>index</td>
|
1898
|
+
<td>“2”</td>
|
1899
|
+
</tr>
|
1900
|
+
<tr>
|
1901
|
+
<td>number</td>
|
1902
|
+
<td>9</td>
|
1903
|
+
</tr>
|
1904
|
+
<tr>
|
1905
|
+
<td>trace</td>
|
1906
|
+
<td><ul><li>INPUT:17</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1907
|
+
</tr>
|
1908
|
+
<tr>
|
1909
|
+
<td>content</td>
|
1910
|
+
<td> Zip! Zap! Wake up, you sap!
|
1911
|
+
<em>Whoo I’m wild!</em> ;-)
|
1912
|
+
</td>
|
1913
|
+
</tr>
|
1914
|
+
</table>
|
1915
|
+
<h1>hello #3: “dopeg”</h1>
|
1916
|
+
My name is “dopeg” and these are my properties:
|
1917
|
+
<table border="1">
|
1918
|
+
<tr>
|
1919
|
+
<th>Property</th>
|
1920
|
+
<th>Value</th>
|
1921
|
+
</tr>
|
1922
|
+
<tr>
|
1923
|
+
<td>args</td>
|
1924
|
+
<td>[“Independent (no block, no parents, I am <em>free</em>!)”]</td>
|
1925
|
+
</tr>
|
1926
|
+
<tr>
|
1927
|
+
<td>index</td>
|
1928
|
+
<td>“3”</td>
|
1929
|
+
</tr>
|
1930
|
+
<tr>
|
1931
|
+
<td>number</td>
|
1932
|
+
<td>10</td>
|
1933
|
+
</tr>
|
1934
|
+
<tr>
|
1935
|
+
<td>trace</td>
|
1936
|
+
<td><ul><li>INPUT:20</li><li>bin/gerbil:237</li><li>bin/gerbil:237:in `instance_eval’</li><li>bin/gerbil:237</li></ul></td>
|
1937
|
+
</tr>
|
1938
|
+
<tr>
|
1939
|
+
<td>content</td>
|
1940
|
+
<td></td>
|
1941
|
+
</tr>
|
1942
|
+
</table></div>
|
1943
|
+
That’s all folks!</div>
|
1944
|
+
</div></p></div>
|
1945
|
+
</div></p></div>
|
1946
|
+
</div></p></div>
|
1947
|
+
</div>
|
1948
|
+
<div class="chapter">
|
1949
|
+
<h1 class="title">
|
1950
|
+
Chapter
|
1951
|
+
<a class="toc" id="Usage" href="#a-606480938">4</a>
|
1952
|
+
|
1953
|
+
<br/>
|
1954
|
+
|
1955
|
+
<big>Usage</big>
|
1956
|
+
</h1>
|
1957
|
+
|
1958
|
+
<div class="content"><pre>
|
1959
|
+
Gerbil is an extensible document generator based on eRuby.
|
1960
|
+
|
1961
|
+
* STDIN will be read if an input file is not specified.
|
1962
|
+
|
1963
|
+
* If an error occurs, the input document will be printed to STDOUT
|
1964
|
+
so you can investigate line numbers in the error's stack trace.
|
1965
|
+
|
1966
|
+
Otherwise, the final output document will be printed to STDOUT.
|
1967
|
+
|
1968
|
+
Usage: gerbil [Option...] Format|SpecFile [InputFile]
|
1969
|
+
|
1970
|
+
Option:
|
1971
|
+
-h, --help show usage information
|
1972
|
+
-v, --version show version information
|
1973
|
+
|
1974
|
+
Format:
|
1975
|
+
latex high-quality typesetting
|
1976
|
+
html web page for the Internet
|
1977
|
+
man manual page for UNIX
|
1978
|
+
text plain text, nothing fancy
|
1979
|
+
</pre>
|
1980
|
+
|
1981
|
+
|
1982
|
+
<p>Gerbil requires its <em>first</em> command-line argument to be either (1) the name of a predefined format or (2) the path to a <a class="xref" href="#SpecFile">format specification file</a>. Predefined formats are simply short-hand names of format specification files located in the <tt>format/</tt> subdirectory of the Gerbil installation directory (see <a class="xref" href="#Manifest">Section 2.3: <em>Manifest</em></a>).</p>
|
1983
|
+
|
1984
|
+
|
1985
|
+
<p><div class="section">
|
1986
|
+
<h2 class="title">
|
1987
|
+
<a class="toc" id="include" href="#a-606487938">4.1</a> The <strong>include</strong> directive
|
1988
|
+
</h2>
|
1989
|
+
<div class="content"><p>The <strong>include</strong> directive allows you to insert the content of an arbitrary file at a certain place in the input document. It is written like this:</p>
|
1990
|
+
|
1991
|
+
|
1992
|
+
<pre><%# include <em>path</em> %></pre>
|
1993
|
+
|
1994
|
+
|
1995
|
+
<p>Here, <em>path</em> is the path of the file whose content you wish to insert into the input document.</p>
|
1996
|
+
|
1997
|
+
|
1998
|
+
<p>You can divide a large document into separate files for easier editing and stitch them together, dynamically, into a single document using the <strong>include</strong> directive.</p></div>
|
1999
|
+
</div>
|
2000
|
+
<div class="section">
|
2001
|
+
<h2 class="title">
|
2002
|
+
<a class="toc" id="unindent" href="#a-606495288">4.2</a> The <code class="code"><span style="color:#d70; font-weight:bold">$unindent</span></code> variable
|
2003
|
+
</h2>
|
2004
|
+
<div class="content"><p>The <code class="code"><span style="color:#d70; font-weight:bold">$unindent</span></code> variable allows you to unindent the content of every node in the input document by a specified amount of whitespace (spaces, tabs, newlines, and so on).</p>
|
2005
|
+
|
2006
|
+
|
2007
|
+
<p>Simply define this variable somewhere in your input document, like this (assuming you indent your node content using a TAB and two spaces):</p>
|
2008
|
+
|
2009
|
+
|
2010
|
+
<pre><% $unindent = "\t " %></pre>
|
2011
|
+
|
2012
|
+
|
2013
|
+
<p>and let Gerbil do it’s magic!</p></div>
|
2014
|
+
</div></p></div>
|
2015
|
+
</div>
|
2016
|
+
<div class="part">
|
2017
|
+
<h1 class="title">
|
2018
|
+
Part
|
2019
|
+
<a class="toc" id="Formats" href="#a-606500788">5</a>
|
2020
|
+
|
2021
|
+
<br/>
|
2022
|
+
|
2023
|
+
<big>Formats</big>
|
2024
|
+
</h1>
|
2025
|
+
|
2026
|
+
<div class="content"><p>This section describes the default formats provided along with Gerbil. The format specification files (see <a class="xref" href="#SpecFile">Section 3.2: <em>Format specification file</em></a>) for these formats can be found in the <tt>format/</tt> directory of the Gerbil installation directory (see <a class="xref" href="#Manifest">Section 2.3: <em>Manifest</em></a>).</p>
|
2027
|
+
|
2028
|
+
|
2029
|
+
<p>These formats are meant to serve as working examples. If you require more functionality from one of these formats, simply make a copy of the corresponding format specification file and edit the copy to suit your needs. If you would like to contribute or discuss your enhancements to these default formats, you can do so on the <a href="http://rubyforge.org/mailman/listinfo/gerbil-talk">project mailing list</a>.</p>
|
2030
|
+
|
2031
|
+
|
2032
|
+
<p><div class="chapter">
|
2033
|
+
<h1 class="title">
|
2034
|
+
Chapter
|
2035
|
+
<a class="toc" id="html" href="#a-606511128">5.1</a>
|
2036
|
+
|
2037
|
+
<br/>
|
2038
|
+
|
2039
|
+
<big>HTML</big>
|
2040
|
+
</h1>
|
2041
|
+
|
2042
|
+
<div class="content"><p>This format generates a <em>monolithic</em> HTML (technically, it’s <span class="caps">XHTML 1</span>.0 transitional, but who’s counting?) document. A monolithic HTML document allows users to easily search for a particular topic using nothing more than their web browser’s built-in text search mechanism. This facilitates offline reading, where an Internet search engine is not available.</p>
|
2043
|
+
|
2044
|
+
|
2045
|
+
<p>In the HTML document, you will notice that the numbers of chapters, sections, figures, admonitions, etc. are hyperlinks that take you back to the corresponding place in the table of contents. These links make it easy to navigate the HTML document, especially for users of text-only web browsers.</p>
|
2046
|
+
|
2047
|
+
|
2048
|
+
<p>Furthermore, the HTML document comes equipped with a stylesheet that makes it suitable for printing. In particular, users of the <a href="http://mozilla.org">Mozilla</a> and <a href="http://www.opera.com/">Opera</a> family of web browsers will be pleasantly surprised to notice that all hyperlinks have been expanded to include their target URL next to the link text. So try using the “print preview” function of a graphical web browser to see how the HTML document will appear when printed.</p>
|
2049
|
+
|
2050
|
+
|
2051
|
+
<p><div class="section">
|
2052
|
+
<h3 class="title">
|
2053
|
+
<a class="toc" id="Text-to-HTML-conversion" href="#a-606515908">5.1.1</a> Text to HTML conversion
|
2054
|
+
</h3>
|
2055
|
+
<div class="content"><p>Inside the <tt>format/</tt> subdirectory of the Gerbil installation directory (see <a class="xref" href="#Manifest">Section 2.3: <em>Manifest</em></a>), you will see a <tt>html.rb</tt> file. This file defines a <code class="code"><span style="color:#036; font-weight:bold">String</span>.to_html</code> method which is used to transform text in an input document into HTML.</p>
|
2056
|
+
|
2057
|
+
|
2058
|
+
<p>The default implementation of the <code class="code"><span style="color:#036; font-weight:bold">String</span>.to_html</code> method is based on the <a href="http://whytheluckystiff.net/ruby/redcloth/">Textile</a> markup system. If you do not like Textile or wish to use a different markup system for text in your documents, then simply edit the <tt>html.rb</tt> file and adjust the source code of the default <code class="code"><span style="color:#036; font-weight:bold">String</span>.to_html</code> method accordingly.</p>
|
2059
|
+
|
2060
|
+
|
2061
|
+
<p>For example, if you replace the entire <tt>html.rb</tt> file with the following code, then the output of all nodes will appear within red boxes in the final output document.</p>
|
2062
|
+
|
2063
|
+
|
2064
|
+
<pre class="code">
|
2065
|
+
<span style="color:#080; font-weight:bold">class</span> <span style="color:#B06; font-weight:bold">String</span>
|
2066
|
+
<span style="color:#080; font-weight:bold">def</span> <span style="color:#06B; font-weight:bold">to_html</span>
|
2067
|
+
<span style="background-color:#fff0f0"><span style="color:#710">'</span><span style="color:#D20"><p style="border: thin solid red"></span><span style="color:#710">'</span></span> + <span style="color:#038; font-weight:bold">self</span> + <span style="background-color:#fff0f0"><span style="color:#710">'</span><span style="color:#D20"></p></span><span style="color:#710">'</span></span>
|
2068
|
+
<span style="color:#080; font-weight:bold">end</span>
|
2069
|
+
<span style="color:#080; font-weight:bold">end</span>
|
2070
|
+
</pre>
|
2071
|
+
|
2072
|
+
|
2073
|
+
<p>In addition to supporting Textile markup, the default implementation has some additional features which are described in the following subsections.</p>
|
2074
|
+
|
2075
|
+
|
2076
|
+
<p><div class="section">
|
2077
|
+
<h4 class="title">
|
2078
|
+
<a class="toc" id="Syntax-coloring-for-source-code" href="#a-606523368">5.1.1.1</a> Syntax coloring for source code
|
2079
|
+
</h4>
|
2080
|
+
<div class="content"><p>Syntax coloring is <em>automatically added</em> to source code found inside the <strong><code></strong> and <strong></code></strong> HTML tags. Note that in Textile, any text enclosed within a pair of at-signs (@ and @) is also considered to be source code.</p>
|
2081
|
+
|
2082
|
+
|
2083
|
+
The following programming languages are currently supported by <a href="http://coderay.rubychan.de">CodeRay</a>:
|
2084
|
+
<ul>
|
2085
|
+
<li>Ruby</li>
|
2086
|
+
<li>C</li>
|
2087
|
+
<li>Delphi</li>
|
2088
|
+
<li>HTML</li>
|
2089
|
+
<li>RHTML (Rails)</li>
|
2090
|
+
<li>Nitro-XHTML</li>
|
2091
|
+
</ul>
|
2092
|
+
|
2093
|
+
|
2094
|
+
<p><div class="section">
|
2095
|
+
<h5 class="title">
|
2096
|
+
<a class="toc" id="Specifying-the-programming-language" href="#a-606526838">5.1.1.1.1</a> Specifying the programming language
|
2097
|
+
</h5>
|
2098
|
+
<div class="content"><p>Because different programming languages have different syntax coloring schemes, you can specify the language of your source code using the <code class="code">lang</code> attribute to ensure that only the appropriate coloring scheme is used. Note that unless the <code class="code">lang</code> attribute is specified, <em>Ruby</em> is assumed to be the programming language of all source code by default.</p>
|
2099
|
+
|
2100
|
+
|
2101
|
+
<p>For example, here is some source code <em>without</em> the <code class="code">lang</code> attribute:</p>
|
2102
|
+
|
2103
|
+
|
2104
|
+
<pre class="code">
|
2105
|
+
<span style="color:#888"># Ruby ###########################</span>
|
2106
|
+
<span style="color:#080; font-weight:bold">def</span> <span style="color:#06B; font-weight:bold">hello</span>
|
2107
|
+
puts <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Hello world!</span><span style="color:#710">"</span></span>
|
2108
|
+
<span style="color:#080; font-weight:bold">end</span>
|
2109
|
+
|
2110
|
+
|
2111
|
+
<span style="background-color:#fff0ff"><span style="color:#404">/</span><span style="color:#808">* C ****************************</span><span style="color:#404">/</span></span>
|
2112
|
+
<span style="color:#888">#include <stdio.h></span>
|
2113
|
+
int main(int argc, char **argv) {
|
2114
|
+
printf(<span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Hello world!</span><span style="color:#04D">\n</span><span style="color:#710">"</span></span>);
|
2115
|
+
<span style="color:#080; font-weight:bold">return</span> <span style="color:#00D; font-weight:bold">0</span>;
|
2116
|
+
}
|
2117
|
+
|
2118
|
+
|
2119
|
+
<!-- <span style="color:#036; font-weight:bold">HTML</span> ----------------------->
|
2120
|
+
<html>
|
2121
|
+
<body>
|
2122
|
+
<span style="color:#036; font-weight:bold">Hello</span> world!
|
2123
|
+
<body>
|
2124
|
+
<<span style="background-color:#fff0ff"><span style="color:#404">/</span><span style="color:#808">html>
|
2125
|
+
</span></span></pre>
|
2126
|
+
|
2127
|
+
|
2128
|
+
<p>And here is the same source code with a <code class="code">lang=<span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">c</span><span style="color:#710">"</span></span></code> attribute:</p>
|
2129
|
+
|
2130
|
+
|
2131
|
+
<pre class="code" lang="c">
|
2132
|
+
<span style="color:#579"># Ruby</span> <span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#</span><span style="color:#579">#
|
2133
|
+
def</span> hello
|
2134
|
+
puts <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Hello world!</span><span style="color:#710">"</span></span>
|
2135
|
+
end
|
2136
|
+
|
2137
|
+
|
2138
|
+
<span style="color:#888">/* C ****************************/</span>
|
2139
|
+
<span style="color:#579">#include</span> <span style="color:#B44; font-weight:bold"><stdio.h></span>
|
2140
|
+
<span style="color:#339; font-weight:bold">int</span> main(<span style="color:#339; font-weight:bold">int</span> argc, <span style="color:#339; font-weight:bold">char</span> **argv) {
|
2141
|
+
printf(<span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Hello world!</span><span style="color:#04D">\n</span><span style="color:#710">"</span></span>);
|
2142
|
+
<span style="color:#080; font-weight:bold">return</span> <span style="color:#00D; font-weight:bold">0</span>;
|
2143
|
+
}
|
2144
|
+
|
2145
|
+
|
2146
|
+
<!-- HTML ----------------------->
|
2147
|
+
<html>
|
2148
|
+
<body>
|
2149
|
+
Hello world!
|
2150
|
+
<body>
|
2151
|
+
</html>
|
2152
|
+
</pre>
|
2153
|
+
|
2154
|
+
|
2155
|
+
<p>And here is the same source code with a <code class="code">lang=<span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">html</span><span style="color:#710">"</span></span></code> attribute:</p>
|
2156
|
+
|
2157
|
+
|
2158
|
+
<pre class="code" lang="html">
|
2159
|
+
# Ruby ###########################
|
2160
|
+
def hello
|
2161
|
+
puts "Hello world!"
|
2162
|
+
end
|
2163
|
+
|
2164
|
+
|
2165
|
+
/* C ****************************/
|
2166
|
+
#include <span style="color:#070"><stdio.h></span>
|
2167
|
+
int main(int argc, char **argv) {
|
2168
|
+
printf("Hello world!\n");
|
2169
|
+
return 0;
|
2170
|
+
}
|
2171
|
+
|
2172
|
+
|
2173
|
+
<span style="color:#888"><!-- HTML -----------------------></span>
|
2174
|
+
<span style="color:#070"><html></span>
|
2175
|
+
<span style="color:#070"><body></span>
|
2176
|
+
Hello world!
|
2177
|
+
<span style="color:#070"><body></span>
|
2178
|
+
<span style="color:#070"></html></span>
|
2179
|
+
</pre></div>
|
2180
|
+
</div></p></div>
|
2181
|
+
</div>
|
2182
|
+
<div class="section">
|
2183
|
+
<h4 class="title">
|
2184
|
+
<a class="toc" id="Smart-sizing-of-source-code" href="#a-606530408">5.1.1.2</a> Smart sizing of source code
|
2185
|
+
</h4>
|
2186
|
+
<div class="content"><p>Source code is <em>automatically sized</em> to be displayed as either a line or paragraph of text, depending on whether it contains line breaks.</p>
|
2187
|
+
|
2188
|
+
|
2189
|
+
<p>For example, here is a single line of code:</p>
|
2190
|
+
|
2191
|
+
|
2192
|
+
<code class="code">life = <span style="color:#038; font-weight:bold">true</span> <span style="color:#080; font-weight:bold">or</span> <span style="color:#038; font-weight:bold">false</span></code>
|
2193
|
+
|
2194
|
+
|
2195
|
+
<p>And here is a paragraph of code:</p>
|
2196
|
+
|
2197
|
+
|
2198
|
+
<pre class="code">life =
|
2199
|
+
<span style="color:#038; font-weight:bold">true</span> <span style="color:#080; font-weight:bold">or</span> <span style="color:#038; font-weight:bold">false</span></pre></div>
|
2200
|
+
</div>
|
2201
|
+
<div class="section">
|
2202
|
+
<h4 class="title">
|
2203
|
+
<a class="toc" id="Protecting-verbatim-text" href="#a-606533778">5.1.1.3</a> Protecting verbatim text
|
2204
|
+
</h4>
|
2205
|
+
<div class="content">Sometimes you just need to protect some text from being mangled by the text-to-HTML conversion process . In such cases, you can wrap the text you want to proctect within <strong><noformat></strong> and <strong></noformat></strong> tags.</div>
|
2206
|
+
</div></p></div>
|
2207
|
+
</div>
|
2208
|
+
<div class="section">
|
2209
|
+
<h3 class="title">
|
2210
|
+
<a class="toc" id="Parameters" href="#a-606537558">5.1.2</a> Parameters
|
2211
|
+
</h3>
|
2212
|
+
<div class="content">The HTML format accepts the following document parameters.
|
2213
|
+
|
2214
|
+
|
2215
|
+
<table border="1">
|
2216
|
+
<tr>
|
2217
|
+
<th>Parameter </th>
|
2218
|
+
<th>Type </th>
|
2219
|
+
<th>Default value </th>
|
2220
|
+
<th>Description </th>
|
2221
|
+
</tr>
|
2222
|
+
<tr>
|
2223
|
+
<td> <code class="code"><span style="color:#d70; font-weight:bold">$title</span></code> </td>
|
2224
|
+
<td> String </td>
|
2225
|
+
<td> <code class="code"><span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">$title</span><span style="color:#710">"</span></span></code> </td>
|
2226
|
+
<td> Title of the document. </td>
|
2227
|
+
</tr>
|
2228
|
+
<tr>
|
2229
|
+
<td> <code class="code"><span style="color:#d70; font-weight:bold">$authors</span></code> </td>
|
2230
|
+
<td> Hash </td>
|
2231
|
+
<td> <code class="code">{<span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">$authors</span><span style="color:#710">"</span></span> => <span style="color:#038; font-weight:bold">nil</span>}</code> </td>
|
2232
|
+
<td> A mapping of author name to author URL. You can obfuscate e-mail addresses using the provided <code class="code"><span style="color:#036; font-weight:bold">String</span><span style="color:#888">#to_html_entities</span></code> method like this:<br/><code class="code">{ <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Y. Matsumoto</span><span style="color:#710">"</span></span> => <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">mailto:matz@ruby.invalid</span><span style="color:#710">"</span></span>.to_html_entities }</code> </td>
|
2233
|
+
</tr>
|
2234
|
+
<tr>
|
2235
|
+
<td> <code class="code"><span style="color:#d70; font-weight:bold">$date</span></code> </td>
|
2236
|
+
<td> String </td>
|
2237
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">Time</span>.now.strftime(<span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">%d %B %Y</span><span style="color:#710">"</span></span>)</code> </td>
|
2238
|
+
<td> Date when the document was written. </td>
|
2239
|
+
</tr>
|
2240
|
+
<tr>
|
2241
|
+
<td> <code class="code"><span style="color:#d70; font-weight:bold">$logo</span></code> </td>
|
2242
|
+
<td> String </td>
|
2243
|
+
<td> <code class="code"><span style="color:#038; font-weight:bold">nil</span></code> </td>
|
2244
|
+
<td> Arbitrary content that goes above the document title in the default header. </td>
|
2245
|
+
</tr>
|
2246
|
+
<tr>
|
2247
|
+
<td> <code class="code"><span style="color:#d70; font-weight:bold">$feeds</span></code> </td>
|
2248
|
+
<td> Hash </td>
|
2249
|
+
<td> <code class="code"><span style="color:#038; font-weight:bold">nil</span></code> </td>
|
2250
|
+
<td> A mapping of feed URL to feed format. Here is an example: <code class="code"><span style="color:#d70; font-weight:bold">$feeds</span> = { <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">my_rss_feed.xml</span><span style="color:#710">"</span></span> => <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">rss</span><span style="color:#710">"</span></span>, <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">my_atom_feed.xml</span><span style="color:#710">"</span></span> => <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">atom</span><span style="color:#710">"</span></span> }</code></td>
|
2251
|
+
</tr>
|
2252
|
+
<tr>
|
2253
|
+
<td> <code class="code"><span style="color:#d70; font-weight:bold">$use_icons</span></code> </td>
|
2254
|
+
<td> Boolean </td>
|
2255
|
+
<td> <code class="code"><span style="color:#038; font-weight:bold">true</span></code> </td>
|
2256
|
+
<td> Use <a href="http://tango.freedesktop.org/Tango_Icon_Library">Tango icons</a> in admonitions (see <a class="xref" href="#Admonitions">Section 5.1.4.3: <em>Admonitions</em></a>)? </td>
|
2257
|
+
</tr>
|
2258
|
+
</table></div>
|
2259
|
+
</div>
|
2260
|
+
<div class="section">
|
2261
|
+
<h3 class="title">
|
2262
|
+
<a class="toc" id="Methods" href="#a-606544438">5.1.3</a> Methods
|
2263
|
+
</h3>
|
2264
|
+
<div class="content">The HTML format provides the following methods. In the method declarations shown below,
|
2265
|
+
<ul>
|
2266
|
+
<li>a pound sign (#) indicates that the method is an <strong>instance method</strong>, meaning that it can only be invoked on instances of a class, not on the classes themselves.</li>
|
2267
|
+
<li>a double colon sign (::) indicates that the method is a <strong>class method</strong>, meaning that it can only be invoked on a class.</li>
|
2268
|
+
</ul>
|
2269
|
+
|
2270
|
+
|
2271
|
+
<table border="1">
|
2272
|
+
<tr>
|
2273
|
+
<th>Method declaration </th>
|
2274
|
+
<th>Description </th>
|
2275
|
+
</tr>
|
2276
|
+
<tr>
|
2277
|
+
<td> <code class="code">link(aUrl, aName = aUrl, aTitle = <span style="color:#038; font-weight:bold">nil</span>)</code> </td>
|
2278
|
+
<td> <p>
|
2279
|
+
Returns a hyperlink to the given URL of the given name and mouse-hover
|
2280
|
+
title.
|
2281
|
+
</p>
|
2282
|
+
</td>
|
2283
|
+
</tr>
|
2284
|
+
<tr>
|
2285
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">Node</span><span style="color:#888">#title()</span></code> </td>
|
2286
|
+
<td> <p>
|
2287
|
+
Returns the user-defined title for this node‘s content.
|
2288
|
+
</p>
|
2289
|
+
</td>
|
2290
|
+
</tr>
|
2291
|
+
<tr>
|
2292
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">Node</span><span style="color:#888">#id()</span></code> </td>
|
2293
|
+
<td> <p>
|
2294
|
+
Returns the user-defined indentifer for this node.
|
2295
|
+
</p>
|
2296
|
+
</td>
|
2297
|
+
</tr>
|
2298
|
+
<tr>
|
2299
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">Node</span><span style="color:#888">#url()</span></code> </td>
|
2300
|
+
<td> <p>
|
2301
|
+
Returns a unique URI fragment for this node.
|
2302
|
+
</p>
|
2303
|
+
</td>
|
2304
|
+
</tr>
|
2305
|
+
<tr>
|
2306
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">Node</span><span style="color:#888">#list_url()</span></code> </td>
|
2307
|
+
<td> <p>
|
2308
|
+
Returns the URI fragment for the location in the table of contents / list
|
2309
|
+
of figures that points this node.
|
2310
|
+
</p>
|
2311
|
+
</td>
|
2312
|
+
</tr>
|
2313
|
+
<tr>
|
2314
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">Icon</span><span style="color:#888">#to_html(aAttributes = {})</span></code> </td>
|
2315
|
+
<td> <p>
|
2316
|
+
Returns a HTML image tag containing embedded image data. The given
|
2317
|
+
attributes (name => value) are applied to the HTML tag declaration.
|
2318
|
+
</p>
|
2319
|
+
</td>
|
2320
|
+
</tr>
|
2321
|
+
<tr>
|
2322
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">String</span><span style="color:#888">#to_html_entities()</span></code> </td>
|
2323
|
+
<td> <p>
|
2324
|
+
Transforms this UTF-8 string into HTML entities.
|
2325
|
+
</p>
|
2326
|
+
</td>
|
2327
|
+
</tr>
|
2328
|
+
<tr>
|
2329
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">String</span><span style="color:#888">#to_uri_fragment()</span></code> </td>
|
2330
|
+
<td> <p>
|
2331
|
+
Transforms this string into a valid URI fragment. See <a
|
2332
|
+
href="http://www.nmt.edu/tcc/help/pubs/xhtml/id-type.html">www.nmt.edu/tcc/help/pubs/xhtml/id-type.html</a>
|
2333
|
+
</p>
|
2334
|
+
</td>
|
2335
|
+
</tr>
|
2336
|
+
<tr>
|
2337
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">String</span><span style="color:#888">#to_html()</span></code> </td>
|
2338
|
+
<td> <p>
|
2339
|
+
Transforms this string into HTML.
|
2340
|
+
</p>
|
2341
|
+
</td>
|
2342
|
+
</tr>
|
2343
|
+
<tr>
|
2344
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">String</span><span style="color:#888">#thru_redcloth()</span></code> </td>
|
2345
|
+
<td> <p>
|
2346
|
+
Returns the result of running this string through RedCloth.
|
2347
|
+
</p>
|
2348
|
+
</td>
|
2349
|
+
</tr>
|
2350
|
+
<tr>
|
2351
|
+
<td> <code class="code"><span style="color:#036; font-weight:bold">String</span><span style="color:#888">#thru_coderay()</span></code> </td>
|
2352
|
+
<td> <p>
|
2353
|
+
Adds syntax coloring to <code> elements in the given text. If the
|
2354
|
+
<code> tag has an attribute lang="…", then that is
|
2355
|
+
considered the programming language for which appropriate syntax coloring
|
2356
|
+
should be applied. Otherwise, the programming language is assumed to be
|
2357
|
+
ruby.
|
2358
|
+
</p>
|
2359
|
+
</td>
|
2360
|
+
</tr>
|
2361
|
+
</table></div>
|
2362
|
+
</div>
|
2363
|
+
<div class="chapter">
|
2364
|
+
<h1 class="title">
|
2365
|
+
Chapter
|
2366
|
+
<a class="toc" id="html.nodes" href="#a-605947998">5.1.4</a>
|
2367
|
+
|
2368
|
+
<br/>
|
2369
|
+
|
2370
|
+
<big>Nodes</big>
|
2371
|
+
</h1>
|
2372
|
+
|
2373
|
+
<div class="content">Unless otherwise noted, all nodes defined by the HTML format accept two arguments, in this order:
|
2374
|
+
<ol>
|
2375
|
+
<li>a title or name for the node</li>
|
2376
|
+
<li>a unique identifier for the node</li>
|
2377
|
+
</ol>
|
2378
|
+
|
2379
|
+
|
2380
|
+
<p>The second argument is used by the cross-referencing nodes (see <a class="xref" href="#html.nodes.xref">Section 5.1.4.1.4: <em>xref</em></a> and <a class="xref" href="#html.nodes.cite">Section 5.1.4.5.2: <em>cite</em></a>), which allow you to refer to another node in the document by its unique identifier.</p>
|
2381
|
+
|
2382
|
+
|
2383
|
+
<p>Furthermore, node definitions in the HTML format have two additional parameters:</p>
|
2384
|
+
|
2385
|
+
|
2386
|
+
<table border="1">
|
2387
|
+
<tr>
|
2388
|
+
<th>Parameter </th>
|
2389
|
+
<th>Type </th>
|
2390
|
+
<th>Description </th>
|
2391
|
+
</tr>
|
2392
|
+
<tr>
|
2393
|
+
<td> toc </td>
|
2394
|
+
<td> Boolean </td>
|
2395
|
+
<td> Include this node in the <strong>Table of Contents</strong> (TOC)? </td>
|
2396
|
+
</tr>
|
2397
|
+
<tr>
|
2398
|
+
<td> lof </td>
|
2399
|
+
<td> Boolean </td>
|
2400
|
+
<td> Include this node in the <strong>List of Figures</strong> (LOF)? </td>
|
2401
|
+
</tr>
|
2402
|
+
</table>
|
2403
|
+
|
2404
|
+
|
2405
|
+
|
2406
|
+
|
2407
|
+
<p><div class="section">
|
2408
|
+
<h4 class="title">
|
2409
|
+
<a class="toc" id="Structure" href="#a-606977348">5.1.4.1</a> Structure
|
2410
|
+
</h4>
|
2411
|
+
<div class="content"><p>The nodes described in this section form the overall structure of the output document.</p>
|
2412
|
+
|
2413
|
+
|
2414
|
+
<p><div class="section">
|
2415
|
+
<h5 class="title">
|
2416
|
+
<a class="toc" id="html.nodes.header" href="#a-606979058">5.1.4.1.1</a> header
|
2417
|
+
</h5>
|
2418
|
+
<div class="content">This node overrides the logo, title, list of authors, and date when the document was written, all of which are shown at the top of the document.</div>
|
2419
|
+
</div>
|
2420
|
+
<div class="section">
|
2421
|
+
<h5 class="title">
|
2422
|
+
<a class="toc" id="html.nodes.footer" href="#a-606981438">5.1.4.1.2</a> footer
|
2423
|
+
</h5>
|
2424
|
+
<div class="content">This node overrides (1) the date when this document was generated and (2) the hyperlink to the Gerbil website, shown at the bottom of the document. The hyperlink is there as a way of saying thanks for Gerbil, the <em>wonderful</em> little utility you have grown so fond of! ;-)</div>
|
2425
|
+
</div>
|
2426
|
+
<div class="section">
|
2427
|
+
<h5 class="title">
|
2428
|
+
<a class="toc" id="html.nodes.abstract" href="#a-606983888">5.1.4.1.3</a> abstract
|
2429
|
+
</h5>
|
2430
|
+
<div class="content">A summary of the entire document. This is what most readers will <em>skim</em> through, if you are lucky. Alas, nobody reads entire documents these days! :-(</div>
|
2431
|
+
</div>
|
2432
|
+
<div class="section">
|
2433
|
+
<h5 class="title">
|
2434
|
+
<a class="toc" id="html.nodes.xref" href="#a-606986568">5.1.4.1.4</a> xref
|
2435
|
+
</h5>
|
2436
|
+
<div class="content"><p>A cross-reference; a hyperlink that takes you to any node in the document.</p>
|
2437
|
+
|
2438
|
+
|
2439
|
+
<p>The first argument of this node is either the unique identifier of the node you wish to cross-reference. If no nodes in the document have the given identifier, then the titles of all nodes in the document are searched. If even that fails, then an error will be raised.</p>
|
2440
|
+
|
2441
|
+
|
2442
|
+
<p>The second argument of this node overrides the default link text of the cross-reference.</p>
|
2443
|
+
|
2444
|
+
|
2445
|
+
<p>For example, this node in the input document:</p>
|
2446
|
+
|
2447
|
+
|
2448
|
+
<pre><%= xref "SpecFile" %></pre>
|
2449
|
+
|
2450
|
+
|
2451
|
+
<p>appears in the output document like this: <a class="xref" href="#SpecFile">Section 3.2: <em>Format specification file</em></a>.</p>
|
2452
|
+
|
2453
|
+
|
2454
|
+
<p>As another example, this node in the input document:</p>
|
2455
|
+
|
2456
|
+
|
2457
|
+
<pre><%= xref "SpecFile", "custom link text" %></pre>
|
2458
|
+
|
2459
|
+
|
2460
|
+
<p>appears in the output document like this: <a class="xref" href="#SpecFile">custom link text</a>.</p></div>
|
2461
|
+
</div></p></div>
|
2462
|
+
</div>
|
2463
|
+
<div class="section">
|
2464
|
+
<h4 class="title">
|
2465
|
+
<a class="toc" id="Organization" href="#a-607003538">5.1.4.2</a> Organization
|
2466
|
+
</h4>
|
2467
|
+
<div class="content"><p>The nodes described in this section are meant to help organize the document’s content logically.</p>
|
2468
|
+
|
2469
|
+
|
2470
|
+
<p><div class="section">
|
2471
|
+
<h5 class="title">
|
2472
|
+
<a class="toc" id="html.nodes.part" href="#a-607006398">5.1.4.2.1</a> part
|
2473
|
+
</h5>
|
2474
|
+
<div class="content"><p>A collection of chapters.</p>
|
2475
|
+
|
2476
|
+
|
2477
|
+
<p><div class="part">
|
2478
|
+
<h1 class="title">
|
2479
|
+
Part
|
2480
|
+
<a class="toc" id="An-example" href="#a-607008508">5.1.4.2.1.1</a>
|
2481
|
+
|
2482
|
+
<br/>
|
2483
|
+
|
2484
|
+
<big>An example</big>
|
2485
|
+
</h1>
|
2486
|
+
|
2487
|
+
<div class="content">This is what a <strong>part</strong> node appears like.</div>
|
2488
|
+
</div></p></div>
|
2489
|
+
</div>
|
2490
|
+
<div class="section">
|
2491
|
+
<h5 class="title">
|
2492
|
+
<a class="toc" id="html.nodes.chapter" href="#a-607013408">5.1.4.2.2</a> chapter
|
2493
|
+
</h5>
|
2494
|
+
<div class="content"><p>A collection of sections.</p>
|
2495
|
+
|
2496
|
+
|
2497
|
+
<p><div class="chapter">
|
2498
|
+
<h1 class="title">
|
2499
|
+
Chapter
|
2500
|
+
<a class="toc" id="An-example-607320788" href="#a-607015098">5.1.4.2.2.1</a>
|
2501
|
+
|
2502
|
+
<br/>
|
2503
|
+
|
2504
|
+
<big>An example</big>
|
2505
|
+
</h1>
|
2506
|
+
|
2507
|
+
<div class="content">This is what a <strong>chapter</strong> node appears like.</div>
|
2508
|
+
</div></p></div>
|
2509
|
+
</div>
|
2510
|
+
<div class="section">
|
2511
|
+
<h5 class="title">
|
2512
|
+
<a class="toc" id="html.nodes.section" href="#a-607017608">5.1.4.2.3</a> section
|
2513
|
+
</h5>
|
2514
|
+
<div class="content"><p>A collection of paragraphs about a particular topic.</p>
|
2515
|
+
|
2516
|
+
|
2517
|
+
<p><div class="section">
|
2518
|
+
<h6 class="title">
|
2519
|
+
<a class="toc" id="An-example-607375788" href="#a-607019328">5.1.4.2.3.1</a> An example
|
2520
|
+
</h6>
|
2521
|
+
<div class="content">This is what a <strong>section</strong> node appears like.</div>
|
2522
|
+
</div></p></div>
|
2523
|
+
</div>
|
2524
|
+
<div class="section">
|
2525
|
+
<h5 class="title">
|
2526
|
+
<a class="toc" id="html.nodes.paragraph" href="#a-607022188">5.1.4.2.4</a> paragraph
|
2527
|
+
</h5>
|
2528
|
+
<div class="content"><p>A collection of sentences about a particular idea.</p>
|
2529
|
+
|
2530
|
+
|
2531
|
+
<p><div class="paragraph">
|
2532
|
+
<p class="title">An example</p>
|
2533
|
+
<div class="content">This is what a <strong>paragraph</strong> node appears like.</div>
|
2534
|
+
</div></p></div>
|
2535
|
+
</div></p></div>
|
2536
|
+
</div>
|
2537
|
+
<div class="section">
|
2538
|
+
<h4 class="title">
|
2539
|
+
<a class="toc" id="Admonitions" href="#a-607029428">5.1.4.3</a> Admonitions
|
2540
|
+
</h4>
|
2541
|
+
<div class="content"><p>An admonition is basically a box that is indented more deeply than the text surrounding it. It is typically used to convey extraneous or pertinent information about the application of ideas discussed in the surrounding text.</p>
|
2542
|
+
|
2543
|
+
|
2544
|
+
<p>I like to follow the KDE guidelines<sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup> when determining which admonition to use in my documents.</p>
|
2545
|
+
|
2546
|
+
|
2547
|
+
<p>
|
2548
|
+
<div class="section">
|
2549
|
+
<h5 class="title">
|
2550
|
+
<a class="toc" id="html.nodes.warning" href="#a-607044968">5.1.4.3.1</a> warning
|
2551
|
+
</h5>
|
2552
|
+
<div class="content"><p>Use a <strong>warning</strong> node when “data loss could occur if you follow the procedure being described.” <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
|
2553
|
+
|
2554
|
+
|
2555
|
+
<p><div class="warning">
|
2556
|
+
<p class="title"><a class="toc" id="An-example-607469688" href="#a-607049428">Warning 1</a>. An example</p>
|
2557
|
+
|
2558
|
+
<img src="data:image/png;base64,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
|
2614
|
+
" alt="warning" class="icon"/>
|
2615
|
+
|
2616
|
+
<div class="content">This is what a <strong>warning</strong> node appears like.</div>
|
2617
|
+
</div></p></div>
|
2618
|
+
</div>
|
2619
|
+
<div class="section">
|
2620
|
+
<h5 class="title">
|
2621
|
+
<a class="toc" id="html.nodes.caution" href="#a-607058408">5.1.4.3.2</a> caution
|
2622
|
+
</h5>
|
2623
|
+
<div class="content"><blockquote>
|
2624
|
+
<p>A note of caution. Use this for example when the reader may lose easily recovered or replaceable information (e.g. user settings), or when they could cause data loss if they don’t correctly follow the procedure being outlined. <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
|
2625
|
+
</blockquote>
|
2626
|
+
|
2627
|
+
|
2628
|
+
<p><div class="caution">
|
2629
|
+
<p class="title"><a class="toc" id="An-example-607498328" href="#a-607073178">Caution 1</a>. An example</p>
|
2630
|
+
|
2631
|
+
<img src="data:image/png;base64,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
|
2682
|
+
4xicOQAAAABJRU5ErkJggg==
|
2683
|
+
" alt="caution" class="icon"/>
|
2684
|
+
|
2685
|
+
<div class="content">This is what a <strong>caution</strong> node appears like.</div>
|
2686
|
+
</div></p></div>
|
2687
|
+
</div>
|
2688
|
+
<div class="section">
|
2689
|
+
<h5 class="title">
|
2690
|
+
<a class="toc" id="html.nodes.important" href="#a-607083158">5.1.4.3.3</a> important
|
2691
|
+
</h5>
|
2692
|
+
<div class="content"><p>Use an <strong>important</strong> node when:</p>
|
2693
|
+
|
2694
|
+
|
2695
|
+
<blockquote>
|
2696
|
+
<p>When there is no danger of data loss, but you wish to make clear to the reader a consequence that isn’t immediately obvious (e.g. when changing the font for one instance of a program also changes the default setting, and this isn’t clear from the GUI.) <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
|
2697
|
+
</blockquote>
|
2698
|
+
|
2699
|
+
|
2700
|
+
<p><div class="important">
|
2701
|
+
<p class="title"><a class="toc" id="An-example-607529068" href="#a-607095998">Important 1</a>. An example</p>
|
2702
|
+
|
2703
|
+
<img src="data:image/png;base64,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
|
2758
|
+
2wAAAABJRU5ErkJggg==
|
2759
|
+
" alt="important" class="icon"/>
|
2760
|
+
|
2761
|
+
<div class="content">This is what a <strong>important</strong> node appears like.</div>
|
2762
|
+
</div></p></div>
|
2763
|
+
</div>
|
2764
|
+
<div class="section">
|
2765
|
+
<h5 class="title">
|
2766
|
+
<a class="toc" id="html.nodes.note" href="#a-607106368">5.1.4.3.4</a> note
|
2767
|
+
</h5>
|
2768
|
+
<div class="content"><p>Use a <strong>note</strong> node to convey:</p>
|
2769
|
+
|
2770
|
+
|
2771
|
+
<blockquote>
|
2772
|
+
<p>Information the user should be aware of, but is peripheral to the actual task being described. <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
|
2773
|
+
</blockquote>
|
2774
|
+
|
2775
|
+
|
2776
|
+
<p><div class="note">
|
2777
|
+
<p class="title"><a class="toc" id="An-example-607565368" href="#a-607119428">Note 3</a>. An example</p>
|
2778
|
+
|
2779
|
+
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
2780
|
+
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
2781
|
+
Lmlua3NjYXBlLm9yZ5vuPBoAAAmCSURBVGiB1ZltbJXlGcd/9/N+Tlssh1Ja
|
2782
|
+
hNEJaK2UFxFptqC2wGCSTWdM3DSQzWVDEzVxy4xfjNkHQ8xMnEEXviwZ62Rj
|
2783
|
+
6siWTcVBZeJA5yBQpOWlKNZSaEvpyyk95zwv970Pp+fY5/S0tFBkXsmTc67n
|
2784
|
+
eu77+f/u6349Ryil+Cqbdq0FXKldEuClp+3nfvVz/eJLT9vPXQv/igFc13tq
|
2785
|
+
w4/ujLqu99S18C9lRr6br7zyyi2WZb2eSqUqpVSUlE5BSmW8/PLL6sv2bdtu
|
2786
|
+
TiaT9z/++ONN486AZVm/XLiw+qZlt98Wun/bsqUhf+nSJSF/ya2LQv6ixQtD
|
2787
|
+
/sJFC0L+guqqkF91S2XIr6y6idlfm1Vp2/Yz+XSOCiCEqDJMQ3ze+hm6bnC+
|
2788
|
+
sx9d1zl+vBlN1znf2Y+m6TQfa0LTvvCbmo6G/KNHj4T8Ix83hvzGI4dD/uHG
|
2789
|
+
QyG/peUElmUJIURlPp2jAkgpiwXg+R5FM9dRv3U/heXrkFJSWHZ32i/7NlJK
|
2790
|
+
CsrWUr91P9EZa5FSEildQ/3W/USmfwspJc701dRv3Y9dshopJda0VdRv3Y8V
|
2791
|
+
W4mUEjO2kvqt+zCm1iGlxCiu5fe/24defBeu6yHSkopHAxD51oEtW7bEb1++
|
2792
|
+
rLC5+ShBEKCU+uJCgWJCvlJD9/iinlw/o2O4b5omixct4fixkz2PPPJILB9A
|
2793
|
+
3kEspYzOmjWbxYuWjIiNtfBdjdjg4EWam44XjhYf0YU2b948xTTNoGRaSbjl
|
2794
|
+
R2mlqx0rLCxC0zR98+bNdj6AERkIgiDmOI6nlDK/7NbOF1NKYdt2KplMxoCz
|
2795
|
+
ufERAKZpxiKRSDC8wnfeeWfUl06W0FxbtWpV9tloNOoPDg6OD0BKGYtEIqGX
|
2796
|
+
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
|
2836
|
+
" alt="note" class="icon"/>
|
2837
|
+
|
2838
|
+
<div class="content">This is what a <strong>note</strong> node appears like.</div>
|
2839
|
+
</div></p></div>
|
2840
|
+
</div>
|
2841
|
+
<div class="section">
|
2842
|
+
<h5 class="title">
|
2843
|
+
<a class="toc" id="html.nodes.tip" href="#a-607126398">5.1.4.3.5</a> tip
|
2844
|
+
</h5>
|
2845
|
+
<div class="content"><p>Use a <strong>tip</strong> node when:</p>
|
2846
|
+
|
2847
|
+
|
2848
|
+
<blockquote>
|
2849
|
+
<p>When you’re giving a hint to make things easier or more productive for the reader. <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
|
2850
|
+
</blockquote>
|
2851
|
+
|
2852
|
+
|
2853
|
+
<p><div class="tip">
|
2854
|
+
<p class="title"><a class="toc" id="An-example-607596398" href="#a-607138628">Tip 1</a>. An example</p>
|
2855
|
+
|
2856
|
+
<img src="data:image/png;base64,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
|
2930
|
+
1izgAAAAAElFTkSuQmCC
|
2931
|
+
" alt="tip" class="icon"/>
|
2932
|
+
|
2933
|
+
<div class="content">This is what a <strong>tip</strong> node appears like.</div>
|
2934
|
+
</div></p></div>
|
2935
|
+
</div></p></div>
|
2936
|
+
</div>
|
2937
|
+
<div class="section">
|
2938
|
+
<h4 class="title">
|
2939
|
+
<a class="toc" id="Auxilary-materials" href="#a-607146608">5.1.4.4</a> Auxilary materials
|
2940
|
+
</h4>
|
2941
|
+
<div class="content"><div class="section">
|
2942
|
+
<h5 class="title">
|
2943
|
+
<a class="toc" id="html.nodes.figure" href="#a-607156758">5.1.4.4.1</a> figure
|
2944
|
+
</h5>
|
2945
|
+
<div class="content"><p>A diagram, sketch, image, or illustration; something that visually depicts an idea or thought.</p>
|
2946
|
+
|
2947
|
+
|
2948
|
+
<p><div class="figure">
|
2949
|
+
<p class="title"><a class="toc" id="An-example-607631908" href="#a-607164328">Figure 1</a>. An example</p>
|
2950
|
+
<div class="content">This is what a <strong>figure</strong> node appears like.</div>
|
2951
|
+
</div></p></div>
|
2952
|
+
</div>
|
2953
|
+
<div class="section">
|
2954
|
+
<h5 class="title">
|
2955
|
+
<a class="toc" id="html.nodes.table" href="#a-607167508">5.1.4.4.2</a> table
|
2956
|
+
</h5>
|
2957
|
+
<div class="content"><p>Information (typically measurement data) represented in tabular form for easy reading, comparison, and analysis.</p>
|
2958
|
+
|
2959
|
+
|
2960
|
+
<p><div class="table">
|
2961
|
+
<p class="title"><a class="toc" id="An-example-607655288" href="#a-607171508">Table 1</a>. An example</p>
|
2962
|
+
<div class="content">This is what a <strong>table</strong> node appears like.</div>
|
2963
|
+
</div></p></div>
|
2964
|
+
</div>
|
2965
|
+
<div class="section">
|
2966
|
+
<h5 class="title">
|
2967
|
+
<a class="toc" id="html.nodes.example" href="#a-607181668">5.1.4.4.3</a> example
|
2968
|
+
</h5>
|
2969
|
+
<div class="content"><p>A sample application of an idea or thought.</p>
|
2970
|
+
|
2971
|
+
|
2972
|
+
<p><div class="example">
|
2973
|
+
<p class="title"><a class="toc" id="An-example-607042088" href="#a-607184898">Example 4</a>. An example</p>
|
2974
|
+
<div class="content">This is what a <strong>example</strong> node appears like.</div>
|
2975
|
+
</div></p></div>
|
2976
|
+
</div>
|
2977
|
+
<div class="section">
|
2978
|
+
<h5 class="title">
|
2979
|
+
<a class="toc" id="html.nodes.equation" href="#a-607192218">5.1.4.4.4</a> equation
|
2980
|
+
</h5>
|
2981
|
+
<div class="content"><p>A mathematical equation or formula.</p>
|
2982
|
+
|
2983
|
+
|
2984
|
+
<p><div class="equation">
|
2985
|
+
<p class="title"><a class="toc" id="An-example-607221568" href="#a-607196278">Equation 1</a>. An example</p>
|
2986
|
+
<div class="content">This is what a <strong>equation</strong> node appears like.</div>
|
2987
|
+
</div></p></div>
|
2988
|
+
</div>
|
2989
|
+
<div class="section">
|
2990
|
+
<h5 class="title">
|
2991
|
+
<a class="toc" id="html.nodes.procedure" href="#a-607200198">5.1.4.4.5</a> procedure
|
2992
|
+
</h5>
|
2993
|
+
<div class="content"><p>An outline; a series of steps outlining some kind of process.</p>
|
2994
|
+
|
2995
|
+
|
2996
|
+
<p><div class="procedure">
|
2997
|
+
<p class="title"><a class="toc" id="An-example-607256878" href="#a-607207998">Procedure 1</a>. An example</p>
|
2998
|
+
<div class="content">This is what a <strong>procedure</strong> node appears like.</div>
|
2999
|
+
</div></p></div>
|
3000
|
+
</div></div>
|
3001
|
+
</div>
|
3002
|
+
<div class="section">
|
3003
|
+
<h4 class="title">
|
3004
|
+
<a class="toc" id="Bibliography" href="#a-607214698">5.1.4.5</a> Bibliography
|
3005
|
+
</h4>
|
3006
|
+
<div class="content"><p>The nodes in this section deal with attribution of ideas—an important weapon against plagiarism.</p>
|
3007
|
+
|
3008
|
+
|
3009
|
+
<p><div class="section">
|
3010
|
+
<h5 class="title">
|
3011
|
+
<a class="toc" id="html.nodes.reference" href="#a-607220038">5.1.4.5.1</a> reference
|
3012
|
+
</h5>
|
3013
|
+
<div class="content"><p>This node stores bibliography information about an information source that is relevant to your document.</p>
|
3014
|
+
|
3015
|
+
|
3016
|
+
<p>If you wish to cite a certain source in several places in your document, start by creating a <strong>reference</strong> node first and then use a <strong>cite</strong> node (see <a class="xref" href="#html.nodes.cite">Section 5.1.4.5.2: <em>cite</em></a>) to perform the citation.</p>
|
3017
|
+
|
3018
|
+
|
3019
|
+
<p><div class="paragraph">
|
3020
|
+
<p class="title">An example</p>
|
3021
|
+
<div class="content">See <a class="xref" href="#html.nodes.reference.example">Reference 2</a> for an example of what a <strong>reference</strong> node appears like.</div>
|
3022
|
+
</div>
|
3023
|
+
</p></div>
|
3024
|
+
</div>
|
3025
|
+
<div class="section">
|
3026
|
+
<h5 class="title">
|
3027
|
+
<a class="toc" id="html.nodes.cite" href="#a-607228848">5.1.4.5.2</a> cite
|
3028
|
+
</h5>
|
3029
|
+
<div class="content"><p>A citation to a <strong>reference</strong> node (see <a class="xref" href="#html.nodes.reference">Section 5.1.4.5.1: <em>reference</em></a>) in the document’s bibliography.</p>
|
3030
|
+
|
3031
|
+
|
3032
|
+
<p>The first argument of this node is the unique identifier of the reference node you wish to cite. You can specify additional arguments to give more detail about the citation.</p>
|
3033
|
+
|
3034
|
+
|
3035
|
+
<p>For example, this node in the input document:</p>
|
3036
|
+
|
3037
|
+
|
3038
|
+
<pre><%= cite "html.nodes.reference.example" %></pre>
|
3039
|
+
|
3040
|
+
|
3041
|
+
<p>appears in the output document like this: <sup>[<a class="cite" href="#html.nodes.reference.example">2</a>]</sup></p>
|
3042
|
+
|
3043
|
+
|
3044
|
+
<p>As another example, this node in the input document:</p>
|
3045
|
+
|
3046
|
+
|
3047
|
+
<pre><%= cite "html.nodes.reference.example", "chapter 10", "page 53", "..." %></pre>
|
3048
|
+
|
3049
|
+
|
3050
|
+
<p>appears in the output document like this: <sup>[<a class="cite" href="#html.nodes.reference.example">2</a>, chapter 10, page 53, ...]</sup></p></div>
|
3051
|
+
</div></p></div>
|
3052
|
+
</div></p></div>
|
3053
|
+
</div></p></div>
|
3054
|
+
</div>
|
3055
|
+
<div class="chapter">
|
3056
|
+
<h1 class="title">
|
3057
|
+
Chapter
|
3058
|
+
<a class="toc" id="text" href="#a-607236588">5.2</a>
|
3059
|
+
|
3060
|
+
<br/>
|
3061
|
+
|
3062
|
+
<big>Plain text</big>
|
3063
|
+
</h1>
|
3064
|
+
|
3065
|
+
<div class="content"><p>This format is not yet implemented.</p>
|
3066
|
+
|
3067
|
+
|
3068
|
+
<p>http://en.wikipedia.org/wiki/Plain_text</p></div>
|
3069
|
+
</div>
|
3070
|
+
<div class="chapter">
|
3071
|
+
<h1 class="title">
|
3072
|
+
Chapter
|
3073
|
+
<a class="toc" id="latex" href="#a-607238658">5.3</a>
|
3074
|
+
|
3075
|
+
<br/>
|
3076
|
+
|
3077
|
+
<big>LaTeX</big>
|
3078
|
+
</h1>
|
3079
|
+
|
3080
|
+
<div class="content"><p>This format is not yet implemented.</p>
|
3081
|
+
|
3082
|
+
|
3083
|
+
<p>http://www.latex-project.org</p></div>
|
3084
|
+
</div>
|
3085
|
+
<div class="chapter">
|
3086
|
+
<h1 class="title">
|
3087
|
+
Chapter
|
3088
|
+
<a class="toc" id="man" href="#a-607240758">5.4</a>
|
3089
|
+
|
3090
|
+
<br/>
|
3091
|
+
|
3092
|
+
<big>UNIX man page</big>
|
3093
|
+
</h1>
|
3094
|
+
|
3095
|
+
<div class="content"><p>This format is not yet implemented.</p>
|
3096
|
+
|
3097
|
+
|
3098
|
+
<p>http://en.wikipedia.org/wiki/Man_page</p></div>
|
3099
|
+
</div></p></div>
|
3100
|
+
</div></div>
|
3101
|
+
|
3102
|
+
<div id="references">
|
3103
|
+
<h1 class="title">References</h1>
|
3104
|
+
<ol>
|
3105
|
+
<li id="KDE.admonitions">L. Watts, “Admonitions: Tips, hints, and Warnings”, in <em>The KDE DocBook Authors guide</em>, Chapter 13, [Online document], 22 September 2004 (Revision 1.00.00), [cited 8 December 2007], Available at <a href="http://l10n.kde.org/docs/markup/tips-hints-etc.html">http://l10n.kde.org/docs/markup/tips-hints-etc.html</a></li>
|
3106
|
+
<li id="html.nodes.reference.example">This is what a <strong>reference</strong> node appears like.</li>
|
3107
|
+
</ol>
|
3108
|
+
</div>
|
3109
|
+
|
3110
|
+
<br style="display: none"/>
|
3111
|
+
<hr style="display: none"/>
|
3112
|
+
<br style="display: none"/>
|
3113
|
+
|
3114
|
+
<div id="footer">
|
3115
|
+
Generated on Sat Jan 12 17:08:20 -0800 2008 by <a href="http://gerbil.rubyforge.org">Gerbil</a> 1.0.0.
|
3116
|
+
|
3117
|
+
<p>The admonition icons (<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
3118
|
+
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
3119
|
+
Lmlua3NjYXBlLm9yZ5vuPBoAAAmCSURBVGiB1ZltbJXlGcd/9/N+Tlssh1Ja
|
3120
|
+
hNEJaK2UFxFptqC2wGCSTWdM3DSQzWVDEzVxy4xfjNkHQ8xMnEEXviwZ62Rj
|
3121
|
+
6siWTcVBZeJA5yBQpOWlKNZSaEvpyyk95zwv970Pp+fY5/S0tFBkXsmTc67n
|
3122
|
+
eu77+f/u6349Ryil+Cqbdq0FXKldEuClp+3nfvVz/eJLT9vPXQv/igFc13tq
|
3123
|
+
w4/ujLqu99S18C9lRr6br7zyyi2WZb2eSqUqpVSUlE5BSmW8/PLL6sv2bdtu
|
3124
|
+
TiaT9z/++ONN486AZVm/XLiw+qZlt98Wun/bsqUhf+nSJSF/ya2LQv6ixQtD
|
3125
|
+
/sJFC0L+guqqkF91S2XIr6y6idlfm1Vp2/Yz+XSOCiCEqDJMQ3ze+hm6bnC+
|
3126
|
+
sx9d1zl+vBlN1znf2Y+m6TQfa0LTvvCbmo6G/KNHj4T8Ix83hvzGI4dD/uHG
|
3127
|
+
QyG/peUElmUJIURlPp2jAkgpiwXg+R5FM9dRv3U/heXrkFJSWHZ32i/7NlJK
|
3128
|
+
CsrWUr91P9EZa5FSEildQ/3W/USmfwspJc701dRv3Y9dshopJda0VdRv3Y8V
|
3129
|
+
W4mUEjO2kvqt+zCm1iGlxCiu5fe/24defBeu6yHSkopHAxD51oEtW7bEb1++
|
3130
|
+
rLC5+ShBEKCU+uJCgWJCvlJD9/iinlw/o2O4b5omixct4fixkz2PPPJILB9A
|
3131
|
+
3kEspYzOmjWbxYuWjIiNtfBdjdjg4EWam44XjhYf0YU2b948xTTNoGRaSbjl
|
3132
|
+
R2mlqx0rLCxC0zR98+bNdj6AERkIgiDmOI6nlDK/7NbOF1NKYdt2KplMxoCz
|
3133
|
+
ufERAKZpxiKRSDC8wnfeeWfUl06W0FxbtWpV9tloNOoPDg6OD0BKGYtEIqGX
|
3134
|
+
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
|
3174
|
+
" alt="note"/> <img src="data:image/png;base64,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
|
3230
|
+
" alt="warning"/> <img src="data:image/png;base64,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
|
3281
|
+
4xicOQAAAABJRU5ErkJggg==
|
3282
|
+
" alt="caution"/> <img src="data:image/png;base64,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
|
3337
|
+
2wAAAABJRU5ErkJggg==
|
3338
|
+
" alt="important"/> <img src="data:image/png;base64,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
|
3412
|
+
1izgAAAAAElFTkSuQmCC
|
3413
|
+
" alt="tip"/>) used in this document are Copyright © 2005 <a href="http://tango.freedesktop.org">Tango Desktop Project</a>. They are part of the <a href="http://tango.freedesktop.org/Tango_Icon_Library">Tango Icon Theme</a> set, which is distributed under the <a href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License Agreement</a>.</p>
|
3414
|
+
</div>
|
3415
|
+
</body>
|
3416
|
+
</html>
|