erbook 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. data/LICENSE +13 -0
  2. data/README +14 -0
  3. data/Rakefile +77 -0
  4. data/bin/erbook +309 -0
  5. data/doc/HelloWorld.input +37 -0
  6. data/doc/HelloWorld.spec +62 -0
  7. data/doc/README +6 -0
  8. data/doc/api/classes/ERBook.html +164 -0
  9. data/doc/api/classes/RDoc.html +112 -0
  10. data/doc/api/classes/RDoc/AnyMethod.html +195 -0
  11. data/doc/api/classes/RDoc/AnyMethod.src/M000005.html +18 -0
  12. data/doc/api/classes/RDoc/AnyMethod.src/M000006.html +23 -0
  13. data/doc/api/classes/RDoc/AnyMethod.src/M000007.html +18 -0
  14. data/doc/api/classes/RDoc/AnyMethod.src/M000008.html +22 -0
  15. data/doc/api/classes/RDoc/TopLevel.html +250 -0
  16. data/doc/api/classes/RDoc/TopLevel.src/M000009.html +18 -0
  17. data/doc/api/classes/RDoc/TopLevel.src/M000010.html +18 -0
  18. data/doc/api/classes/RDoc/TopLevel.src/M000011.html +18 -0
  19. data/doc/api/classes/RDoc/TopLevel.src/M000012.html +29 -0
  20. data/doc/api/classes/RDoc/TopLevel.src/M000013.html +25 -0
  21. data/doc/api/classes/RDoc/TopLevel.src/M000014.html +18 -0
  22. data/doc/api/classes/String.html +261 -0
  23. data/doc/api/classes/String.src/M000001.html +18 -0
  24. data/doc/api/classes/String.src/M000002.html +34 -0
  25. data/doc/api/classes/String.src/M000003.html +20 -0
  26. data/doc/api/classes/String.src/M000004.html +26 -0
  27. data/doc/api/created.rid +1 -0
  28. data/doc/api/files/lib/erbook/html_rb.html +125 -0
  29. data/doc/api/files/lib/erbook/rdoc_rb.html +116 -0
  30. data/doc/api/files/lib/erbook_rb.html +107 -0
  31. data/doc/api/fr_class_index.html +31 -0
  32. data/doc/api/fr_file_index.html +29 -0
  33. data/doc/api/fr_method_index.html +40 -0
  34. data/doc/api/index.html +24 -0
  35. data/doc/api/rdoc-style.css +208 -0
  36. data/doc/erbook.png +0 -0
  37. data/doc/erbook.svg +349 -0
  38. data/doc/feed-icon-28x28.png +0 -0
  39. data/doc/index.html +2663 -0
  40. data/doc/manual.erb +769 -0
  41. data/fmt/html.icons/LICENSE +67 -0
  42. data/fmt/html.icons/README +31 -0
  43. data/fmt/html.icons/caution.png +0 -0
  44. data/fmt/html.icons/important.png +0 -0
  45. data/fmt/html.icons/note.png +0 -0
  46. data/fmt/html.icons/quote.png +0 -0
  47. data/fmt/html.icons/tip.png +0 -0
  48. data/fmt/html.icons/warning.png +0 -0
  49. data/fmt/html.yaml +1185 -0
  50. data/fmt/latex.yaml +2 -0
  51. data/fmt/man.yaml +2 -0
  52. data/fmt/text.yaml +2 -0
  53. data/lib/erbook.rb +13 -0
  54. data/lib/erbook/html.rb +145 -0
  55. data/lib/erbook/rdoc.rb +126 -0
  56. metadata +141 -0
Binary file
@@ -0,0 +1,349 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+ <svg
4
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
5
+ xmlns:cc="http://creativecommons.org/ns#"
6
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
7
+ xmlns:svg="http://www.w3.org/2000/svg"
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ xmlns:xlink="http://www.w3.org/1999/xlink"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ width="1978.0262"
13
+ height="476.19513"
14
+ id="svg2758"
15
+ sodipodi:version="0.32"
16
+ inkscape:version="0.46"
17
+ version="1.0"
18
+ sodipodi:docname="erbook.svg"
19
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
20
+ inkscape:export-filename="/home/sun/src/erbook/doc/erbook-power.png"
21
+ inkscape:export-xdpi="5.6699448"
22
+ inkscape:export-ydpi="5.6699448">
23
+ <defs
24
+ id="defs2760">
25
+ <linearGradient
26
+ x1="346.23685"
27
+ y1="537.41357"
28
+ x2="359.4718"
29
+ y2="537.41357"
30
+ id="linearGradient3211"
31
+ xlink:href="#linearGradient4098"
32
+ gradientUnits="userSpaceOnUse"
33
+ gradientTransform="matrix(0.6414802,0,0,0.778051,125.3732,117.52892)" />
34
+ <linearGradient
35
+ x1="186.21062"
36
+ y1="354.02182"
37
+ x2="186.21059"
38
+ y2="362.27768"
39
+ id="linearGradient3327"
40
+ xlink:href="#linearGradient4098"
41
+ gradientUnits="userSpaceOnUse" />
42
+ <linearGradient
43
+ x1="195.75447"
44
+ y1="354.02182"
45
+ x2="195.75444"
46
+ y2="362.27768"
47
+ id="linearGradient3329"
48
+ xlink:href="#linearGradient4098"
49
+ gradientUnits="userSpaceOnUse" />
50
+ <linearGradient
51
+ x1="176.38606"
52
+ y1="354.02182"
53
+ x2="176.38603"
54
+ y2="362.27768"
55
+ id="linearGradient3331"
56
+ xlink:href="#linearGradient4098"
57
+ gradientUnits="userSpaceOnUse" />
58
+ <linearGradient
59
+ x1="229.43869"
60
+ y1="354.02182"
61
+ x2="229.43866"
62
+ y2="362.27768"
63
+ id="linearGradient3333"
64
+ xlink:href="#linearGradient4098"
65
+ gradientUnits="userSpaceOnUse" />
66
+ <linearGradient
67
+ x1="238.98254"
68
+ y1="354.02182"
69
+ x2="238.98251"
70
+ y2="362.27768"
71
+ id="linearGradient3335"
72
+ xlink:href="#linearGradient4098"
73
+ gradientUnits="userSpaceOnUse" />
74
+ <linearGradient
75
+ id="linearGradient4098">
76
+ <stop
77
+ id="stop4100"
78
+ style="stop-color:#ffb142;stop-opacity:1"
79
+ offset="0" />
80
+ <stop
81
+ id="stop4104"
82
+ style="stop-color:#c87600;stop-opacity:1"
83
+ offset="1" />
84
+ </linearGradient>
85
+ <linearGradient
86
+ x1="219.61412"
87
+ y1="354.02182"
88
+ x2="219.61409"
89
+ y2="362.27768"
90
+ id="linearGradient3337"
91
+ xlink:href="#linearGradient4098"
92
+ gradientUnits="userSpaceOnUse" />
93
+ <pattern
94
+ patternUnits="userSpaceOnUse"
95
+ width="2"
96
+ height="1"
97
+ patternTransform="matrix(0,4.4721359,-4.4721359,0,-50.004131,-3.0322266e-6)"
98
+ id="Strips1_1"
99
+ inkscape:stockid="Stripes 1:1">
100
+ <rect
101
+ style="fill:black;stroke:none"
102
+ x="0"
103
+ y="-0.5"
104
+ width="1"
105
+ height="2"
106
+ id="rect3917" />
107
+ </pattern>
108
+ <inkscape:perspective
109
+ sodipodi:type="inkscape:persp3d"
110
+ inkscape:vp_x="0 : 526.18109 : 1"
111
+ inkscape:vp_y="0 : 1000 : 0"
112
+ inkscape:vp_z="744.09448 : 526.18109 : 1"
113
+ inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
114
+ id="perspective2766" />
115
+ </defs>
116
+ <sodipodi:namedview
117
+ id="base"
118
+ pagecolor="#ffffff"
119
+ bordercolor="#666666"
120
+ borderopacity="1.0"
121
+ gridtolerance="10000"
122
+ guidetolerance="10"
123
+ objecttolerance="10"
124
+ inkscape:pageopacity="0.0"
125
+ inkscape:pageshadow="2"
126
+ inkscape:zoom="0.35"
127
+ inkscape:cx="1007.816"
128
+ inkscape:cy="520"
129
+ inkscape:document-units="px"
130
+ inkscape:current-layer="layer1"
131
+ showgrid="false"
132
+ showguides="true"
133
+ inkscape:guide-bbox="true"
134
+ inkscape:window-width="958"
135
+ inkscape:window-height="616"
136
+ inkscape:window-x="960"
137
+ inkscape:window-y="541" />
138
+ <metadata
139
+ id="metadata2763">
140
+ <rdf:RDF>
141
+ <cc:Work
142
+ rdf:about="">
143
+ <dc:format>image/svg+xml</dc:format>
144
+ <dc:type
145
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
146
+ </cc:Work>
147
+ </rdf:RDF>
148
+ </metadata>
149
+ <g
150
+ inkscape:label="Layer 1"
151
+ inkscape:groupmode="layer"
152
+ id="layer1"
153
+ transform="translate(533.29881,-349.0242)">
154
+ <g
155
+ transform="translate(-645.47351,-17.17757)"
156
+ id="g2709">
157
+ <path
158
+ d="M 122.97425,810.83105 L 132.87374,792.44627 C 113.07475,734.46352 132.87374,696.98686 132.87374,696.98686 C 132.87374,696.98686 122.97425,715.37164 122.97425,715.37164 C 122.97425,715.37164 103.17526,752.8483 122.97425,810.83105 z"
159
+ id="path3189"
160
+ style="fill:#400000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
161
+ <path
162
+ d="M 123.17883,810.87773 L 584.17883,810.87773 L 452.33591,582.5191 L 255.17883,582.5191 L 123.17883,810.87773 z"
163
+ id="path3187"
164
+ style="fill:#800000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
165
+ <path
166
+ d="M 143,216.3125 L 14.46875,438.6875 L 456,438.6875 L 327.625,216.3125 L 143,216.3125 z"
167
+ transform="translate(112.1747,366.20177)"
168
+ id="path4702"
169
+ style="fill:#000000;fill-opacity:0.31372549;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
170
+ <path
171
+ d="M 132.87375,793.15338 C 113.07476,735.17063 132.87375,697.69397 132.87375,697.69397 L 554.66293,698.04753 L 554.66293,793.15341 L 132.87375,793.15338 z"
172
+ id="path3191"
173
+ style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
174
+ <path
175
+ d="M 132.87375,793.15338 C 113.07476,735.17063 132.87375,697.69397 132.87375,697.69397 L 554.66293,698.04753 L 554.66293,793.15341 L 132.87375,793.15338 z"
176
+ id="path4652"
177
+ style="opacity:0.19298245;fill:url(#Strips1_1);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
178
+ <path
179
+ d="M 123.17883,714.82748 L 584.17883,714.82748 L 452.33591,486.46885 L 255.17883,486.46885 L 123.17883,714.82748 z"
180
+ id="path2415"
181
+ style="fill:#800000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
182
+ <g
183
+ id="g2426">
184
+ <path
185
+ d="M 516.8372,534.26593 C 516.8372,625.70449 442.7116,699.83009 351.27304,699.83009 C 259.83448,699.83009 185.70888,625.70449 185.70888,534.26593 C 185.70888,442.82737 259.83448,368.70177 351.27304,368.70177 C 442.7116,368.70177 516.8372,442.82737 516.8372,534.26593 z"
186
+ transform="matrix(1,0,0,0.2812454,25,510.00608)"
187
+ id="path4721"
188
+ style="opacity:1;fill:#000000;fill-opacity:0.31372549;fill-rule:nonzero;stroke:none;stroke-width:7.76970577;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
189
+ <path
190
+ d="M 214,353.12833 C 214,360.58417 210.41828,366.62833 206,366.62833 C 201.58172,366.62833 198,360.58417 198,353.12833 C 198,345.67249 201.58172,339.62833 206,339.62833 C 210.41828,339.62833 214,345.67249 214,353.12833 z"
191
+ transform="matrix(1.78125,0,0,1.7054674,-35.00867,108.10507)"
192
+ id="path3226"
193
+ style="opacity:1;fill:url(#linearGradient3337);fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.8687048;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
194
+ <path
195
+ d="M 214,353.12833 C 214,360.58417 210.41828,366.62833 206,366.62833 C 201.58172,366.62833 198,360.58417 198,353.12833 C 198,345.67249 201.58172,339.62833 206,339.62833 C 210.41828,339.62833 214,345.67249 214,353.12833 z"
196
+ transform="matrix(1.78125,0,0,1.7054674,-69.50867,108.10507)"
197
+ id="path3228"
198
+ style="opacity:1;fill:url(#linearGradient3335);fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.8687048;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
199
+ <path
200
+ d="M 214,353.12833 C 214,360.58417 210.41828,366.62833 206,366.62833 C 201.58172,366.62833 198,360.58417 198,353.12833 C 198,345.67249 201.58172,339.62833 206,339.62833 C 210.41828,339.62833 214,345.67249 214,353.12833 z"
201
+ transform="matrix(1.78125,0,0,1.7054674,-52.50867,108.10507)"
202
+ id="path3230"
203
+ style="opacity:1;fill:url(#linearGradient3333);fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.8687048;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
204
+ <path
205
+ d="M 214,353.12833 C 214,360.58417 210.41828,366.62833 206,366.62833 C 201.58172,366.62833 198,360.58417 198,353.12833 C 198,345.67249 201.58172,339.62833 206,339.62833 C 210.41828,339.62833 214,345.67249 214,353.12833 z"
206
+ transform="matrix(1.78125,0,0,1.7054674,41.99133,108.10507)"
207
+ id="path3224"
208
+ style="opacity:1;fill:url(#linearGradient3331);fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.8687048;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
209
+ <path
210
+ d="M 214,353.12833 C 214,360.58417 210.41828,366.62833 206,366.62833 C 201.58172,366.62833 198,360.58417 198,353.12833 C 198,345.67249 201.58172,339.62833 206,339.62833 C 210.41828,339.62833 214,345.67249 214,353.12833 z"
211
+ transform="matrix(1.78125,0,0,1.7054674,7.4913299,108.10507)"
212
+ id="path3220"
213
+ style="opacity:1;fill:url(#linearGradient3329);fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.8687048;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
214
+ <path
215
+ d="M 214,353.12833 C 214,360.58417 210.41828,366.62833 206,366.62833 C 201.58172,366.62833 198,360.58417 198,353.12833 C 198,345.67249 201.58172,339.62833 206,339.62833 C 210.41828,339.62833 214,345.67249 214,353.12833 z"
216
+ transform="matrix(1.78125,0,0,1.7054674,24.49133,108.10507)"
217
+ id="path3222"
218
+ style="opacity:1;fill:url(#linearGradient3327);fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.8687048;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
219
+ <path
220
+ d="M 135.25,321.125 C 129.4436,321.125 124.46969,326.75535 122.25,334.8125 C 141.22108,339.88679 162.06417,342.84665 183.96875,343.25 C 183.67038,330.96519 177.42587,321.12501 169.75,321.125 C 166.44909,321.125 163.4167,322.95247 161,326 C 158.5833,322.95247 155.55091,321.12501 152.25,321.125 C 149.06422,321.125 146.12394,322.82984 143.75,325.6875 C 141.37606,322.82984 138.43578,321.12501 135.25,321.125 z M 212.25,321.125 C 204.59379,321.125 198.3593,330.91547 198.03125,343.15625 C 219.91183,342.45191 240.6471,339.1727 259.46875,333.8125 C 257.12155,326.29688 252.31164,321.12501 246.75,321.125 C 243.44909,321.125 240.4167,322.95247 238,326 C 235.5833,322.95247 232.55091,321.12501 229.25,321.125 C 226.06422,321.125 223.12394,322.82984 220.75,325.6875 C 218.37606,322.82984 215.43578,321.12501 212.25,321.125 z"
221
+ transform="translate(162.17883,366.20177)"
222
+ id="path3250"
223
+ style="opacity:1;fill:#000000;fill-opacity:0.31372549;fill-rule:nonzero;stroke:none;stroke-width:6.42854929;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
224
+ <path
225
+ d="M 516.8372,534.26593 C 516.8372,625.70449 442.7116,699.83009 351.27304,699.83009 C 259.83448,699.83009 185.70888,625.70449 185.70888,534.26593 C 185.70888,442.82737 259.83448,368.70177 351.27304,368.70177 C 442.7116,368.70177 516.8372,442.82737 516.8372,534.26593 z"
226
+ id="path2385"
227
+ style="opacity:1;fill:#784421;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
228
+ <path
229
+ d="M 418.63184,583.05383 C 395.24949,578.7095 416.64885,602.14014 413.06353,610.61212 C 398.88997,603.64293 404.29055,626.71508 397.88124,633.1244 C 385.73663,632.4749 383.84094,644.72137 375.36896,648.30669 C 365.13226,642.62731 357.58399,653.87501 347.81067,653.87501 C 338.03735,653.87501 332.25377,643.06849 320.25238,648.30669 C 311.7804,644.72137 309.88471,632.91607 297.7401,633.1244 C 291.33078,626.71508 292.3196,602.31939 282.5578,610.61212 C 278.97248,602.14014 295.5189,576.9448 276.98949,583.05383 C 276.98949,573.28051 296.61954,555.144 282.5578,555.49554 C 286.14313,547.02356 304.1249,540.71611 297.7401,532.98326 C 310.55873,520.16463 328.26403,512.23266 347.81067,512.23266 C 367.35731,512.23266 385.06261,520.16463 397.88124,532.98326 C 388.4082,537.62787 409.47821,547.02356 413.06353,555.49554 C 397.23708,554.70282 418.63184,573.28051 418.63184,583.05383 z"
230
+ transform="matrix(1.1333333,0,0,1.1333333,-41.338584,-43.746347)"
231
+ id="path3167"
232
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:4.41176462;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1" />
233
+ <path
234
+ d="M 335.375,90.5 C 337.35561,100.73246 338.40625,111.28543 338.40625,122.09375 C 338.40625,125.82364 338.27446,129.51884 338.03125,133.1875 C 334.35866,133.00469 330.45294,133.20654 326.28125,133.8125 C 291.06581,141.31115 306.10794,185.47656 296.9375,231.6875 C 266.59517,266.01619 222.22807,287.65625 172.84375,287.65625 C 142.47046,287.65625 114.01211,279.44899 89.53125,265.15625 C 65.852043,209.71366 97.607454,149.49163 55.875,139.09375 C 9.76453,130.76839 -8.0954791,173.55 21.71875,237.65625 C 38.179726,273.05048 65.441652,290.43601 85.5,297.1875 C 113.86337,319.98787 149.89183,333.625 189.09375,333.625 C 235.04329,333.625 276.65094,314.88556 306.65625,284.625 C 324.10978,275.90753 343.51779,260.03004 357,233.46875 C 382.2124,183.79785 377.38473,146.39033 351.53125,136.03125 C 348.36139,119.89524 342.86527,104.58934 335.375,90.5 z"
235
+ transform="translate(162.17883,366.20177)"
236
+ id="path3211"
237
+ style="fill:#000000;fill-opacity:0.31372549;fill-rule:evenodd;stroke:none;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
238
+ <path
239
+ d="M 217.9154,497.24676 C 266.0266,514.54679 203.75197,591.38947 255.73454,658.43855 C 265.34292,670.83181 197.86658,660.52932 174.01176,591.8535 C 150.81345,525.06774 172.8794,484.31442 217.9154,497.24676 z"
240
+ id="path3169"
241
+ style="fill:#784421;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
242
+ <path
243
+ d="M 484.35799,497.24676 C 436.24679,514.54679 498.52142,591.38947 446.53885,658.43855 C 436.93047,670.83181 504.40681,660.52932 528.26163,591.8535 C 551.45994,525.06774 529.39399,484.31442 484.35799,497.24676 z"
244
+ id="path3800"
245
+ style="fill:#784421;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
246
+ <path
247
+ d="M 466.68279,488.19932 C 480.07147,483.5903 493.90383,495.78316 496.54797,502.37925 C 483.03569,498.92696 476.82834,497.95345 473.32959,500.99853 C 474.83633,504.36997 490.73783,507.74044 495.66692,529.86968 C 483.23815,521.25307 473.36338,511.29411 469.39451,515.38656 C 472.27609,520.42038 475.59402,529.88395 473.35808,539.26732 C 466.21659,529.84289 458.91935,519.88888 452.21656,519.6195"
248
+ id="path2413"
249
+ style="fill:#784421;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
250
+ <path
251
+ d="M 305.32208,406.46578 C 274.08762,406.46578 248.71874,435.79717 248.71874,471.93749 C 248.71874,508.07779 274.08762,537.4092 305.32208,537.4092 C 323.67773,537.4092 339.96647,527.2683 350.30684,511.57974 C 360.6465,527.27969 376.97072,537.4092 395.33416,537.4092 C 426.56862,537.4092 451.93748,508.07778 451.93749,471.93749 C 451.93749,435.79719 426.56862,406.46579 395.33416,406.46578 C 376.97286,406.46578 360.64669,416.59842 350.30684,432.29525 C 339.96627,416.61007 323.6754,406.46579 305.32208,406.46578 z"
252
+ id="path2387"
253
+ style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
254
+ <path
255
+ d="M 352.02155,517.37473 C 342.73356,517.37473 332.63792,527.70198 333.04174,534.22444 C 333.44557,540.74691 349.5986,567.92385 353.23302,567.92385 C 356.86745,567.92385 371.00135,541.29044 370.59753,533.6809 C 370.1937,526.07135 358.07893,516.83118 352.02155,517.37473 z"
256
+ id="path3407"
257
+ style="fill:#000000;fill-opacity:0.31372549;fill-rule:evenodd;stroke:none;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
258
+ <path
259
+ d="M 349.90023,506.76588 C 340.61224,506.76588 330.5166,516.07208 330.92042,521.94967 C 331.32425,527.82727 347.47728,552.31726 351.1117,552.31726 C 354.74613,552.31726 368.88003,528.31707 368.47621,521.45987 C 368.07238,514.60267 355.95761,506.27607 349.90023,506.76588 z"
260
+ id="path2391"
261
+ style="fill:url(#linearGradient3211);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
262
+ <path
263
+ d="M 340.57116,487.36658 C 340.57368,493.105 335.92248,497.75824 330.18405,497.75824 C 324.44563,497.75824 319.79443,493.105 319.79695,487.36658 C 319.79443,481.62816 324.44563,476.97492 330.18405,476.97492 C 335.92248,476.97492 340.57368,481.62816 340.57116,487.36658 L 340.57116,487.36658 z"
264
+ transform="matrix(1.5776393,0,0,1.5776393,-190.5674,-292.52206)"
265
+ id="path2411"
266
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3.16929245;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
267
+ <path
268
+ d="M 235.32229,488.19932 C 221.93361,483.5903 208.10125,495.78316 205.45711,502.37925 C 218.96939,498.92696 225.17674,497.95345 228.67549,500.99853 C 227.16875,504.36997 211.26725,507.74044 206.33816,529.86968 C 218.76693,521.25307 228.6417,511.29411 232.61057,515.38656 C 229.72899,520.42038 226.41106,529.88395 228.647,539.26732 C 235.78849,529.84289 243.08573,519.88888 249.78852,519.6195"
269
+ id="path3193"
270
+ style="fill:#784421;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
271
+ <path
272
+ d="M 364.14937,417.48451 C 377.42529,385.32476 399.81496,380.97129 399.81496,380.97129 C 399.81496,380.97129 387.36166,397.7466 398.64099,393.08004 C 416.10629,385.85418 471.63774,408.49835 471.63774,408.49835 C 471.63774,408.49835 398.06329,391.37233 364.14937,417.48451 z"
273
+ id="path3283"
274
+ style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
275
+ <path
276
+ d="M 333.70826,414.48452 C 320.43234,382.32476 298.04267,377.97129 298.04267,377.97129 C 298.04267,377.97129 310.49598,394.74661 299.21665,390.08004 C 281.75134,382.85418 226.2199,405.49835 226.2199,405.49835 C 226.2199,405.49835 299.79434,388.37233 333.70826,414.48452 z"
277
+ id="path3285"
278
+ style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
279
+ <path
280
+ d="M 340.57116,487.36658 C 340.57368,493.105 335.92248,497.75824 330.18405,497.75824 C 324.44563,497.75824 319.79443,493.105 319.79695,487.36658 C 319.79443,481.62816 324.44563,476.97492 330.18405,476.97492 C 335.92248,476.97492 340.57368,481.62816 340.57116,487.36658 L 340.57116,487.36658 z"
281
+ transform="matrix(1.5776393,0,0,1.5776393,-149.0674,-292.52206)"
282
+ id="path3301"
283
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3.16929245;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
284
+ <path
285
+ d="M 209.5,105.42596 C 209.5,108.32545 207.14949,110.67596 204.25,110.67596 C 201.35051,110.67596 199,108.32545 199,105.42596 C 199,102.52647 201.35051,100.17596 204.25,100.17596 C 207.14949,100.17596 209.5,102.52647 209.5,105.42596 z"
286
+ transform="matrix(0.8095238,0,0,0.8095238,159.08359,385.2829)"
287
+ id="path3341"
288
+ style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
289
+ <path
290
+ d="M 209.5,105.42596 C 209.5,108.32545 207.14949,110.67596 204.25,110.67596 C 201.35051,110.67596 199,108.32545 199,105.42596 C 199,102.52647 201.35051,100.17596 204.25,100.17596 C 207.14949,100.17596 209.5,102.52647 209.5,105.42596 z"
291
+ transform="matrix(0.8095238,0,0,0.8095238,200.58359,385.2829)"
292
+ id="path3343"
293
+ style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
294
+ <path
295
+ d="M 337.9375,128.65625 C 337.52489,128.65565 337.10587,128.67679 336.6875,128.6875 C 352.89958,141.75204 359.76083,171.98462 351.46875,214.03125 C 340.44567,269.926 297.89217,294.03924 283.75,295.3125 C 288.34211,301.83893 344.72088,287.18675 366.09375,225.65625 C 386.39228,167.21871 372.0145,128.70612 337.9375,128.65625 z"
296
+ transform="translate(162.17883,366.20177)"
297
+ id="path3200"
298
+ style="fill:#000000;fill-opacity:0.31372549;fill-rule:evenodd;stroke:none;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
299
+ <path
300
+ d="M 4.0625,160.84375 C 0.61071507,177.34956 2.7639661,199.5164 11.84375,225.65625 C 35.69857,294.33207 103.17088,304.64325 93.5625,292.25 C 89.453584,286.95016 86.042108,281.57547 83.25,276.1875 C 64.298498,271.64609 29.202204,251.81127 13.34375,206.15625 C 7.4641999,189.22958 4.4898572,173.9758 4.0625,160.84375 z M 75.34375,167.1875 C 74.460897,175.72357 73.487536,184.79939 73.0625,194.3125 C 74.055786,184.52187 75.141891,175.37137 75.34375,167.1875 z"
301
+ transform="translate(162.17883,366.20177)"
302
+ id="path3205"
303
+ style="fill:#000000;fill-opacity:0.31372549;fill-rule:evenodd;stroke:none;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
304
+ </g>
305
+ <path
306
+ d="M 233.11316,756.37773 L 176.61316,756.37773 C 176.61316,756.37773 163.78571,761.91106 187.1916,790.96106 C 187.08767,771.5944 202.04454,770.21106 202.04454,770.21106 C 202.04454,770.21106 221.64846,789.57773 242.90728,797.87773 C 217.37198,764.67773 235.17787,758.45273 233.11316,756.37773 z"
307
+ id="path3216"
308
+ style="fill:#000000;fill-opacity:0.31372549;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
309
+ <path
310
+ d="M 231.76022,756.87773 L 175.26022,756.87773 C 175.26022,756.87773 158.26022,760.87773 159.76022,781.87773 C 174.26022,767.87773 190.26022,766.87773 190.26022,766.87773 C 190.26022,766.87773 195.26022,780.87773 210.26022,786.87773 C 209.76022,762.87773 232.26022,758.37773 231.76022,756.87773 z"
311
+ id="path2424"
312
+ style="fill:#000080;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
313
+ </g>
314
+ <g
315
+ id="g2652"
316
+ transform="matrix(3.2177007,0,0,3.2177007,-1668.1799,357.14144)">
317
+ <flowRoot
318
+ xml:space="preserve"
319
+ id="flowRoot2632"
320
+ style="font-size:144px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#aa0000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L"
321
+ transform="translate(10.938445,-31.267412)"><flowRegion
322
+ id="flowRegion2634"><rect
323
+ id="rect2636"
324
+ width="582.99915"
325
+ height="446.67596"
326
+ x="512.42047"
327
+ y="4.8341556"
328
+ style="font-size:144px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#aa0000;fill-opacity:1;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L" /></flowRegion><flowPara
329
+ id="flowPara2638"
330
+ style="font-size:144px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#aa0000;fill-opacity:1;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L">erb</flowPara></flowRoot> <a
331
+ transform="translate(-9.7700348,-1.5930316)"
332
+ id="a2640">
333
+ <flowRoot
334
+ transform="translate(226.656,-28.531412)"
335
+ style="font-size:144px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L"
336
+ id="flowRoot2642"
337
+ xml:space="preserve"><flowRegion
338
+ id="flowRegion2644"><rect
339
+ style="font-size:144px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L"
340
+ y="4.8341556"
341
+ x="512.42047"
342
+ height="446.67596"
343
+ width="582.99915"
344
+ id="rect2646" /></flowRegion><flowPara
345
+ style="font-size:144px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L"
346
+ id="flowPara2648">ook </flowPara></flowRoot> </a>
347
+ </g>
348
+ </g>
349
+ </svg>
Binary file
@@ -0,0 +1,2663 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml">
4
+ <head>
5
+ <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
6
+ <meta name="date" content="15 November 2008"/>
7
+ <meta name="author" content="Suraj N. Kurapati"/>
8
+ <meta name="generator" content="erbook 4.0.0"/>
9
+ <link rel="alternate" type="application/rss+xml" href="http://snk.tuxfamily.org/lib/erbook/ann"/>
10
+ <title>erbook 4.0.0 user manual</title>
11
+
12
+ <style type="text/css" media="screen">
13
+ blockquote {
14
+ background-image : url(data:image/png;base64,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);
15
+ background-repeat : no-repeat;
16
+ padding-left : 65px;
17
+ min-height : 40px;
18
+ margin-left : 0;
19
+ }
20
+ </style>
21
+
22
+ <style type="text/css" media="screen">
23
+ .icon-note {
24
+ background-image: url(data:image/png;base64,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);
25
+ background-repeat: no-repeat;
26
+ padding-left: 4em;
27
+ }
28
+ .icon-warning {
29
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAlSSURBVGiB1ZpJjFzFGcd/31t6ncWzeHrGG15JwBAcjAGDkwtJDPIgnAgh+UAkDlzgFHHIzQeOUXKJAheUE1IQEoqMMiZBkSMQToxkx2DMImMbg5cZz7jbs3W/3t6rL4funnm9zoxnEiklleq9qn9X/f9ffVWvlhZV5f85OGtSi4iMwT4LDtsi9wObDaQC1X4AW+S2BZPAtUD1vIFjo3CaNbCerKaOMZEnbMt6XlWf6Uml7M337U50pYbsSFcXkZ4u3HgCTEDZ8yhls5Tm5pmfmAiufXXBm7+VDkTk3cCYN0dVT/xPBYyJ7LdFXutav37Xzr0PJgfuuVvcaAymZyCbhVIZiiUolys/cF2IuhCJQFcSeropFwukL3ytl8+ey2VvpS8Gqi+Pqp76rwo4JrIjKvK629tzYM+PHo8P3LtbyNyGTAbyhWXVsdBaPAYDfWhvN5kLF/Szkx/ny7NzJ4uqLx1WvbzmAo6LHLQc553d+x9ObHporyXzOZi4CYFZHuEWeaoKtgXDKehNcP30WfPVx2c84/vPHlJ9f80EHBd5xU0kXn300MFEd/8g3JgA31826fB7rb0mjOMgG4bI3r7F6b+e8Mpe/ugh1d+tWsB7Im90p4aO7Hvyp8moWjB1a0nC4bxw/e2EhfMlNUjJ8jn73onc3FT6rVHVFzvxszoVHhd5pTs1dOSxp59KRr1SHXkNxcY8o4qqVtIG3AKmRWqAYDKN7QU8dOgnye6hwSPHRV7pxLFtDxwXOegmEn/+8c9HE9GCDzmvvQVXaOVWedWKFsuSCfy48PGxv3m+l/9FuzHRUsAxkR1Rx/n08aef6uqyXMh5bUl3dJ8O5Bc5N4tfyFnXhVfMcvr4iWzZD/a0mp1aulBU5PV7H9mb6HIctGr5dq5Ra7CTazS5UUM9phFfLdfpeeJujLv3PZCIirzeimuTgDGR/W5vz4GNO7ZZZi7X1Fg7X25HOky4kXQdtlpOqB0DmBmP1PYtltOdPDAmsn9JAbbIa/c9tCeumRkUWdEA7GTldqSpietgBDOdY9fe++OWyGsdBYyJPJFcP7hrIDUkWvLrLbGElVnCymHXCJNeFqZkWDfUL4nBvl1jIk+0FWBb1vNbv7cjqdNzqGW3dZGWrrGElRtdY8meEEFFqqmFPznNxp13JW14Psx5cTktIiryTP+mDWImp8GNdJ7mGtKFZ1UQWXwXaY0Jl4XxjRioCCkpvZtSYkSeQURq09dCD4zBvq71A7bjB6jjoiILDbS0imWhlgWWhVbzqeUvWE7aYyyrqT5aYaq/JZ7AKvskBvvsMdhX422FHg4P37U5ofO5yo9rhMMVhUmH3aCKa8JUDbCAEWmJQaQyBjoYCNfFvzXD4OaRBHC4yYVE5P5kb7etBtSxmt3n7bfrXqUhXevgPfccsOiGiBDki8R7k7ZV2fUBYQGw2Y3HMEXT5JNrRVSN1lUkSPuKLat5vBnFiUYANtdgCwIMpNx4FC0U6gdeVcxqBKhRjJqWW2ARwbIsROpbMA3vlZWA4CSiKKSaBaj2O7EoahVbzgodl60dQhAEHffuqkoQBItCar0SMmItNV4eNxrBVA8L6gTUKlPXreu+Ow1qlMAEy8fXhCBYdmVCaCrPZuumVwjPQiK3S4UCanRxKgvFlQQTmBWRryNKRUjx3DmCbHaRg+9jTEC5WMQSuV3Dh3tgspwvDNuBDRK9ox5YqdU7hXImQzmTQZJJrL4+/JuTWF0xSl4BKmdMQP0sdK2Yzz8QlejCtLUcESJSGaTGYLTzBn8lYWHJks3iZ7MAWNFuyoUiAteaBASq57Mzc08lYzFbInEkHl+oCKDwwgtNgky+gP/dt5THxyEIlr3UuBMMgNWbJD+XDYzq+YW8UPmx9NVxz1rfT/Gzz1Bj6r6aC+PCGPx0msLnn5M/+RGlq1dR3++4oDO1FWo7TLW8E8YAdqqP6WuTHnCsqQdG4fTx9HTgOxZqfLwPPsAeHEQGBiAwaKmI8TyCdBoNgtaWW8KCq8FIMoaJ2OTTs8EonG4SgKoi8u7Mjclfdo8MSnDpGuWpKZia6rhvrdsPrALTSZgC0eF+5m+kVeDdMKG6yVbhzfFL3+WcrRswlnTeUYW7fAnXWA6mk/sgQmTrMLeu3MgpvBnmXCdgVPVEPj19cTY9rc7Wjc2bmQ4NrRbTSby7bZhsZlYL6dmLjSfZTSsEo/ryN598mXd2bgLXWZMBqHQWZmg48QgLcx0iOzcwfv5SHni5kW+TgFHVU8G8dzLz3bhxd29f2n2WYcFluVgL0QaI37uFmauTxp/zTrY6fm+5RiupvvTtv7/wyskYzo5NS7pGeEO+li4W3T6C6Y5x89OLng8vteLaUsBh1csSmGcvfnjGs7aOYA31LWnBVblYC4yb6sPdluLqR+c9Ccyz7e4M2q6SD6m+H3iFo5f/+UkuumcXdqr/ztznDjBuqo/4nu1cP/VFzuSLRzvdFSx5vP4XkTcSg+uObDuwJ+l/M07h8g2g+YPTlLdCDFVR8R0jRLYPc+PUl7l8evatp5c4Xl/2BYediL267cc/TFjzebwvrqCl8pp+bcV1SO6+C7pjXD953jP50tpccIREHFTbemfDnrsT67akrMKlcYpXJjBmcQV6J0sELIvYthTxnSPMXZsyU+e+8SQwa3vFBCAizm/g+7vg97HuxKMbfrAzlhjolcKVCUoTGYJcoZko7d3HTsZwh/uIb0+Rz8zrzfNXCt68d+ZD+PUf4GugBBRVtbQqASLiAjEgWkt/BY88Bkd7Bnu3DGwbiXWNDApln9LEbfzZHEGxhMkXCYqVa1aJuljRCFbMxe5NEh3pQ10HbzyjmW8nCrOZ+Rt/h9/+Ec4CBaDYkBZUtbhiASLiAPEq8VjDc+xF2P8g/GwYHokN9NjrNg5Goj1Jy4lFsGMRnJiLAkGhjF8o4ueLFOZyZmY8Uy5m5s11OPsxfPgnOFMjCuSrxPOh97YiViWglmdD/Em451F4eD1sTkB/DLojFTxFKOQhl4WZKRj/F3z6D7hoQuSWISCrqk371eW4kFUlXiMfbUgj1edIKLqAXY1SjQoE1ViuxlIoFkLpgusAWSrWb7lfXckglhDZeDV1Q4RdKvsLJ0S+9qGsCaitOgLAbyGmDHhUra6q5SV53emfPaqCrBDpMPlaalVjI/la9EMCgnZW7hT+A5SLlrQmK/qkAAAAAElFTkSuQmCC);
30
+ background-repeat: no-repeat;
31
+ padding-left: 4em;
32
+ }
33
+ .icon-caution {
34
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAiESURBVGiB7ZpdbBzVFcd/Z2Znd2d3vbtm/RWvsbEdfyauSWzq2MZWEFVD5AqBaBpRVyaKoaakEBMEBRRVBaukKiqhQF+iioRU9MVUah+ChCIeEiXEIcRECShxxJflOqmxk8gmXq/Xu3v7sB84ju049oYUqUe6ujM7d+75/e+ZO/fMzIpSiu+zaTcbYKn2fwE32773Aiw3pFcR2QsvCWxSYAj8yw6/2qBUKNWuboiAv8FffIWFm8qam03Rdb744IOf/+fMmWzgJ6n2lfJL6E2RaqvL9VDVvfeak0ePEnj/fcruvttudbvX7hZZl2p/KRdghddKm5vN4MmTBM+cIdTfT+D4cSoaG50avI6IpNJfSgW8KXKn3eer9RUXy+XDh5O/Bz76CI/fjzszc9lu+FkqfaZUgAFvlDU1OQI9PajQt/NVhcOM9/RQWl/vssDOF0RSNvdSJuAtkRbnsmXLPbm5BHp7AdBXr8ZSXw/AxKef4vR4SPf73bfBI6nymxoBIqLBa+XNzc7Lhw6hIhHQNMwXX8SxYwcYBijF5SNHKK6rcwq8tEvEkQrXKRGwBx5MLyjIdrrdTJw6BYDR0oKlvBwtLw/bgw8CMPnZZ9hEyCwstFnhqVT4XrKAXSKGwCslzc3OywcPglKg65idnQCICPYtWxBHbMAv9/RQVFtraiK/+btI+lL9L1mABX6ZXVKSZtM0gn19AFg3bEArKEjeMbWMDOwPPQTA1OAg+vg4/pISyxT8dqn+lyRgl4jDItK1vKnJ8c2BAwCIzYb98cevuN2LCPaODsTjAWD8ww/Jr662aZrWsVfEvxSGJQmwwZP+FStMPRAg9NVXAFhbW9FzcpJtklHweDA7OgAIj4yghocpqKiwAH9YCsOiBewR8Wq6/mxhQ4P9m4MHY7BOJ+ZjjyXbJOATtX3TJrTMTAACvb3kVlYaumE8sFek9DsXoMP2/Ntvt6rhYabOnQPAtnkzkp4+KzyA5nDgeOIJACJjY4QHBritosKmwauL5ZDFPBPvEcmxGMbndz78sGO0u5vwyAji9eI5cABxuRAR3nvvPc7FheXm5rJ+/fqYw0iEi2vXEhkYQDNN0tav58N3350IBoPNm5X66HpZFhUBDV4qqq01wv39hEdGAGKTNA4P0N3dTVdXF11dXbzzzjsxeBGwWHBs2wZAdGKC0OefU1xZabfC64tkuT7bLVKk2+0bc1etMhIJm5aVha2t7YrLJi0tLXmOa5owAPP++7GUlQEQPH0an98vhtNZtVvkRzdcgAX+tHzNGluor4/I6CgA9i1b0EwzCQ/gdDqvEJAwEQFNw/XMMwCoUIjJs2cprqx0WhYRhesSsFfkB4bL9eOcykp9/MiRWAe33oo9nipMH+WZEUgcTxT7unUYq1YBsRTD4/Nher35u0V+esMEaPDnkvp6M3jyJNFAAABz61awWK5auKaPelpaWhJ8ulD3888DoCIRgmfOUFRe7tDh1etJtxcs4C2RRtstt/wwo7hYxo8dA0AvKcF2331XwcOVl830OTC9tjY0YGtqAiDU34/L4cDt86XfBptTLkDgjdL6esfE8eOoyUkAzG3bEF2/Cn62CMw8nqjdzz0Xa6QUwdOnKSwtdQjs6BYxUyZgr8h6Z1ZWiTc3l8DHHwNgqarCds89SZCZcNPngNPpnBUewLpqFWZLCwBT589jF+GW7GwzCFtTIyDm6fWyxkbn+NGjqHAYAMfTT18BMhNuoREQEdzPPgvxSAb7+sgvLjaVyPY9It4lC9gDG715eTkur5eJTz4BwKirw2hqmhMeoKioiPb2dtrb2yksLJwTHsBaWopzwwYAwhcuYASDZC1bZtFh+7X45k0lXhCxFMLAHRs35kRPnEjm+57ubow77pgTPlEPDAwAUFBQMCd8oo4MDnJ+zRpUKITudmOsXMnxnp6gFo0W/UKp83MxzhuBfHgko7jYbTcMgmfPAmC9664Fwb/88ss0NDTQ2NjIzp0754UXESx5ebja2mJixsaQ0VFy/X49CjvmY5wzAt0iZlBksK61NT10+DCTX34JInj37cNSWTkvvIhQU1PD0NAQADk5OfT29s4Jn6gjIyMM1tSgAgE008RaXU3vsWPBUCRS1a7UZ7NxzhmBCXgyp7zctExOxuABW0vLguABamtrk31VV1dfEx7AkpmJ59FHgViip0ZGyPP7DSu8MhfnrBHYJeIxNe3f9W1trsD+/UwNDoKuk75/P3pR0TVBRIQLFy7w9ttvA9Da2kpWVtY1zxERomNjDKxeTfTSJcRqxVZdzYkTJ4KRqamGNqU+nsk6awTssD2vqsqQixdj8ID9gQcWDA+QkZFBZ2cnnZ2dC4YH0D0evFtjS4AKhYgODZHv99u0ORK9qwT8VSRbdP2xgtpa2+V4wiZWK47OzgXBTy8LETpbW29HB3p2NhB7i+FLTxfdZlu9R2TtvAJExKrgd/kVFUZ0aIjw8HBsVMrKkg/q1wOyWKFit2PW1QGxRC88NMStOTmmBn+U6YsP0z5wiIgdcBmwLnvlSmPi0KFko/CpUwwXFc0U/51Z+Ouv8a5Ygervr/aCR0RGVXzyagAiogN2wBGFaGRyEt3nQwzjpkEnTdPQnE7CU1MAwakYZzLRS0RAj29bzsE/+w4f/nVlc7PNV1MDmhZ7WasURKOoaDS5jVKx/dm2E22i0W+3Z2s/89gsfoKTk3zR3z9xEf4xHmNNpsCilEJiDxBuIA1I+z08lQP3aeBFBNHmWbBT/aV/Wn8qvh+F0Uuw73noCsEocEkpFUwKABARJ+CKFwexMFmBqURf37Fpcf9hIAgEgHFgDBhLzIHkJFZKjYuIAiJACJiIH79ZAhKXdSTOECQGPj690VUrcfw2ZYuXhICbYRZiUUhEYFLNkjYs6s3c/5J97/9q8F/RUcwR4xicOQAAAABJRU5ErkJggg==);
35
+ background-repeat: no-repeat;
36
+ padding-left: 4em;
37
+ }
38
+ .icon-important {
39
+ background-image: url(data:image/png;base64,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);
40
+ background-repeat: no-repeat;
41
+ padding-left: 4em;
42
+ }
43
+ .icon-note {
44
+ background-image: url(data:image/png;base64,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);
45
+ background-repeat: no-repeat;
46
+ padding-left: 4em;
47
+ }
48
+ .icon-tip {
49
+ background-image: url(data:image/png;base64,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);
50
+ background-repeat: no-repeat;
51
+ padding-left: 4em;
52
+ }
53
+ </style>
54
+
55
+ <style type="text/css" media="print">
56
+ .icon-note {
57
+ display: list-item;
58
+ list-style-image: url(data:image/png;base64,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);
59
+ list-style-position: inside;
60
+ }
61
+
62
+ .icon-note li {
63
+ list-style-image: none;
64
+ }
65
+ .icon-warning {
66
+ display: list-item;
67
+ list-style-image: url(data:image/png;base64,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);
68
+ list-style-position: inside;
69
+ }
70
+
71
+ .icon-warning li {
72
+ list-style-image: none;
73
+ }
74
+ .icon-caution {
75
+ display: list-item;
76
+ list-style-image: url(data:image/png;base64,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);
77
+ list-style-position: inside;
78
+ }
79
+
80
+ .icon-caution li {
81
+ list-style-image: none;
82
+ }
83
+ .icon-important {
84
+ display: list-item;
85
+ list-style-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAk1SURBVGiBvVlpbBxnGX6+uda76/uO10fsxs5BjNOLtE3S5iAp2bSoiIqCFBSQoEgV3R8IQUUjfiAFCfhRugKqCohaobZAUyCIrtIoCW3Cmauxc9Zx4vhIfK9313vNzsz38mO9zux6du1dOzzSaGbe73qe732/Y75hRITlgNfNJACPM4bHFAFtDrvS5ix1NimKXByPRicikfhANKZf1zh6ARzx+OjmcrTLliLA62Y2AHuK7eLXXC1NO9esaxVr62tlUbEBxECaBnADJEoQRAEAhxabocH+Ie1m30BgeHj6DVWntzw+6vm/CvC6mcAY9tbXVbyy+fGHSqsaGiTEY8BMEBSeARl69gZlGay4FNxRAogGBnp7E+fP9Z2emI590+Oja/dcgNfNtldVOA9u2fpww4rmFpkmR8FDAaAQTwoChPJKkMOGa5evJLov9B8OzCRe8PhocrFV5CXgtafY/g0PrN7/4KZHbAhMgvsnCyOeCVGAUFkLLiboxPEzwb7+qa0eH3UvpuiiBHjdzGaT2Ds7dj36VEtbq8yH+nOGSaFgigKqKsf5sz3quY8H977oo0MLlllIgNfN7E67dPqZZ3etLS2yi8bo8PL0ejaIAlBdjYFbN7QPT37y8rcOGz/LlV3Ileh1M2aT8O4zX9i2tkSSRGNk6N6SBwCDA2PjaHG55E2PtB3wupk7V/acAmQBB7Ztf3hnaXG5yCdGl5foQpiewX1tLXLX+ob3vG62Nlu2rAK8bubu7Gz9TmtHh2KMDN4bkrlABBaIYuNDHUWtTRUnZ9eceZCsjF43k0qd8q83Pv4ZGx+6lXfYiF1fhlDVMUvEALgBADCu/Bl84pPFV2QYYIEYtm5prxw5dO67AA4sSoDA8PyWzeurKRwD6Vpe5AFAbH4MQtPG+XzunAfyEQCAdILERWHt6vr9Xjf7lcdH02lcMwt43ay4rMT24+aOtQr3j+fLPQk1ZG2PZ7EvACFq4MH7m20lDukn89IyDQz46hOb1jgoGEjOCAWA4kHrhGz2herjgBCJs472+n1eN3OY0+YJUCTsq29plikYKKgxILsAUgsTAACIa1i9qloE8KTZnCbA62Zl1VUlXQKzLWmlXW4PJCu1wemwidXlRd8wmzM9sOfT6xoYj8YKbwiwJmrooESk8DoFEYjE0eCq2DH77ZE0m/MoIrbW11faKBIuvCFYe4CyDew8IMRiaFxRxgC0z9nMGUSGVsXhBGmJpbVkJWAp4ZOqgxOKHQoD0JCypQkgoFGQiwDDWFpDVtOl2QOF7qc4weGQRQCulCltIRNEsY4VVnU6rDwQHgP5b4ASYUBXASYCogwmKoDsAHNWA7LDojJTHRxQbLLAGJosBYiS6ICuLpk/aWGAc0C462AKDYOiU6ZMBqAbID0OqCFQeBSQ7WDOWjBnLcAsupLrYAAkAXUpU1oIaQktSDn3pwtSB8X8oIlroNhUekp0KksZM4EYKDAAPtYDivnnp3MdBidoBuZ2l+l7IaIx4notGMsvTg0VFJ4ARScAQ5sjzJw1d/MsRkAKugqa6gMpxRDKmwGlGADAKIF4PGEAGLYUwIBhPRLsFIlAkHM3wnVQbBqI+a1nmGgBHshEIgw+fgVQnGCCBCYRItEEB3DHUoDOcT0eVXc71BBgq09KSmNhJElH/cltQQ4v6Wd+A2Hs0tw77z+Vv4A5IREQAKGmHsEZlcPkgbRvYq+b7d70QMOhzka7Q789lAwBQUwO/0QEFC/w+GSZwO5bhxNnR0N7XpsqS9kyh+yJS72TYOWVgJEAhW6DAoOg4HCy5wshL9uXSHsWggBWXIqR0cC7aWbzi8dHajyW+EhVNTCHc2nt1Xei6PlTcPwwANtzby9ZiFBagbGxYCKq8rfS7JkZVQNvXu8bj4l1rsykvCBvfRnCys2AqEDs+gqkzueWVB9qXbh0dUwDkDaYrGb9Q2d6Rqa4swzMnntlzAVWtSrnez4QyioR1pkxMOT/kcdHafv8eQI8PjLiGr1w9vxATGpqK7hR/d+/uDtmtCj0cwcLrguuVvzjP7dCOsfPM5Oynsy9/jT7eO+z928QxwbBAwXM4Uj2utj6BIxL7yVnsAIg1rkwLpTrfzlyed+L79PbmelZNw6qgX2HP7gaFZrbCg4lmuqDfva3BZMXSsuhVa2g4yd7u4nwjmWebIU9PurxB+NfP/Zhb0xatQ6QLE9g7hmYrQho6cDfPrgyGYpouzw+61DJuXX79vv0x4Hh4Ks9F2+rcsd6MFm5N2wzwIrsENrX49jJvuj4VHSbx0cWO7skFtx7ahw/OHtx5E9nuu/EpLVdYI7i5WWbSaisAqx9PY5+1Be9OeD/osdHl3PlX/B4nTEmApBe+RxeanWVfG/3jjUOGh2CsdyHvYxBrG+EVl5Lfz1yxd89EHv6p//EBQA6AJ2yEM0qgDEmAJCR3PBJAKTvb8aT6xpsr7u3r3KWFduYMdwPHpy2LJ8PhMoaCK6VuD0a0o+dutH7h279S8dvYjxFfvbSZoUsLGC211PkZfPz7na0fLYN+9say7bs2LSyqEjkMCbGwAN+II+zJCbLEMqrwGpWwD+j8b//qz92cSDy6i9P43chFaqZdMZdM3tjngBTz6cRz3z+/Gp8alsrXmpfWbGma3WNXLuiQmDxKHhwGpSIA4kESEuAdA1MUsAUBZAVsCI7WFklDEnB8JBf7746bnTfDP3+jQs4OBxCKEXSTNhCwNyJs5UAyURWySJk7nq0CS0bXdjWWsF2NjaUutqby6msWJEcDkUosisQZQmaqiEeS1A4muDTIZX3DUxT/53w+cvjOHr0Bv47HsFMBlkr4gnTu5rivZCAeYQtrrl8bRWo2lCPNSU21JQoqK6wo04R4ZhR4ffHMB5OYGoyirFTg7iq6ojn6uVcgoho7uTBSgDLEUJWIWUWLJruIpKfdKnPOgJgAOCzRA1kDNAs90xxKhHNHZvPW16JiBhjWkbDqTvNEuCzBFICdBNpEcn1RUD6N6m5vGG6p0SknjVYzD5W5IEF1oHZ2UgxETVfKbKpZ8GCfObhDrfohGxeMUzk40RkeVy4qB/dqcUMyVDJDJNM4mbymQIyvWgWYhZhYHbQZiOelwCTEJhIpuI+JYCZyKe2KNkEWIlIxTrPDJNc+B/DI2njy1uQ2wAAAABJRU5ErkJggg==);
86
+ list-style-position: inside;
87
+ }
88
+
89
+ .icon-important li {
90
+ list-style-image: none;
91
+ }
92
+ .icon-note {
93
+ display: list-item;
94
+ list-style-image: url(data:image/png;base64,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);
95
+ list-style-position: inside;
96
+ }
97
+
98
+ .icon-note li {
99
+ list-style-image: none;
100
+ }
101
+ .icon-tip {
102
+ display: list-item;
103
+ list-style-image: url(data:image/png;base64,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);
104
+ list-style-position: inside;
105
+ }
106
+
107
+ .icon-tip li {
108
+ list-style-image: none;
109
+ }
110
+ </style>
111
+
112
+ <style type="text/css" media="screen">
113
+ <!--
114
+ body
115
+ {
116
+ color : #000000;
117
+ background-color : #FFFFFF;
118
+ line-height : 1.5em;
119
+ font-family : Calibri, Verdana, sans-serif;
120
+ }
121
+
122
+ /* emphasis */
123
+
124
+ blockquote
125
+ {
126
+ font-family : Georgia, serif;
127
+ color : #444;
128
+ }
129
+
130
+ em
131
+ {
132
+ }
133
+
134
+ hr
135
+ {
136
+ height : 0;
137
+ border : 0;
138
+ border-top : 2px solid #FF0000;
139
+ }
140
+
141
+ /* source code */
142
+
143
+ tt,
144
+ code,
145
+ pre
146
+ {
147
+ font-family : Monaco, Consolas, "Lucida Console", monospace;
148
+ font-size : 100%; /* appears like "size: small" otherwise */
149
+ }
150
+
151
+ /* hyperlinks */
152
+
153
+ a > img
154
+ {
155
+ border : none;
156
+ }
157
+
158
+ a img
159
+ {
160
+ _border : none; /* for IE6 */
161
+ }
162
+
163
+ /* lists */
164
+
165
+ #content li:first-child
166
+ {
167
+ margin-top : 1em;
168
+ }
169
+
170
+ #content li
171
+ {
172
+ margin-bottom : 1em;
173
+ }
174
+
175
+ /* headings */
176
+
177
+ h1,
178
+ h2,
179
+ h3,
180
+ h4,
181
+ h5,
182
+ h6,
183
+ .title
184
+ {
185
+ font-weight : lighter;
186
+ font-family : Constantia, "Book Antiqua", "URW Bookman L", serif;
187
+ }
188
+
189
+ #lof h1,
190
+ #lof h2,
191
+ #lof h3,
192
+ #lof h4,
193
+ #lof h5,
194
+ #lof h6
195
+ {
196
+ margin-top : 1.25em;
197
+ }
198
+
199
+ #content h1,
200
+ #content h2,
201
+ #content h3,
202
+ #content h4,
203
+ #content h5,
204
+ #content h6
205
+ {
206
+ margin-top : 2.5em;
207
+ line-height : 1.25em;
208
+ }
209
+
210
+ #content h1
211
+ {
212
+ font-size : 2.0em;
213
+ }
214
+
215
+ #content h2
216
+ {
217
+ font-size : 1.8em;
218
+ }
219
+
220
+ #content h3
221
+ {
222
+ font-size : 1.6em;
223
+ }
224
+
225
+ #content h4
226
+ {
227
+ font-size : 1.4em;
228
+ }
229
+
230
+ #content h5
231
+ {
232
+ font-size : 1.2em;
233
+ }
234
+
235
+ #content h6
236
+ {
237
+ font-size : 1.0em;
238
+ }
239
+
240
+ /* tables */
241
+
242
+ table
243
+ {
244
+ border-collapse : collapse; /* no spacing between cell borders */
245
+ margin : auto; /* center horizontally */
246
+ margin-top : 1em;
247
+ }
248
+
249
+ th,
250
+ td
251
+ {
252
+ padding : 1em;
253
+ border : 1px solid #bbb;
254
+ vertical-align : top;
255
+ background-color : inherit;
256
+ _background-color : #FFFFFF; /* for IE6 */
257
+ }
258
+
259
+ th
260
+ {
261
+ background-color : #F5F5F5;
262
+ }
263
+
264
+ /* document structure */
265
+
266
+ #nav
267
+ {
268
+ text-align : center;
269
+ margin-bottom : 4em;
270
+ }
271
+
272
+ #header
273
+ {
274
+ text-align : center;
275
+ }
276
+
277
+ .header_outside_above,
278
+ #header,
279
+ .header_outside_below
280
+ {
281
+ margin-bottom : 5em;
282
+ }
283
+
284
+ .footer_outside_above,
285
+ #footer,
286
+ .footer_outside_below
287
+ {
288
+ margin-top : 5em;
289
+ }
290
+
291
+ #header .header_inside_above,
292
+ #footer .footer_inside_above
293
+ {
294
+ margin-bottom : 4em;
295
+ }
296
+
297
+ #header .header_inside_below,
298
+ #footer .footer_inside_below
299
+ {
300
+ margin-top : 4em;
301
+ }
302
+
303
+ #Abstract
304
+ {
305
+ margin-bottom : 5em;
306
+ }
307
+
308
+ #toc li
309
+ {
310
+ list-style-type : none;
311
+ }
312
+
313
+ #toc li ul
314
+ {
315
+ padding-bottom : 1em;
316
+ border-left : thick solid #F5F5F5;
317
+ _border-left : none; /* for IE6 */
318
+ }
319
+
320
+ #toc li ul:hover
321
+ {
322
+ border-color : #DCDCDC;
323
+ }
324
+
325
+ #toc > ul
326
+ {
327
+ padding-left : 1em;
328
+ }
329
+
330
+ #bib
331
+ {
332
+ margin-top : 5em;
333
+ }
334
+
335
+ #footer
336
+ {
337
+ border-top : thick dotted #DCDCDC;
338
+ padding-top : 1em;
339
+ text-align : center;
340
+ }
341
+
342
+ #footer-credits
343
+ {
344
+ margin-top : 1em;
345
+ margin-bottom : 2em;
346
+ }
347
+
348
+ /* document nodes */
349
+
350
+ .part > .title,
351
+ .chapter > .title
352
+ {
353
+ padding-bottom : 0.5em;
354
+ }
355
+
356
+ .part > .title > big,
357
+ .chapter > .title > big
358
+ {
359
+ display : block;
360
+ margin-top : 0.25em;
361
+ }
362
+
363
+ .part .title big,
364
+ .chapter .title big
365
+ {
366
+ _display : block; /* for IE6 */
367
+ _margin-top : 0.25em; /* for IE6 */
368
+ _margin-bottom : 0.75em; /* for IE6 */
369
+ }
370
+
371
+ .paragraph > .title,
372
+ .tip > .title,
373
+ .note > .title,
374
+ .caution > .title,
375
+ .warning > .title,
376
+ .important > .title,
377
+ .figure > .title,
378
+ .table > .title,
379
+ .example > .title,
380
+ .equation > .title,
381
+ .procedure > .title
382
+ {
383
+ font-size : large;
384
+ margin-top : 2em;
385
+ }
386
+
387
+ .paragraph .title,
388
+ .tip .title,
389
+ .note .title,
390
+ .caution .title,
391
+ .warning .title,
392
+ .important .title,
393
+ .figure .title,
394
+ .table .title,
395
+ .example .title,
396
+ .equation .title,
397
+ .procedure .title
398
+ {
399
+ _font-size : large; /* for IE6 */
400
+ _font-weight : bold; /* large is not bold in IE6 */
401
+ _margin-top : 2em; /* for IE6 */
402
+ }
403
+
404
+ .tip ,
405
+ .note ,
406
+ .caution ,
407
+ .warning ,
408
+ .important,
409
+ .figure ,
410
+ .table ,
411
+ .example ,
412
+ .equation ,
413
+ .procedure
414
+ {
415
+ margin : 3em;
416
+ }
417
+
418
+ .tip > .icon,
419
+ .note > .icon,
420
+ .caution > .icon,
421
+ .warning > .icon,
422
+ .important > .icon
423
+ {
424
+ float : left;
425
+ margin : 0 1em 1em 0; /* top right bottom left */
426
+ }
427
+
428
+ .tip .icon,
429
+ .note .icon,
430
+ .caution .icon,
431
+ .warning .icon,
432
+ .important .icon
433
+ {
434
+ _display : none; /* IE6 cannot display embedded images */
435
+ }
436
+
437
+ .figure > .title
438
+ {
439
+ text-align : center;
440
+ }
441
+
442
+ .figure .title
443
+ {
444
+ _text-align : center; /* for IE6 */
445
+ }
446
+
447
+ .figure > .content img
448
+ {
449
+ display : block;
450
+ margin : auto;
451
+ }
452
+
453
+ .figure .content img
454
+ {
455
+ _display : block; /* for IE6 */
456
+ _margin : auto; /* for IE6 */
457
+ }
458
+
459
+ body
460
+ {
461
+ margin : auto;
462
+ max-width : 36em;
463
+ padding : 0.5em;
464
+ }
465
+
466
+ /* source code */
467
+
468
+ tt
469
+ {
470
+ background-color : #F0F8FF;
471
+ }
472
+
473
+ pre
474
+ {
475
+ cursor : text;
476
+ line-height : normal;
477
+ border : 1px solid #b1d827;
478
+ background-color : #F5FFDF;
479
+ padding : 1em;
480
+ overflow : auto;
481
+ }
482
+
483
+ /* output of the syntax coloring library */
484
+ pre.code
485
+ {
486
+ background-color : #FFFFE8;
487
+ border-color : #EEDD88;
488
+ }
489
+
490
+ /* hyperlinks */
491
+
492
+ a
493
+ {
494
+ text-decoration : none;
495
+ }
496
+
497
+ a:hover
498
+ {
499
+ text-decoration : underline;
500
+ }
501
+
502
+ a:link
503
+ {
504
+ color : #0000FF;
505
+ }
506
+
507
+ a:visited
508
+ {
509
+ color : #C71585;
510
+ }
511
+
512
+ /* external hyperlinks */
513
+ a:not([href^="#"]):before
514
+ {
515
+ content : "\2660"; /* &spades; */
516
+ }
517
+
518
+ a.here,
519
+ a.list
520
+ {
521
+ color : #000000;
522
+ }
523
+
524
+ a:target,
525
+ a:target *,
526
+ *:target a.list
527
+ {
528
+ background-color : #FF4500 !important;
529
+ color : #FFFFFF !important;
530
+ }
531
+
532
+ a:target,
533
+ *:target a.list
534
+ {
535
+ padding : 0.1em;
536
+ font-weight : bolder;
537
+ text-decoration : none;
538
+ }
539
+
540
+ -->
541
+ </style>
542
+ <style type="text/css" media="print">
543
+ <!--
544
+ body
545
+ {
546
+ color : #000000;
547
+ background-color : #FFFFFF;
548
+ line-height : 1.5em;
549
+ font-family : Calibri, Verdana, sans-serif;
550
+ }
551
+
552
+ /* emphasis */
553
+
554
+ blockquote
555
+ {
556
+ font-family : Georgia, serif;
557
+ color : #444;
558
+ }
559
+
560
+ em
561
+ {
562
+ }
563
+
564
+ hr
565
+ {
566
+ height : 0;
567
+ border : 0;
568
+ border-top : 2px solid #FF0000;
569
+ }
570
+
571
+ /* source code */
572
+
573
+ tt,
574
+ code,
575
+ pre
576
+ {
577
+ font-family : Monaco, Consolas, "Lucida Console", monospace;
578
+ font-size : 100%; /* appears like "size: small" otherwise */
579
+ }
580
+
581
+ /* hyperlinks */
582
+
583
+ a > img
584
+ {
585
+ border : none;
586
+ }
587
+
588
+ a img
589
+ {
590
+ _border : none; /* for IE6 */
591
+ }
592
+
593
+ /* lists */
594
+
595
+ #content li:first-child
596
+ {
597
+ margin-top : 1em;
598
+ }
599
+
600
+ #content li
601
+ {
602
+ margin-bottom : 1em;
603
+ }
604
+
605
+ /* headings */
606
+
607
+ h1,
608
+ h2,
609
+ h3,
610
+ h4,
611
+ h5,
612
+ h6,
613
+ .title
614
+ {
615
+ font-weight : lighter;
616
+ font-family : Constantia, "Book Antiqua", "URW Bookman L", serif;
617
+ }
618
+
619
+ #lof h1,
620
+ #lof h2,
621
+ #lof h3,
622
+ #lof h4,
623
+ #lof h5,
624
+ #lof h6
625
+ {
626
+ margin-top : 1.25em;
627
+ }
628
+
629
+ #content h1,
630
+ #content h2,
631
+ #content h3,
632
+ #content h4,
633
+ #content h5,
634
+ #content h6
635
+ {
636
+ margin-top : 2.5em;
637
+ line-height : 1.25em;
638
+ }
639
+
640
+ #content h1
641
+ {
642
+ font-size : 2.0em;
643
+ }
644
+
645
+ #content h2
646
+ {
647
+ font-size : 1.8em;
648
+ }
649
+
650
+ #content h3
651
+ {
652
+ font-size : 1.6em;
653
+ }
654
+
655
+ #content h4
656
+ {
657
+ font-size : 1.4em;
658
+ }
659
+
660
+ #content h5
661
+ {
662
+ font-size : 1.2em;
663
+ }
664
+
665
+ #content h6
666
+ {
667
+ font-size : 1.0em;
668
+ }
669
+
670
+ /* tables */
671
+
672
+ table
673
+ {
674
+ border-collapse : collapse; /* no spacing between cell borders */
675
+ margin : auto; /* center horizontally */
676
+ margin-top : 1em;
677
+ }
678
+
679
+ th,
680
+ td
681
+ {
682
+ padding : 1em;
683
+ border : 1px solid #bbb;
684
+ vertical-align : top;
685
+ background-color : inherit;
686
+ _background-color : #FFFFFF; /* for IE6 */
687
+ }
688
+
689
+ th
690
+ {
691
+ background-color : #F5F5F5;
692
+ }
693
+
694
+ /* document structure */
695
+
696
+ #nav
697
+ {
698
+ text-align : center;
699
+ margin-bottom : 4em;
700
+ }
701
+
702
+ #header
703
+ {
704
+ text-align : center;
705
+ }
706
+
707
+ .header_outside_above,
708
+ #header,
709
+ .header_outside_below
710
+ {
711
+ margin-bottom : 5em;
712
+ }
713
+
714
+ .footer_outside_above,
715
+ #footer,
716
+ .footer_outside_below
717
+ {
718
+ margin-top : 5em;
719
+ }
720
+
721
+ #header .header_inside_above,
722
+ #footer .footer_inside_above
723
+ {
724
+ margin-bottom : 4em;
725
+ }
726
+
727
+ #header .header_inside_below,
728
+ #footer .footer_inside_below
729
+ {
730
+ margin-top : 4em;
731
+ }
732
+
733
+ #Abstract
734
+ {
735
+ margin-bottom : 5em;
736
+ }
737
+
738
+ #toc li
739
+ {
740
+ list-style-type : none;
741
+ }
742
+
743
+ #toc li ul
744
+ {
745
+ padding-bottom : 1em;
746
+ border-left : thick solid #F5F5F5;
747
+ _border-left : none; /* for IE6 */
748
+ }
749
+
750
+ #toc li ul:hover
751
+ {
752
+ border-color : #DCDCDC;
753
+ }
754
+
755
+ #toc > ul
756
+ {
757
+ padding-left : 1em;
758
+ }
759
+
760
+ #bib
761
+ {
762
+ margin-top : 5em;
763
+ }
764
+
765
+ #footer
766
+ {
767
+ border-top : thick dotted #DCDCDC;
768
+ padding-top : 1em;
769
+ text-align : center;
770
+ }
771
+
772
+ #footer-credits
773
+ {
774
+ margin-top : 1em;
775
+ margin-bottom : 2em;
776
+ }
777
+
778
+ /* document nodes */
779
+
780
+ .part > .title,
781
+ .chapter > .title
782
+ {
783
+ padding-bottom : 0.5em;
784
+ }
785
+
786
+ .part > .title > big,
787
+ .chapter > .title > big
788
+ {
789
+ display : block;
790
+ margin-top : 0.25em;
791
+ }
792
+
793
+ .part .title big,
794
+ .chapter .title big
795
+ {
796
+ _display : block; /* for IE6 */
797
+ _margin-top : 0.25em; /* for IE6 */
798
+ _margin-bottom : 0.75em; /* for IE6 */
799
+ }
800
+
801
+ .paragraph > .title,
802
+ .tip > .title,
803
+ .note > .title,
804
+ .caution > .title,
805
+ .warning > .title,
806
+ .important > .title,
807
+ .figure > .title,
808
+ .table > .title,
809
+ .example > .title,
810
+ .equation > .title,
811
+ .procedure > .title
812
+ {
813
+ font-size : large;
814
+ margin-top : 2em;
815
+ }
816
+
817
+ .paragraph .title,
818
+ .tip .title,
819
+ .note .title,
820
+ .caution .title,
821
+ .warning .title,
822
+ .important .title,
823
+ .figure .title,
824
+ .table .title,
825
+ .example .title,
826
+ .equation .title,
827
+ .procedure .title
828
+ {
829
+ _font-size : large; /* for IE6 */
830
+ _font-weight : bold; /* large is not bold in IE6 */
831
+ _margin-top : 2em; /* for IE6 */
832
+ }
833
+
834
+ .tip ,
835
+ .note ,
836
+ .caution ,
837
+ .warning ,
838
+ .important,
839
+ .figure ,
840
+ .table ,
841
+ .example ,
842
+ .equation ,
843
+ .procedure
844
+ {
845
+ margin : 3em;
846
+ }
847
+
848
+ .tip > .icon,
849
+ .note > .icon,
850
+ .caution > .icon,
851
+ .warning > .icon,
852
+ .important > .icon
853
+ {
854
+ float : left;
855
+ margin : 0 1em 1em 0; /* top right bottom left */
856
+ }
857
+
858
+ .tip .icon,
859
+ .note .icon,
860
+ .caution .icon,
861
+ .warning .icon,
862
+ .important .icon
863
+ {
864
+ _display : none; /* IE6 cannot display embedded images */
865
+ }
866
+
867
+ .figure > .title
868
+ {
869
+ text-align : center;
870
+ }
871
+
872
+ .figure .title
873
+ {
874
+ _text-align : center; /* for IE6 */
875
+ }
876
+
877
+ .figure > .content img
878
+ {
879
+ display : block;
880
+ margin : auto;
881
+ }
882
+
883
+ .figure .content img
884
+ {
885
+ _display : block; /* for IE6 */
886
+ _margin : auto; /* for IE6 */
887
+ }
888
+
889
+ /* source code */
890
+
891
+ tt
892
+ {
893
+ font-weight : normal;
894
+ }
895
+
896
+ pre
897
+ {
898
+ border : none;
899
+ }
900
+
901
+ /* headings */
902
+
903
+ h1,
904
+ h2,
905
+ h3,
906
+ h4,
907
+ h5,
908
+ h6
909
+ {
910
+ font-weight : normal;
911
+ clear : both;
912
+ }
913
+
914
+ /* hyperlinks */
915
+
916
+ /* blend all hyperlinks with normal text */
917
+ a:link,
918
+ a:visited
919
+ {
920
+ color : #000000;
921
+ text-decoration : none;
922
+ }
923
+
924
+ /* emphasize external and cross-reference hyperlinks */
925
+ a:not([href^="#"]):link,
926
+ a:not([href^="#"]):visited,
927
+ a.xref[title]:link,
928
+ a.xref[title]:visited
929
+ {
930
+ color : #0000FF;
931
+ text-decoration : underline;
932
+ font-weight : bolder;
933
+ }
934
+
935
+ /* show URL of destination for external hyperlinks */
936
+ a:not([href^="#"]):after
937
+ {
938
+ content : " " attr(href);
939
+ font-family : Monaco, Consolas, "Lucida Console", monospace;
940
+ }
941
+
942
+ /* show name of destination for cross-references */
943
+ a.xref[title]:after
944
+ {
945
+ content : " " attr(title);
946
+ }
947
+
948
+ a:after
949
+ {
950
+ font-weight : normal;
951
+ font-size : smaller;
952
+ }
953
+
954
+ /* document structure */
955
+
956
+ #nav,
957
+ #lof
958
+ {
959
+ display : none;
960
+ }
961
+
962
+ #toc,
963
+ .part,
964
+ .chapter,
965
+ #bib
966
+ {
967
+ page-break-before : always;
968
+ }
969
+
970
+ /* document nodes */
971
+
972
+ .part > .title > big,
973
+ .chapter > .title > big
974
+ {
975
+ padding-bottom : 0.5em;
976
+ }
977
+
978
+ .part .title big,
979
+ .chapter .title big
980
+ {
981
+ _padding-bottom : 0.5em; /* for IE6 */
982
+ }
983
+
984
+ -->
985
+ </style>
986
+ </head>
987
+ <body>
988
+ <div id="nav">
989
+ <a href="#Abstract">Abstract</a> &middot; <a href="#Contents">Contents</a> &middot; <a href="#Cautions">Cautions</a> &middot; <a href="#Equations">Equations</a> &middot; <a href="#Examples">Examples</a> &middot; <a href="#Figures">Figures</a> &middot; <a href="#Importants">Importants</a> &middot; <a href="#Notes">Notes</a> &middot; <a href="#Procedures">Procedures</a> &middot; <a href="#Tables">Tables</a> &middot; <a href="#Tips">Tips</a> &middot; <a href="#Warnings">Warnings</a> &middot; <a href="#References">References</a>
990
+ </div>
991
+
992
+ <br style="display: none"/>
993
+ <hr style="display: none"/>
994
+ <br style="display: none"/>
995
+
996
+
997
+ <div id="header">
998
+
999
+ <p><img src='erbook.png' alt='erbook logo' /></p>
1000
+ <h1 class="title">erbook 4.0.0 user manual</h1>
1001
+ <h2 class="authors"><a href="http://snk.tuxfamily.org">Suraj N. Kurapati</a></h2>
1002
+ <h3 class="date">15 November 2008</h3>
1003
+
1004
+ </div>
1005
+
1006
+
1007
+ <div id="Abstract">
1008
+ <h1 class="title"><a class="here" title="Permanent link to this section" href="#Abstract">Abstract</a></h1>
1009
+ <div class="content"><p>erbook is an extensible document processor that emits <a class="xref" href="#html" title="Chapter 5.1. HTML">HTML (web page)</a>, <a class="xref" href="#latex" title="Chapter 5.3. LaTeX">LaTeX (PDF)</a>, <a class="xref" href="#man" title="Chapter 5.4. UNIX man page">man (UNIX manual page)</a>, <a class="xref" href="#text" title="Chapter 5.2. Plain text">plain text</a>, and <a class="xref" href="#HelloWorld" title="Section 3.2.3. Creating your own document format">any document format you can imagine</a> from <a href='http://en.wikipedia.org/wiki/ERuby'>eRuby templates</a> that allow scripting and dynamic content generation.</p>
1010
+
1011
+ <p style='text-align: center; font-size: larger'><a class="xref" href="#Introduction" title="Chapter 1. Introduction">&#8594; Continue reading&#8230;</a></p>
1012
+
1013
+ <p><div class="paragraph">
1014
+ <p class="title" id="Resources"><a class="here" title="Permanent link to this section" href="#Resources">Resources</a></p>
1015
+ <div class="content"><ul>
1016
+ <li><a href='http://snk.tuxfamily.org/lib/erbook/log'>Releases</a> - release notes and project news. <a href='http://snk.tuxfamily.org/lib/erbook/ann'><img src='feed-icon-28x28.png' alt='RSS feed' /></a></li>
1017
+
1018
+ <li><a href='http://snk.tuxfamily.org/lib/erbook/pkg'>Downloads</a> - obtain the newest release package.</li>
1019
+
1020
+ <li><a href='api/index.html'>Reference</a> - API documentation for source code.</li>
1021
+
1022
+ <li><a href='http://snk.tuxfamily.org/lib/erbook/src'>Source code</a> - obtain via <a href='http://git.or.cz'>Git</a> or browse online. <a href='http://snk.tuxfamily.org/lib/erbook/dev'><img src='feed-icon-28x28.png' alt='RSS feed' /></a></li>
1023
+ </ul>
1024
+
1025
+ <p>To get help or provide feedback, simply <a class="xref" href="#License" title="Section 1.2.2. License">contact the author</a>.</p></div>
1026
+ </div></p></div>
1027
+ </div>
1028
+
1029
+ <br style="display: none"/>
1030
+ <hr style="display: none"/>
1031
+ <br style="display: none"/>
1032
+
1033
+ <div id="toc">
1034
+ <h1 class="title" id="Contents"><a class="here" href="#Contents">Contents</a></h1>
1035
+ <ul>
1036
+ <li>1&nbsp;&nbsp;<a id="rev:Introduction" href="#Introduction">Introduction</a><ul><li>1.1&nbsp;&nbsp;<a id="rev:Relevance" href="#Relevance">Relevance</a><ul><li>1.1.1&nbsp;&nbsp;<a id="rev:Reviews" href="#Reviews">Reviews</a></li></ul></li><li>1.2&nbsp;&nbsp;<a id="rev:Logistics" href="#Logistics">Logistics</a><ul><li>1.2.1&nbsp;&nbsp;<a id="rev:Credits" href="#Credits">Credits</a></li><li>1.2.2&nbsp;&nbsp;<a id="rev:License" href="#License">License</a></li><li>1.2.3&nbsp;&nbsp;<a id="rev:Version-numbers" href="#Version-numbers">Version numbers</a></li></ul></li></ul></li><li>2&nbsp;&nbsp;<a id="rev:Setup" href="#Setup">Setup</a><ul><li>2.1&nbsp;&nbsp;<a id="rev:Requirements" href="#Requirements">Requirements</a></li><li>2.2&nbsp;&nbsp;<a id="rev:Installation" href="#Installation">Installation</a></li><li>2.3&nbsp;&nbsp;<a id="rev:Manifest" href="#Manifest">Manifest</a></li></ul></li><li>3&nbsp;&nbsp;<a id="rev:Theory-of-operation" href="#Theory-of-operation">Theory of operation</a><ul><li>3.1&nbsp;&nbsp;<a id="rev:Nodes" href="#Nodes">Nodes</a><ul><li>3.1.1&nbsp;&nbsp;<a id="rev:Node.class" 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&nbsp;&nbsp;<a id="rev:SpecFile" href="#SpecFile">Format specification file</a><ul><li>3.2.1&nbsp;&nbsp;<a id="rev:SpecFile.nodes" href="#SpecFile.nodes">Node definition</a><ul><li>3.2.1.1&nbsp;&nbsp;<a id="rev:SpecFile.nodes.output" href="#SpecFile.nodes.output">Node output template</a></li></ul></li><li>3.2.2&nbsp;&nbsp;<a id="rev:SpecFile.output" href="#SpecFile.output">Document output template</a></li><li>3.2.3&nbsp;&nbsp;<a id="rev:HelloWorld" href="#HelloWorld">Creating your own document format</a></li></ul></li></ul></li><li>4&nbsp;&nbsp;<a id="rev:Usage" href="#Usage">Usage</a><ul><li>4.1&nbsp;&nbsp;<a id="rev:Command-line-invocation" href="#Command-line-invocation">Command-line invocation</a></li><li>4.2&nbsp;&nbsp;<a id="rev:include" href="#include">Including external documents</a></li><li>4.3&nbsp;&nbsp;<a id="rev:Unindenting-nodes-hierarchically" href="#Unindenting-nodes-hierarchically">Unindenting nodes hierarchically</a></li></ul></li><li>5&nbsp;&nbsp;<a id="rev:Formats" href="#Formats">Formats</a><ul><li>5.1&nbsp;&nbsp;<a id="rev:html" href="#html">HTML</a><ul><li>5.1.1&nbsp;&nbsp;<a id="rev:Text-to-HTML-conversion" href="#Text-to-HTML-conversion">Text to HTML conversion</a><ul><li>5.1.1.1&nbsp;&nbsp;<a id="rev:Syntax-coloring-for-source-code" href="#Syntax-coloring-for-source-code">Syntax coloring for source code</a><ul><li>5.1.1.1.1&nbsp;&nbsp;<a id="rev:Specifying-the-programming-language" href="#Specifying-the-programming-language">Specifying the programming language</a></li></ul></li><li>5.1.1.2&nbsp;&nbsp;<a id="rev:Smart-sizing-of-source-code" href="#Smart-sizing-of-source-code">Smart sizing of source code</a></li><li>5.1.1.3&nbsp;&nbsp;<a id="rev:Protecting-verbatim-text" href="#Protecting-verbatim-text">Protecting verbatim text</a></li></ul></li><li>5.1.2&nbsp;&nbsp;<a id="rev:Parameters" href="#Parameters">Parameters</a></li><li>5.1.3&nbsp;&nbsp;<a id="rev:Methods" href="#Methods">Methods</a><ul><li>5.1.3.1&nbsp;&nbsp;<a id="rev:a-Node-title" href="#a-Node-title"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#title()</span></code></a></li><li>5.1.3.2&nbsp;&nbsp;<a id="rev:a-Node-id" href="#a-Node-id"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#id()</span></code></a></li><li>5.1.3.3&nbsp;&nbsp;<a id="rev:a-Node-type_label" href="#a-Node-type_label"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#type_label()</span></code></a></li><li>5.1.3.4&nbsp;&nbsp;<a id="rev:a-Node-type_atts" href="#a-Node-type_atts"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#type_atts()</span></code></a></li><li>5.1.3.5&nbsp;&nbsp;<a id="rev:a-Node-title_atts" href="#a-Node-title_atts"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#title_atts()</span></code></a></li><li>5.1.3.6&nbsp;&nbsp;<a id="rev:a-Node-title_html" href="#a-Node-title_html"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#title_html()</span></code></a></li><li>5.1.3.7&nbsp;&nbsp;<a id="rev:a-Node-content_html" href="#a-Node-content_html"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#content_html()</span></code></a></li><li>5.1.3.8&nbsp;&nbsp;<a id="rev:a-Node-title_link-aTitle-nil" href="#a-Node-title_link-aTitle-nil"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#title_link(aTitle = nil)</span></code></a></li><li>5.1.3.9&nbsp;&nbsp;<a id="rev:a-Node-index_link" href="#a-Node-index_link"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#index_link()</span></code></a></li><li>5.1.3.10&nbsp;&nbsp;<a id="rev:a-Node-number_link" href="#a-Node-number_link"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#number_link()</span></code></a></li><li>5.1.3.11&nbsp;&nbsp;<a id="rev:a-Node-number_and_title_link" href="#a-Node-number_and_title_link"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#number_and_title_link()</span></code></a></li><li>5.1.3.12&nbsp;&nbsp;<a id="rev:a-Node-index_and_title_link" href="#a-Node-index_and_title_link"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#index_and_title_link()</span></code></a></li><li>5.1.3.13&nbsp;&nbsp;<a id="rev:a-Node-content_div" href="#a-Node-content_div"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#content_div()</span></code></a></li><li>5.1.3.14&nbsp;&nbsp;<a id="rev:a-Node-here_frag" href="#a-Node-here_frag"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#here_frag()</span></code></a></li><li>5.1.3.15&nbsp;&nbsp;<a id="rev:a-Node-list_frag" href="#a-Node-list_frag"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#list_frag()</span></code></a></li><li>5.1.3.16&nbsp;&nbsp;<a id="rev:a-Icon-css_class" href="#a-Icon-css_class"><code class="code"><span style="color:#036;font-weight:bold">Icon</span><span style="color:#666">#css_class()</span></code></a></li><li>5.1.3.17&nbsp;&nbsp;<a id="rev:a-Icon-css_image" href="#a-Icon-css_image"><code class="code"><span style="color:#036;font-weight:bold">Icon</span><span style="color:#666">#css_image()</span></code></a></li><li>5.1.3.18&nbsp;&nbsp;<a id="rev:a-Hash-to_html_atts" href="#a-Hash-to_html_atts"><code class="code"><span style="color:#036;font-weight:bold">Hash</span><span style="color:#666">#to_html_atts()</span></code></a></li><li>5.1.3.19&nbsp;&nbsp;<a id="rev:a-String-to_html_entities" href="#a-String-to_html_entities"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_html_entities()</span></code></a></li><li>5.1.3.20&nbsp;&nbsp;<a id="rev:a-String-to_uri_fragment" href="#a-String-to_uri_fragment"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_uri_fragment()</span></code></a></li><li>5.1.3.21&nbsp;&nbsp;<a id="rev:a-String-to_inline_html" href="#a-String-to_inline_html"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_inline_html()</span></code></a></li><li>5.1.3.22&nbsp;&nbsp;<a id="rev:a-String-to_html-aInline-false" href="#a-String-to_html-aInline-false"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_html(aInline = false)</span></code></a></li><li>5.1.3.23&nbsp;&nbsp;<a id="rev:a-String-thru_maruku-aInline-false" href="#a-String-thru_maruku-aInline-false"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#thru_maruku(aInline = false)</span></code></a></li><li>5.1.3.24&nbsp;&nbsp;<a id="rev:a-String-thru_coderay" href="#a-String-thru_coderay"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#thru_coderay()</span></code></a></li><li>5.1.3.25&nbsp;&nbsp;<a id="rev:a-String-protect-aInput-aTags-aVerbatim-aInput-..." href="#a-String-protect-aInput-aTags-aVerbatim-aInput-..."><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#protect(aInput, aTags, aVerbatim) {|aInput| ... }</span></code></a></li></ul></li><li>5.1.4&nbsp;&nbsp;<a id="rev:html.nodes" href="#html.nodes">Nodes</a><ul><li>5.1.4.1&nbsp;&nbsp;<a id="rev:Structural-nodes" href="#Structural-nodes">Structural nodes</a><ul><li>5.1.4.1.1&nbsp;&nbsp;<a id="rev:html.nodes.header" href="#html.nodes.header">header</a></li><li>5.1.4.1.2&nbsp;&nbsp;<a id="rev:html.nodes.footer" href="#html.nodes.footer">footer</a></li><li>5.1.4.1.3&nbsp;&nbsp;<a id="rev:html.nodes.abstract" href="#html.nodes.abstract">abstract</a></li><li>5.1.4.1.4&nbsp;&nbsp;<a id="rev:html.nodes.xref" href="#html.nodes.xref">xref</a></li></ul></li><li>5.1.4.2&nbsp;&nbsp;<a id="rev:Organizational-nodes" href="#Organizational-nodes">Organizational nodes</a><ul><li>5.1.4.2.1&nbsp;&nbsp;<a id="rev:html.nodes.part" href="#html.nodes.part">part</a><ul><li>5.1.4.2.1.1&nbsp;&nbsp;<a id="rev:An-example" href="#An-example">An example</a></li></ul></li><li>5.1.4.2.2&nbsp;&nbsp;<a id="rev:html.nodes.chapter" href="#html.nodes.chapter">chapter</a><ul><li>5.1.4.2.2.1&nbsp;&nbsp;<a id="rev:An-example-5.1.4.2.2.1" href="#An-example-5.1.4.2.2.1">An example</a></li></ul></li><li>5.1.4.2.3&nbsp;&nbsp;<a id="rev:html.nodes.section" href="#html.nodes.section">section</a><ul><li>5.1.4.2.3.1&nbsp;&nbsp;<a id="rev:An-example-5.1.4.2.3.1" href="#An-example-5.1.4.2.3.1">An example</a></li></ul></li><li>5.1.4.2.4&nbsp;&nbsp;<a id="rev:html.nodes.paragraph" href="#html.nodes.paragraph">paragraph</a></li></ul></li><li>5.1.4.3&nbsp;&nbsp;<a id="rev:Admonition-nodes" href="#Admonition-nodes">Admonition nodes</a><ul><li>5.1.4.3.1&nbsp;&nbsp;<a id="rev:html.nodes.warning" href="#html.nodes.warning">warning</a></li><li>5.1.4.3.2&nbsp;&nbsp;<a id="rev:html.nodes.caution" href="#html.nodes.caution">caution</a></li><li>5.1.4.3.3&nbsp;&nbsp;<a id="rev:html.nodes.important" href="#html.nodes.important">important</a></li><li>5.1.4.3.4&nbsp;&nbsp;<a id="rev:html.nodes.note" href="#html.nodes.note">note</a></li><li>5.1.4.3.5&nbsp;&nbsp;<a id="rev:html.nodes.tip" href="#html.nodes.tip">tip</a></li></ul></li><li>5.1.4.4&nbsp;&nbsp;<a id="rev:Auxilary-materials" href="#Auxilary-materials">Auxilary materials</a><ul><li>5.1.4.4.1&nbsp;&nbsp;<a id="rev:html.nodes.figure" href="#html.nodes.figure">figure</a></li><li>5.1.4.4.2&nbsp;&nbsp;<a id="rev:html.nodes.table" href="#html.nodes.table">table</a></li><li>5.1.4.4.3&nbsp;&nbsp;<a id="rev:html.nodes.example" href="#html.nodes.example">example</a></li><li>5.1.4.4.4&nbsp;&nbsp;<a id="rev:html.nodes.equation" href="#html.nodes.equation">equation</a></li><li>5.1.4.4.5&nbsp;&nbsp;<a id="rev:html.nodes.procedure" href="#html.nodes.procedure">procedure</a></li></ul></li><li>5.1.4.5&nbsp;&nbsp;<a id="rev:Bibliographical-nodes" href="#Bibliographical-nodes">Bibliographical nodes</a><ul><li>5.1.4.5.1&nbsp;&nbsp;<a id="rev:html.nodes.reference" href="#html.nodes.reference">reference</a></li><li>5.1.4.5.2&nbsp;&nbsp;<a id="rev:html.nodes.cite" href="#html.nodes.cite">cite</a></li></ul></li></ul></li></ul></li><li>5.2&nbsp;&nbsp;<a id="rev:text" href="#text">Plain text</a></li><li>5.3&nbsp;&nbsp;<a id="rev:latex" href="#latex">LaTeX</a></li><li>5.4&nbsp;&nbsp;<a id="rev:man" href="#man">UNIX man page</a></li></ul></li>
1037
+
1038
+ <li><a href="#References">References</a></li>
1039
+ </ul>
1040
+ </div>
1041
+
1042
+ <div id="lof"><h2 id="Cautions" class="title"><a class="here" href="#Cautions">Cautions</a></h2> <ol><li><a id="rev:An-example-1-1" href="#An-example-1-1">An example</a></li></ol><h2 id="Equations" class="title"><a class="here" href="#Equations">Equations</a></h2> <ol><li><a id="rev:An-example-1-1-1-1-1-1-1" href="#An-example-1-1-1-1-1-1-1">An example</a></li></ol><h2 id="Examples" class="title"><a class="here" href="#Examples">Examples</a></h2> <ol><li><a id="rev:HelloWorld.spec" href="#HelloWorld.spec">HelloWorld format specification file</a></li><li><a id="rev:HelloWorld.input" href="#HelloWorld.input">Input document for HelloWorld format</a></li><li><a id="rev:HelloWorld.output" href="#HelloWorld.output">Output of HelloWorld format</a></li><li><a id="rev:An-example-4" href="#An-example-4">An example</a></li></ol><h2 id="Figures" class="title"><a class="here" href="#Figures">Figures</a></h2> <ol><li><a id="rev:An-example-1-1-1-1-1" href="#An-example-1-1-1-1-1">An example</a></li></ol><h2 id="Importants" class="title"><a class="here" href="#Importants">Importants</a></h2> <ol><li><a id="rev:An-example-1-1-1" href="#An-example-1-1-1">An example</a></li></ol><h2 id="Notes" class="title"><a class="here" href="#Notes">Notes</a></h2> <ol><li><a id="rev:See-the-source-of-this-manual" href="#See-the-source-of-this-manual">See the source of this manual</a></li><li><a id="rev:An-example-2" href="#An-example-2">An example</a></li></ol><h2 id="Procedures" class="title"><a class="here" href="#Procedures">Procedures</a></h2> <ol><li><a id="rev:An-example-1-1-1-1-1-1-1-1" href="#An-example-1-1-1-1-1-1-1-1">An example</a></li></ol><h2 id="Tables" class="title"><a class="here" href="#Tables">Tables</a></h2> <ol><li><a id="rev:An-example-1-1-1-1-1-1" href="#An-example-1-1-1-1-1-1">An example</a></li></ol><h2 id="Tips" class="title"><a class="here" href="#Tips">Tips</a></h2> <ol><li><a id="rev:An-example-1-1-1-1" href="#An-example-1-1-1-1">An example</a></li></ol><h2 id="Warnings" class="title"><a class="here" href="#Warnings">Warnings</a></h2> <ol><li><a id="rev:An-example-1" href="#An-example-1">An example</a></li></ol></div>
1043
+
1044
+ <br style="display: none"/>
1045
+ <hr style="display: none"/>
1046
+ <br style="display: none"/>
1047
+
1048
+ <div id="content">
1049
+
1050
+ <div class="chapter">
1051
+ <h1 class="title" id="Introduction">
1052
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:Introduction">1</a>
1053
+ <br/>
1054
+ <big><a class="here" title="Permanent link to this section" href="#Introduction">Introduction</a></big>
1055
+ </h1>
1056
+ <div class="content"><p>erbook is an extensible document processor that emits <a class="xref" href="#html" title="Chapter 5.1. HTML">HTML (web page)</a>, <a class="xref" href="#latex" title="Chapter 5.3. LaTeX">LaTeX (PDF)</a>, <a class="xref" href="#man" title="Chapter 5.4. UNIX man page">man (UNIX manual page)</a>, <a class="xref" href="#text" title="Chapter 5.2. Plain text">plain text</a>, and <a class="xref" href="#HelloWorld" title="Section 3.2.3. Creating your own document format">any document format you can imagine</a> from <a href='http://en.wikipedia.org/wiki/ERuby'>eRuby templates</a> that allow scripting and dynamic content generation.</p>
1057
+
1058
+ <p><div class="note">
1059
+ <p class="title" id="See-the-source-of-this-manual"><a class="list" title="Return to table of contents" href="#rev:See-the-source-of-this-manual">Note 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#See-the-source-of-this-manual">See the source of this manual</a></p>
1060
+ <div class="content icon-note"><p>Did you know that this manual was generated by erbook? Here is <a href='manual.erb'>the source document</a> to prove it!</p>
1061
+
1062
+ <p>You may notice that the source document is hierarchically indented. As a result, it must be processed with the <tt>--unindent</tt> option to produce proper output:</p>
1063
+
1064
+ <pre>erbook --unindent html manual.erb</pre></div>
1065
+ </div> <div class="section">
1066
+ <h2 class="title" id="Relevance">
1067
+ <a class="list" title="Return to table of contents" href="#rev:Relevance">1.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Relevance">Relevance</a>
1068
+ </h2>
1069
+ <div class="content"><p>Unlike document processors such as <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>, erbook is:</p>
1070
+
1071
+ <ul>
1072
+ <li><em>tiny</em> because its core contains less than 200 source lines of code</li>
1073
+
1074
+ <li><em>extensible</em> because it lets you define <a class="xref" href="#HelloWorld" title="Section 3.2.3. Creating your own document format">your own custom document format</a></li>
1075
+ </ul>
1076
+
1077
+ <p>Unlike the documents of raw text processors 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>, erbook documents are <em>scriptable</em> eRuby templates, which means that you can inject arbitrary Ruby code into your documents for <strong>dynamic content generation</strong>.</p>
1078
+
1079
+ <p><div class="section">
1080
+ <h3 class="title" id="Reviews">
1081
+ <a class="list" title="Return to table of contents" href="#rev:Reviews">1.1.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Reviews">Reviews</a>
1082
+ </h3>
1083
+ <div class="content"><p>Vitor Peres in <a href='http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/283052'>ruby-talk</a>:</p>
1084
+
1085
+ <blockquote>
1086
+ <p>I actually felt like printing [this manual], because it&#8217;s just so well-thought typographically&#8230; Even if [erbook] weren&#8217;t great by itself, I&#8217;d feel good just looking at the manual.</p>
1087
+ </blockquote>
1088
+
1089
+ <p>Ara T. Howard in <a href='http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/282949'>ruby-talk</a>:</p>
1090
+
1091
+ <blockquote>
1092
+ <p>[this manual is] a insanely complete and nice looking bit of documentation [&#8230; erbook] looks like a great project</p>
1093
+ </blockquote>
1094
+
1095
+ <p>Martin DeMello in <a href='http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/283304'>ruby-talk</a>:</p>
1096
+
1097
+ <blockquote>
1098
+ <p>Very nice work indeed!</p>
1099
+ </blockquote></div>
1100
+ </div></p></div>
1101
+ </div> <div class="section">
1102
+ <h2 class="title" id="Logistics">
1103
+ <a class="list" title="Return to table of contents" href="#rev:Logistics">1.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Logistics">Logistics</a>
1104
+ </h2>
1105
+ <div class="content"><p>erbook is <a class="xref" href="#License" title="Section 1.2.2. License">open source software</a> so feel free to contribute your improvements and discuss your ideas <a class="xref" href="#License" title="Section 1.2.2. License">with the author</a>. You can obtain the source code from <a href='http://snk.tuxfamily.org/lib/erbook/src'>this source repository</a> and monitor for changes by subscribing to <a href='http://snk.tuxfamily.org/lib/erbook/dev'>this news feed</a>.</p>
1106
+
1107
+ <p><div class="section">
1108
+ <h3 class="title" id="Credits">
1109
+ <a class="list" title="Return to table of contents" href="#rev:Credits">1.2.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Credits">Credits</a>
1110
+ </h3>
1111
+ <div class="content"><p>The erbook logo, its image file &#8220;erbook.png&#8221;, and its source file &#8220;erbook.svg&#8221; make use of <a href='http://openclipart.org/media/files/lemmling/9065'>the &#8220;cartoon owl sitting on a book&#8221; graphic</a> that was created and released into the public domain by <a href='http://openclipart.org/media/people/lemmling'>Jens Vierbuchen</a> on July 7, 2008.</p></div>
1112
+ </div> <div class="section">
1113
+ <h3 class="title" id="License">
1114
+ <a class="list" title="Return to table of contents" href="#rev:License">1.2.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#License">License</a>
1115
+ </h3>
1116
+ <div class="content"><p>Copyright 2006 Suraj N. Kurapati <a href='mailto:sunaku@gmail.com'>&#115;&#117;&#110;&#097;&#107;&#117;&#064;&#103;&#109;&#097;&#105;&#108;&#046;&#099;&#111;&#109;</a></p>
1117
+
1118
+ <p>Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.</p>
1119
+
1120
+ <p>THE SOFTWARE IS PROVIDED &#8220;AS IS&#8221; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</p></div>
1121
+ </div> <div class="section">
1122
+ <h3 class="title" id="Version-numbers">
1123
+ <a class="list" title="Return to table of contents" href="#rev:Version-numbers">1.2.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Version-numbers">Version numbers</a>
1124
+ </h3>
1125
+ <div class="content"><p>erbook releases are numbered in <em>major.minor.patch</em> form, according to the <a href='http://www.rubygems.org/read/chapter/7'>RubyGems rational versioning policy</a> which can be <a href='http://ablog.apress.com/?p=738'>summarized</a> thus:</p>
1126
+ <table border="1">
1127
+ <thead>
1128
+ <tr>
1129
+ <td rowspan='2'>What increased in the version number?</td>
1130
+ <td colspan='3'>What does the increase signify about the release?</td>
1131
+ </tr>
1132
+ <tr>
1133
+ <th>Backwards compatible?</th>
1134
+ <th>New features?</th>
1135
+ <th>Bug fixes?</th>
1136
+ </tr>
1137
+ </thead>
1138
+ <tbody>
1139
+ <tr>
1140
+ <th>major</th>
1141
+ <td style='background-color: #FFE4E1;'>No</td>
1142
+ <td>Yes</td>
1143
+ <td>Yes</td>
1144
+ </tr>
1145
+ <tr>
1146
+ <th>minor</th>
1147
+ <td>Yes</td>
1148
+ <td>Yes</td>
1149
+ <td>Yes</td>
1150
+ </tr>
1151
+ <tr>
1152
+ <th>patch</th>
1153
+ <td>Yes</td>
1154
+ <td style='background-color: #FFE4E1;'>No</td>
1155
+ <td>Yes</td>
1156
+ </tr>
1157
+ </tbody>
1158
+ </table></div>
1159
+ </div></p></div>
1160
+ </div></p></div>
1161
+ </div>
1162
+ <div class="chapter">
1163
+ <h1 class="title" id="Setup">
1164
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:Setup">2</a>
1165
+ <br/>
1166
+ <big><a class="here" title="Permanent link to this section" href="#Setup">Setup</a></big>
1167
+ </h1>
1168
+ <div class="content"><p><div class="section">
1169
+ <h2 class="title" id="Requirements">
1170
+ <a class="list" title="Return to table of contents" href="#rev:Requirements">2.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Requirements">Requirements</a>
1171
+ </h2>
1172
+ <div class="content"><p>Your system needs the following software to run erbook.</p>
1173
+ <table border="1"><thead><tr><th>Software</th><th>Notes</th></tr></thead><tbody><tr><td style='text-align: left;'><a href='http://ruby-lang.org'>Ruby</a></td><td style='text-align: left;'>Version 1.8.x is required.</td>
1174
+ </tr><tr><td style='text-align: left;'><a href='http://maruku.rubyforge.org'>Maruku</a></td><td style='text-align: left;'>Required by the <a class="xref" href="#html" title="Chapter 5.1. HTML">default HTML format</a>.</td>
1175
+ </tr><tr><td style='text-align: left;'><a href='http://coderay.rubychan.de'>CodeRay</a></td><td style='text-align: left;'>Required by the <a class="xref" href="#html" title="Chapter 5.1. HTML">default HTML format</a>.</td>
1176
+ </tr></tbody></table>
1177
+ <p>If your system has <a href='http://rubygems.org'>RubyGems</a>, then you can install Maruku and CodeRay by running the following command:</p>
1178
+
1179
+ <pre>gem install maruku coderay</pre></div>
1180
+ </div> <div class="section">
1181
+ <h2 class="title" id="Installation">
1182
+ <a class="list" title="Return to table of contents" href="#rev:Installation">2.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Installation">Installation</a>
1183
+ </h2>
1184
+ <div class="content"><p>If your system has <a href='http://rubygems.org'>RubyGems</a>, then you can install erbook by running the following commands:</p>
1185
+
1186
+ <pre>gem install erbook
1187
+ erbook -v</pre>
1188
+
1189
+ <p>Otherwise, follow these instructions:</p>
1190
+
1191
+ <ol>
1192
+ <li>
1193
+ <p>Download the newest release package from <a href='http://snk.tuxfamily.org/lib/erbook/pkg'>the download area</a>.</p>
1194
+ </li>
1195
+
1196
+ <li>
1197
+ <p>Extract the release package somewhere on your system.</p>
1198
+ </li>
1199
+
1200
+ <li>
1201
+ <p>Go inside the extracted directory and run the following command:</p>
1202
+
1203
+ <pre>ruby bin/erbook -v</pre>
1204
+ </li>
1205
+ </ol>
1206
+
1207
+ <p>If the installation was successful, then you will see output like this: <pre>project: erbook
1208
+ version: 4.0.0
1209
+ release: 2008-11-15
1210
+ website: http://snk.tuxfamily.org/lib/erbook
1211
+ install: /home/sun/src/erbook
1212
+ </pre></p>
1213
+
1214
+ <p>Otherwise, you can <a class="xref" href="#License" title="Section 1.2.2. License">contact the author</a> for help.</p></div>
1215
+ </div> <div class="section">
1216
+ <h2 class="title" id="Manifest">
1217
+ <a class="list" title="Return to table of contents" href="#rev:Manifest">2.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Manifest">Manifest</a>
1218
+ </h2>
1219
+ <div class="content"><p>You will see the following items inside erbook&#8217;s installation directory, whose path you can determine by running this command:</p>
1220
+
1221
+ <pre>erbook -v</pre>
1222
+
1223
+ <ul>
1224
+ <li>
1225
+ <p><tt>bin/</tt> &#8212; contains executable programs.</p>
1226
+
1227
+ <ul>
1228
+ <li><tt>erbook</tt> &#8212; core logic of erbook.</li>
1229
+ </ul>
1230
+ </li>
1231
+
1232
+ <li>
1233
+ <p><tt>fmt/</tt> &#8212; contains the predefined set of <a class="xref" href="#SpecFile" title="Section 3.2. Format specification file">format specification files</a>. If you ever need to install your custom format specification file globally, then put it inside this directory.</p>
1234
+ </li>
1235
+
1236
+ <li>
1237
+ <p><tt>latex.yaml</tt> &#8212; high-quality typesetting</p>
1238
+ </li>
1239
+
1240
+ <li>
1241
+ <p><tt>html.yaml</tt> &#8212; web page for the Internet</p>
1242
+ </li>
1243
+
1244
+ <li>
1245
+ <p><tt>man.yaml</tt> &#8212; manual page for UNIX</p>
1246
+ </li>
1247
+
1248
+ <li>
1249
+ <p><tt>text.yaml</tt> &#8212; plain text, nothing fancy</p>
1250
+ </li>
1251
+
1252
+ <li>
1253
+ <p><tt>lib/</tt> &#8212; erbook automatically adds this directory to Ruby&#8217;s load path.</p>
1254
+
1255
+ <ul>
1256
+ <li>
1257
+ <p><tt>erbook.rb</tt> &#8212; project version information.</p>
1258
+ </li>
1259
+
1260
+ <li>
1261
+ <p><tt>erbook/</tt></p>
1262
+
1263
+ <ul>
1264
+ <li>
1265
+ <p><tt>html.rb</tt> &#8212; provides methods (see <a class="xref" href="#Text-to-HTML-conversion">Section 5.1.1. Text to HTML conversion</a>) for the <a class="xref" href="#html">Chapter 5.1. HTML</a> format.</p>
1266
+ </li>
1267
+
1268
+ <li>
1269
+ <p><tt>rdoc.rb</tt> &#8212; provides RDoc parse trees to Ruby code.</p>
1270
+ </li>
1271
+ </ul>
1272
+ </li>
1273
+ </ul>
1274
+ </li>
1275
+
1276
+ <li>
1277
+ <p><tt>doc/</tt> &#8212; contains this manual and other documentation.</p>
1278
+
1279
+ <ul>
1280
+ <li>
1281
+ <p><tt>erbook.svg</tt> &#8212; source file of the erbook logo.</p>
1282
+ </li>
1283
+
1284
+ <li>
1285
+ <p><tt>manual.erb</tt> &#8212; source file of this manual.</p>
1286
+ </li>
1287
+
1288
+ <li>
1289
+ <p><tt>api/</tt> &#8212; contains API reference documentation for the provided Ruby code.</p>
1290
+ </li>
1291
+ </ul>
1292
+ </li>
1293
+
1294
+ <li>
1295
+ <p><tt>LICENSE</tt> &#8212; project license and copyright notice.</p>
1296
+ </li>
1297
+ </ul></div>
1298
+ </div></p></div>
1299
+ </div>
1300
+ <div class="chapter">
1301
+ <h1 class="title" id="Theory-of-operation">
1302
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:Theory-of-operation">3</a>
1303
+ <br/>
1304
+ <big><a class="here" title="Permanent link to this section" href="#Theory-of-operation">Theory of operation</a></big>
1305
+ </h1>
1306
+ <div class="content"><p>When you run erbook, it does the following:</p>
1307
+
1308
+ <ol>
1309
+ <li>
1310
+ <p>Loads the <a class="xref" href="#SpecFile" title="Section 3.2. Format specification file">format specification file</a>.</p>
1311
+ </li>
1312
+
1313
+ <li>
1314
+ <p>Creates an <strong>input document</strong> by:</p>
1315
+
1316
+ <ul>
1317
+ <li>
1318
+ <p>Reading the input (the content of either the input file or the standard input stream) into memory.</p>
1319
+ </li>
1320
+
1321
+ <li>
1322
+ <p>Evaluating <a class="xref" href="#include" title="Section 4.2. Including external documents">include directives</a> in the input.</p>
1323
+ </li>
1324
+ </ul>
1325
+ </li>
1326
+
1327
+ <li>
1328
+ <p>Transforms the input document into a <strong>processed document</strong> by:</p>
1329
+
1330
+ <ul>
1331
+ <li>
1332
+ <p>Building a <strong>document tree</strong> data structure from <a class="xref" href="#Nodes" title="Section 3.1. Nodes">nodes</a> present in the input document.</p>
1333
+ </li>
1334
+
1335
+ <li>
1336
+ <p>Replacing every node in the input document with the result of its <a class="xref" href="#SpecFile.nodes.output" title="Section 3.2.1.1. Node output template">node output template</a>.</p>
1337
+ </li>
1338
+ </ul>
1339
+ </li>
1340
+
1341
+ <li>
1342
+ <p>Transforms the processed document into an <strong>output document</strong> according to the <a class="xref" href="#SpecFile.output" title="Section 3.2.2. Document output template">document output template</a>.</p>
1343
+ </li>
1344
+
1345
+ <li>
1346
+ <p>Prints the output document to the standard output stream.</p>
1347
+ </li>
1348
+ </ol>
1349
+
1350
+ <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>; because the content of the document changes radically with every transformation.</p>
1351
+
1352
+ <p><div class="section">
1353
+ <h2 class="title" id="Nodes">
1354
+ <a class="list" title="Return to table of contents" href="#rev:Nodes">3.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Nodes">Nodes</a>
1355
+ </h2>
1356
+ <div class="content"><p>A node is a block of text that appears like this:</p>
1357
+
1358
+ <pre>&lt;% node_type node_argument1, node_argument2, ... do |node_object| %&gt;
1359
+ node_content
1360
+ &lt;% end %&gt;</pre>
1361
+
1362
+ <p>Or like this:</p>
1363
+
1364
+ <pre>&lt;% node_type node_argument1, node_argument2, ... do %&gt;
1365
+ node_content
1366
+ &lt;% end %&gt;</pre>
1367
+
1368
+ <p>Or like this:</p>
1369
+
1370
+ <pre>&lt;%= node_type node_argument1, node_argument2, ... %&gt;</pre>
1371
+
1372
+ <p>Technically, nodes are Ruby method invocations composed of the following:</p>
1373
+ <table border="1"><thead><tr><th>Component</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'><code class="code">node_type</code></td><td style='text-align: left;'>name of the method being invoked</td>
1374
+ </tr><tr><td style='text-align: left;'><code class="code">node_argument1, node_argument2, ...</code></td><td style='text-align: left;'>arguments for the method invocation</td>
1375
+ </tr><tr><td style='text-align: left;'><code class="code">node_content</code></td><td style='text-align: left;'>a block argument being passed to the method invocation</td>
1376
+ </tr><tr><td style='text-align: left;'><code class="code">node_object</code></td><td style='text-align: left;'>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. The <code class="code"><span style="color:#036;font-weight:bold">Node</span></code> class</a>) representing this method invocation</td>
1377
+ </tr></tbody></table>
1378
+ <p>A <a class="xref" href="#SpecFile" title="Section 3.2. Format specification file">format specification file</a> defines what types of nodes an input document may use.</p>
1379
+
1380
+ <p><div class="section">
1381
+ <h3 class="title" id="Node.class">
1382
+ <a class="list" title="Return to table of contents" href="#rev:Node.class">3.1.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Node.class">The <code class="code"><span style="color:#036;font-weight:bold">Node</span></code> class</a>
1383
+ </h3>
1384
+ <div class="content"><p>When erbook builds a document tree from the nodes 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>
1385
+ <table border="1"><thead><tr><th>Property</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'>type</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>Name of the type of this node.</td>
1386
+ </tr><tr><td style='text-align: left;'>args</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Array</span></code></td><td style='text-align: left;'>Arguments passed to this node.</td>
1387
+ </tr><tr><td style='text-align: left;'>content</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>The block of text passed to this node.</td>
1388
+ </tr><tr><td style='text-align: left;'>output</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>Result of the node output template for the content of this node.</td>
1389
+ </tr><tr><td style='text-align: left;'>digest</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>A unique identifier for the content of this node.</td>
1390
+ </tr><tr><td style='text-align: left;'>trace</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Array</span></code></td><td style='text-align: left;'>A stack trace describing the location of this node in the input document.</td>
1391
+ </tr><tr><td style='text-align: left;'>index</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>A LaTeX-style section number for this node. This property is only present if the <strong>index</strong> parameter is enabled in the definition of this type of node.</td>
1392
+ </tr><tr><td style='text-align: left;'>number</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Integer</span></code></td><td style='text-align: left;'>An order-of-occurrence number for this node. This property is only present if the <strong>number</strong> parameter is enabled in the definition of this type of node.</td>
1393
+ </tr><tr><td style='text-align: left;'>depth</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Integer</span></code></td><td style='text-align: left;'>Distance from the root of the document tree to this node.</td>
1394
+ </tr><tr><td style='text-align: left;'>parent</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Node</span></code></td><td style='text-align: left;'>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>
1395
+ </tr><tr><td style='text-align: left;'>children</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Array</span></code> of <code class="code"><span style="color:#036;font-weight:bold">Node</span></code></td><td style='text-align: left;'>List of child nodes from the document tree.</td>
1396
+ </tr></tbody></table>
1397
+ <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&#8217;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>
1398
+ </div></p></div>
1399
+ </div> <div class="section">
1400
+ <h2 class="title" id="SpecFile">
1401
+ <a class="list" title="Return to table of contents" href="#rev:SpecFile">3.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#SpecFile">Format specification file</a>
1402
+ </h2>
1403
+ <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>
1404
+ <table border="1"><thead><tr><th>Parameter</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'>desc</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>A short description of the output format.</td>
1405
+ </tr><tr><td style='text-align: left;'>code</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>Ruby code that will be loaded before the input document is processed. This source code will be evaluated inside the main erbook executable, so any file-system or path-dependent portions of this source code should take appropriate precautions.</td>
1406
+ </tr><tr><td style='text-align: left;'>nodes</td><td style='text-align: left;'>Hash</td><td style='text-align: left;'>A listing of <a class="xref" href="#SpecFile.nodes" title="Section 3.2.1. Node definition">node definitions</a>.</td>
1407
+ </tr><tr><td style='text-align: left;'>output</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>An eRuby template for the final output document. See <a class="xref" href="#SpecFile.output">Section 3.2.2. Document output template</a>.</td>
1408
+ </tr></tbody></table>
1409
+ <p><div class="section">
1410
+ <h3 class="title" id="SpecFile.nodes">
1411
+ <a class="list" title="Return to table of contents" href="#rev:SpecFile.nodes">3.2.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#SpecFile.nodes">Node definition</a>
1412
+ </h3>
1413
+ <div class="content"><p>A node definition is a mapping from a name (the &#8220;node type&#8221;) to the following set of parameters:</p>
1414
+ <table border="1"><thead><tr><th>Parameter</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'>index</td><td style='text-align: left;'>Boolean</td><td style='text-align: left;'>Assign a LaTeX-style section number to this node?</td>
1415
+ </tr><tr><td style='text-align: left;'>number</td><td style='text-align: left;'>Boolean</td><td style='text-align: left;'>Assign an order-of-occurrence number to this node?</td>
1416
+ </tr><tr><td style='text-align: left;'>silent</td><td style='text-align: left;'>Boolean</td><td style='text-align: left;'>Suppress the output of this node?</td>
1417
+ </tr><tr><td style='text-align: left;'>output</td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>An eRuby template for the content of this node. See <a class="xref" href="#SpecFile.nodes.output">Section 3.2.1.1. Node output template</a>.</td>
1418
+ </tr></tbody></table>
1419
+ <p>You may define additional parameters in a node definition if you want.</p>
1420
+
1421
+ <p><div class="section">
1422
+ <h4 class="title" id="SpecFile.nodes.output">
1423
+ <a class="list" title="Return to table of contents" href="#rev:SpecFile.nodes.output">3.2.1.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#SpecFile.nodes.output">Node output template</a>
1424
+ </h4>
1425
+ <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&#8217;s content into output. During the processing stage, erbook 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&#8217;s definition.</p>
1426
+
1427
+ <p>The following variables are available for use in this template:</p>
1428
+ <table border="1"><thead><tr><th>Variable</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@node</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Node</span></code></td><td style='text-align: left;'>the node for which this template is being evaluated</td>
1429
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@roots</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Array</span></code> of <code class="code"><span style="color:#036;font-weight:bold">Node</span></code></td><td style='text-align: left;'>All root nodes in the document tree.</td>
1430
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@nodes</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Array</span></code> of <code class="code"><span style="color:#036;font-weight:bold">Node</span></code></td><td style='text-align: left;'>All nodes in the document tree.</td>
1431
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@types</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Hash</span></code></td><td style='text-align: left;'>Mapping from node type (<code class="code"><span style="color:#036;font-weight:bold">String</span></code>) to array of <code class="code"><span style="color:#036;font-weight:bold">Node</span></code> objects having that type.</td>
1432
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@spec</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Hash</span></code></td><td style='text-align: left;'>Data from the format specification file.</td>
1433
+ </tr></tbody></table>
1434
+ <p>erbook also provides the following mappings inside the <code class="code"><span style="color:#33B">@spec</span></code> variable:</p>
1435
+ <table border="1"><thead><tr><th>Expression</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@spec</span>[<span style="color:#A60">:name</span>]</code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>Short-hand name of the current format.</td>
1436
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@spec</span>[<span style="color:#A60">:file</span>]</code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>Path of the current format specification file.</td>
1437
+ </tr></tbody></table></div>
1438
+ </div></p></div>
1439
+ </div> <div class="section">
1440
+ <h3 class="title" id="SpecFile.output">
1441
+ <a class="list" title="Return to table of contents" href="#rev:SpecFile.output">3.2.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#SpecFile.output">Document output template</a>
1442
+ </h3>
1443
+ <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>
1444
+
1445
+ <p>The following variables are available for use in this template:</p>
1446
+ <table border="1"><thead><tr><th>Variable</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@content</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>Content of the processed document.</td>
1447
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@roots</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Array</span></code> of <code class="code"><span style="color:#036;font-weight:bold">Node</span></code></td><td style='text-align: left;'>All root nodes in the document tree.</td>
1448
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@nodes</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Array</span></code> of <code class="code"><span style="color:#036;font-weight:bold">Node</span></code></td><td style='text-align: left;'>All nodes in the document tree.</td>
1449
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@types</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Hash</span></code></td><td style='text-align: left;'>Mapping from node type (<code class="code"><span style="color:#036;font-weight:bold">String</span></code>) to array of <code class="code"><span style="color:#036;font-weight:bold">Node</span></code> objects having that type.</td>
1450
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@spec</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Hash</span></code></td><td style='text-align: left;'>Data from the format specification file.</td>
1451
+ </tr></tbody></table>
1452
+ <p>erbook also provides the following mappings inside the <code class="code"><span style="color:#33B">@spec</span></code> variable:</p>
1453
+ <table border="1"><thead><tr><th>Expression</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@spec</span>[<span style="color:#A60">:name</span>]</code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>Short-hand name of the current format.</td>
1454
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#33B">@spec</span>[<span style="color:#A60">:file</span>]</code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'>Path of the current format specification file.</td>
1455
+ </tr></tbody></table></div>
1456
+ </div> <div class="section">
1457
+ <h3 class="title" id="HelloWorld">
1458
+ <a class="list" title="Return to table of contents" href="#rev:HelloWorld">3.2.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#HelloWorld">Creating your own document format</a>
1459
+ </h3>
1460
+ <div class="content"><p>Here is a working example to help you digest all that you&#8217;ve learned so far about format specification files. A few things to notice in this example are:</p>
1461
+
1462
+ <ul>
1463
+ <li>
1464
+ <p>We define a <code class="code">generate_name()</code> method in <a class="xref" href="#HelloWorld.spec">Example 1. HelloWorld format specification file</a> and make use of it in the <a class="xref" href="#HelloWorld.input">Example 2. Input document for HelloWorld format</a>. This shows how to provide format-specific functionality to an input document.</p>
1465
+ </li>
1466
+
1467
+ <li>
1468
+ <p>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. Input document for HelloWorld format</a> and make use of it in <a class="xref" href="#HelloWorld.spec">Example 1. HelloWorld format specification file</a>. This shows how to pass parameters from an input document to your format specification file.</p>
1469
+ </li>
1470
+ </ul>
1471
+
1472
+ <p>To run this example:</p>
1473
+
1474
+ <ol>
1475
+ <li>
1476
+ <p>Save the code shown in <a class="xref" href="#HelloWorld.spec">Example 1. HelloWorld format specification file</a> to a file named <tt>HelloWorld.spec</tt></p>
1477
+ </li>
1478
+
1479
+ <li>
1480
+ <p>Save the text shown in <a class="xref" href="#HelloWorld.input">Example 2. Input document for HelloWorld format</a> to a file named <tt>HelloWorld.input</tt></p>
1481
+ </li>
1482
+
1483
+ <li>
1484
+ <p>Run this command:</p>
1485
+
1486
+ <pre>erbook HelloWorld.spec HelloWorld.input &gt; HelloWorld.output</pre>
1487
+ </li>
1488
+
1489
+ <li>
1490
+ <p>Examine the <tt>HelloWorld.output</tt> file to your satisfaction!</p>
1491
+ </li>
1492
+ </ol>
1493
+
1494
+ <p><div class="example">
1495
+ <p class="title"><a class="list" title="Return to table of contents" href="#rev:HelloWorld.spec">Example 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#HelloWorld.spec">HelloWorld format specification file</a></p>
1496
+ <div class="content"><p><pre class="code" lang="rhtml">desc: An example format.
1497
+
1498
+ code: |
1499
+ # Returns a random, yet pronounceable, name.
1500
+ def generate_name
1501
+ letters = ('a'..'z').to_a - %w[ c q w x ] # redundant sounds
1502
+ vowels = %w[a e i o u]
1503
+ consonants = letters - vowels
1504
+ sets = [consonants, vowels]
1505
+
1506
+ length = 3 + rand(5)
1507
+
1508
+ name = (0...length).map do |i|
1509
+ # alternate between consonants and vowels
1510
+ set = sets[i % sets.length]
1511
+
1512
+ # choose a random letter from the set
1513
+ set[rand(set.length)]
1514
+ end.join
1515
+
1516
+ name
1517
+ end
1518
+
1519
+ class Node
1520
+ def name
1521
+ # dynamically compute (and store)
1522
+ # the name of this node on demand
1523
+ @name ||= generate_name
1524
+ end
1525
+ end
1526
+
1527
+ nodes:
1528
+ hello:
1529
+ index: true
1530
+ number: true
1531
+ silent: false
1532
+ output: |
1533
+ <span style="color:#070">&lt;h3&gt;</span><span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.type <span style="font-weight:bold;color:#888">%&gt;</span></span> #<span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.index <span style="font-weight:bold;color:#888">%&gt;</span></span>: <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.name.inspect <span style="font-weight:bold;color:#888">%&gt;</span></span><span style="color:#070">&lt;/h3&gt;</span>
1534
+
1535
+ My name is <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.name.inspect <span style="font-weight:bold;color:#888">%&gt;</span></span> and these are my properties:
1536
+
1537
+ <span style="color:#070">&lt;dl</span> <span style="color:#007">style</span>=<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#d70;font-weight:bold">$style</span> <span style="font-weight:bold;color:#888">%&gt;</span></span><span style="color:#710">&quot;</span></span><span style="color:#070">&gt;</span>
1538
+ <span style="color:#070">&lt;dt&gt;</span>args<span style="color:#070">&lt;/dt&gt;</span>
1539
+ <span style="color:#070">&lt;dd&gt;</span><span style="color:#070">&lt;code&gt;</span><span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.args.inspect <span style="font-weight:bold;color:#888">%&gt;</span></span><span style="color:#070">&lt;/code&gt;</span><span style="color:#070">&lt;/dd&gt;</span>
1540
+
1541
+ <span style="color:#070">&lt;dt&gt;</span>index<span style="color:#070">&lt;/dt&gt;</span>
1542
+ <span style="color:#070">&lt;dd&gt;</span><span style="color:#070">&lt;code&gt;</span><span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.index.inspect <span style="font-weight:bold;color:#888">%&gt;</span></span><span style="color:#070">&lt;/code&gt;</span><span style="color:#070">&lt;/dd&gt;</span>
1543
+
1544
+ <span style="color:#070">&lt;dt&gt;</span>number<span style="color:#070">&lt;/dt&gt;</span>
1545
+ <span style="color:#070">&lt;dd&gt;</span><span style="color:#070">&lt;code&gt;</span><span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.number.inspect <span style="font-weight:bold;color:#888">%&gt;</span></span><span style="color:#070">&lt;/code&gt;</span><span style="color:#070">&lt;/dd&gt;</span>
1546
+
1547
+ <span style="color:#070">&lt;dt&gt;</span>trace<span style="color:#070">&lt;/dt&gt;</span>
1548
+ <span style="color:#070">&lt;dd&gt;</span><span style="color:#070">&lt;pre&gt;</span><span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.trace.join(<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#b0b">\n</span><span style="color:#710">&quot;</span></span>) <span style="font-weight:bold;color:#888">%&gt;</span></span><span style="color:#070">&lt;/pre&gt;</span><span style="color:#070">&lt;/dd&gt;</span>
1549
+
1550
+ <span style="color:#070">&lt;dt&gt;</span>content<span style="color:#070">&lt;/dt&gt;</span>
1551
+ <span style="color:#070">&lt;dd&gt;</span><span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@node</span>.content <span style="font-weight:bold;color:#888">%&gt;</span></span><span style="color:#070">&lt;/dd&gt;</span>
1552
+ <span style="color:#070">&lt;/dl&gt;</span>
1553
+
1554
+ output: |
1555
+ Welcome to the &quot;<span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@spec</span>[<span style="color:#A60">:name</span>] <span style="font-weight:bold;color:#888">%&gt;</span></span>&quot; format.
1556
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> <span style="color:#33B">@content</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1557
+ That's all folks!
1558
+ </pre></p></div>
1559
+ </div> <div class="example">
1560
+ <p class="title"><a class="list" title="Return to table of contents" href="#rev:HelloWorld.input">Example 2</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#HelloWorld.input">Input document for HelloWorld format</a></p>
1561
+ <div class="content"><p><pre class="code" lang="rhtml"><span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#d70;font-weight:bold">$style</span> = <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">border-left: thick dotted LightGrey; padding-left: 1em;</span><span style="color:#710">&quot;</span></span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1562
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Pretentious</span><span style="color:#710">&quot;</span></span>, <span style="color:#00D;font-weight:bold">1</span>, <span style="color:#00D;font-weight:bold">2</span>, <span style="color:#00D;font-weight:bold">3</span> <span style="color:#080;font-weight:bold">do</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1563
+ <span style="color:#070">&lt;big&gt;</span>I'm<span style="color:#070">&lt;/big&gt;</span> the very first node, oh _yes_ I am! *sneer*
1564
+
1565
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Bashful</span><span style="color:#710">&quot;</span></span>, <span style="color:#00D;font-weight:bold">4</span>, <span style="color:#00D;font-weight:bold">5</span>, <span style="color:#00D;font-weight:bold">6</span> <span style="color:#080;font-weight:bold">do</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1566
+ Hi, I... *hide*
1567
+
1568
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Hopeful</span><span style="color:#710">&quot;</span></span>, rand <span style="color:#080;font-weight:bold">do</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1569
+ *sigh*
1570
+
1571
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Confused</span><span style="color:#710">&quot;</span></span>, (rand * rand) <span style="color:#080;font-weight:bold">do</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1572
+ Huh?
1573
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#080;font-weight:bold">end</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1574
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#080;font-weight:bold">end</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1575
+
1576
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Raving</span><span style="color:#710">&quot;</span></span>, <span style="color:#038;font-weight:bold">__FILE__</span> <span style="color:#080;font-weight:bold">do</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1577
+ Oh it's *on* now! You're going *down*!
1578
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#080;font-weight:bold">end</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1579
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#080;font-weight:bold">end</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1580
+
1581
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Sleepy</span><span style="color:#710">&quot;</span></span>, <span style="color:#036;font-weight:bold">Time</span>.now <span style="color:#080;font-weight:bold">do</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1582
+ *yawn* Just five more minutes...
1583
+
1584
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Peaceful</span><span style="color:#710">&quot;</span></span>, <span style="color:#036;font-weight:bold">Dir</span>.pwd <span style="color:#080;font-weight:bold">do</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1585
+ So _be_ happy my friend, *happy*!
1586
+
1587
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Lonely (as you can see, I have no block)</span><span style="color:#710">&quot;</span></span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1588
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#080;font-weight:bold">end</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1589
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#080;font-weight:bold">end</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1590
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#080;font-weight:bold">end</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1591
+
1592
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Snappy</span><span style="color:#710">&quot;</span></span> <span style="color:#080;font-weight:bold">do</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1593
+ Zip! Zap! Wake up, you sap!
1594
+ _Whoo I'm wild!_ ;-)
1595
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%</span> <span style="color:#080;font-weight:bold">end</span> <span style="font-weight:bold;color:#888">%&gt;</span></span>
1596
+
1597
+ <span style="background:#eee"><span style="font-weight:bold;color:#888">&lt;%=</span> hello <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Independent (no block, no parents, I am _free_!)</span><span style="color:#710">&quot;</span></span> <span style="font-weight:bold;color:#888">%&gt;</span></span></pre></p></div>
1598
+ </div> <div class="example">
1599
+ <p class="title"><a class="list" title="Return to table of contents" href="#rev:HelloWorld.output">Example 3</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#HelloWorld.output">Output of HelloWorld format</a></p>
1600
+ <div class="content"><p>Welcome to the &#8220;HelloWorld&#8221; format. <h3>hello #1: "yezulu"</h3></p>
1601
+
1602
+ <p>My name is &#8220;yezulu&#8221; and these are my properties:</p>
1603
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1604
+ <dt>args</dt>
1605
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Pretentious</span><span style="color:#710">&quot;</span></span>, <span style="color:#00D;font-weight:bold">1</span>, <span style="color:#00D;font-weight:bold">2</span>, <span style="color:#00D;font-weight:bold">3</span>]</code></dd>
1606
+
1607
+ <dt>index</dt>
1608
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">1</span><span style="color:#710">&quot;</span></span></code></dd>
1609
+
1610
+ <dt>number</dt>
1611
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">1</span></code></dd>
1612
+
1613
+ <dt>trace</dt>
1614
+ <dd><pre>INPUT:1
1615
+ bin/erbook:278
1616
+ bin/erbook:278:in `instance_eval'
1617
+ bin/erbook:278</pre></dd>
1618
+
1619
+ <dt>content</dt>
1620
+ <dd><big>I'm</big> the very first node, oh _yes_ I am! *sneer*
1621
+
1622
+ <h3>hello #1.1: "zutufob"</h3>
1623
+
1624
+ My name is "zutufob" and these are my properties:
1625
+
1626
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1627
+ <dt>args</dt>
1628
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Bashful</span><span style="color:#710">&quot;</span></span>, <span style="color:#00D;font-weight:bold">4</span>, <span style="color:#00D;font-weight:bold">5</span>, <span style="color:#00D;font-weight:bold">6</span>]</code></dd>
1629
+
1630
+ <dt>index</dt>
1631
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">1.1</span><span style="color:#710">&quot;</span></span></code></dd>
1632
+
1633
+ <dt>number</dt>
1634
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">2</span></code></dd>
1635
+
1636
+ <dt>trace</dt>
1637
+ <dd><pre>INPUT:3
1638
+ bin/erbook:80:in `content_from_block'
1639
+ bin/erbook:259:in `hello'
1640
+ INPUT:1
1641
+ bin/erbook:278
1642
+ bin/erbook:278:in `instance_eval'
1643
+ bin/erbook:278</pre></dd>
1644
+
1645
+ <dt>content</dt>
1646
+ <dd>Hi, I... *hide*
1647
+
1648
+ <h3>hello #1.1.1: "nedo"</h3>
1649
+
1650
+ My name is "nedo" and these are my properties:
1651
+
1652
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1653
+ <dt>args</dt>
1654
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Hopeful</span><span style="color:#710">&quot;</span></span>, <span style="color:#60E;font-weight:bold">0.626416670548946</span>]</code></dd>
1655
+
1656
+ <dt>index</dt>
1657
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">1.1.1</span><span style="color:#710">&quot;</span></span></code></dd>
1658
+
1659
+ <dt>number</dt>
1660
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">3</span></code></dd>
1661
+
1662
+ <dt>trace</dt>
1663
+ <dd><pre>INPUT:5
1664
+ bin/erbook:80:in `content_from_block'
1665
+ bin/erbook:259:in `hello'
1666
+ INPUT:3
1667
+ bin/erbook:80:in `content_from_block'
1668
+ bin/erbook:259:in `hello'
1669
+ INPUT:1
1670
+ bin/erbook:278
1671
+ bin/erbook:278:in `instance_eval'
1672
+ bin/erbook:278</pre></dd>
1673
+
1674
+ <dt>content</dt>
1675
+ <dd>*sigh*
1676
+
1677
+ <h3>hello #1.1.1.1: "lovesi"</h3>
1678
+
1679
+ My name is "lovesi" and these are my properties:
1680
+
1681
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1682
+ <dt>args</dt>
1683
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Confused</span><span style="color:#710">&quot;</span></span>, <span style="color:#60E;font-weight:bold">0.0687952044306042</span>]</code></dd>
1684
+
1685
+ <dt>index</dt>
1686
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">1.1.1.1</span><span style="color:#710">&quot;</span></span></code></dd>
1687
+
1688
+ <dt>number</dt>
1689
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">4</span></code></dd>
1690
+
1691
+ <dt>trace</dt>
1692
+ <dd><pre>INPUT:7
1693
+ bin/erbook:80:in `content_from_block'
1694
+ bin/erbook:259:in `hello'
1695
+ INPUT:5
1696
+ bin/erbook:80:in `content_from_block'
1697
+ bin/erbook:259:in `hello'
1698
+ INPUT:3
1699
+ bin/erbook:80:in `content_from_block'
1700
+ bin/erbook:259:in `hello'
1701
+ INPUT:1
1702
+ bin/erbook:278
1703
+ bin/erbook:278:in `instance_eval'
1704
+ bin/erbook:278</pre></dd>
1705
+
1706
+ <dt>content</dt>
1707
+ <dd>Huh?
1708
+ </dd>
1709
+ </dl></dd>
1710
+ </dl>
1711
+ <h3>hello #1.1.2: "kugo"</h3>
1712
+
1713
+ My name is "kugo" and these are my properties:
1714
+
1715
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1716
+ <dt>args</dt>
1717
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Raving</span><span style="color:#710">&quot;</span></span>, <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">INPUT</span><span style="color:#710">&quot;</span></span>]</code></dd>
1718
+
1719
+ <dt>index</dt>
1720
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">1.1.2</span><span style="color:#710">&quot;</span></span></code></dd>
1721
+
1722
+ <dt>number</dt>
1723
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">5</span></code></dd>
1724
+
1725
+ <dt>trace</dt>
1726
+ <dd><pre>INPUT:9
1727
+ bin/erbook:80:in `content_from_block'
1728
+ bin/erbook:259:in `hello'
1729
+ INPUT:3
1730
+ bin/erbook:80:in `content_from_block'
1731
+ bin/erbook:259:in `hello'
1732
+ INPUT:1
1733
+ bin/erbook:278
1734
+ bin/erbook:278:in `instance_eval'
1735
+ bin/erbook:278</pre></dd>
1736
+
1737
+ <dt>content</dt>
1738
+ <dd>Oh it's *on* now! You're going *down*!
1739
+ </dd>
1740
+ </dl></dd>
1741
+ </dl>
1742
+ <h3>hello #1.2: "tarapa"</h3>
1743
+
1744
+ My name is "tarapa" and these are my properties:
1745
+
1746
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1747
+ <dt>args</dt>
1748
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Sleepy</span><span style="color:#710">&quot;</span></span>, <span style="color:#036;font-weight:bold">Sat</span> <span style="color:#036;font-weight:bold">Nov</span> <span style="color:#00D;font-weight:bold">15</span> <span style="color:#00D;font-weight:bold">18</span>:<span style="color:#00D;font-weight:bold">25</span>:<span style="color:#00D;font-weight:bold">08</span> -<span style="color:#00D;font-weight:bold">0800</span> <span style="color:#00D;font-weight:bold">2008</span>]</code></dd>
1749
+
1750
+ <dt>index</dt>
1751
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">1.2</span><span style="color:#710">&quot;</span></span></code></dd>
1752
+
1753
+ <dt>number</dt>
1754
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">6</span></code></dd>
1755
+
1756
+ <dt>trace</dt>
1757
+ <dd><pre>INPUT:11
1758
+ bin/erbook:80:in `content_from_block'
1759
+ bin/erbook:259:in `hello'
1760
+ INPUT:1
1761
+ bin/erbook:278
1762
+ bin/erbook:278:in `instance_eval'
1763
+ bin/erbook:278</pre></dd>
1764
+
1765
+ <dt>content</dt>
1766
+ <dd>*yawn* Just five more minutes...
1767
+
1768
+ <h3>hello #1.2.1: "jop"</h3>
1769
+
1770
+ My name is "jop" and these are my properties:
1771
+
1772
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1773
+ <dt>args</dt>
1774
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Peaceful</span><span style="color:#710">&quot;</span></span>, <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">/home/sun/src/erbook</span><span style="color:#710">&quot;</span></span>]</code></dd>
1775
+
1776
+ <dt>index</dt>
1777
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">1.2.1</span><span style="color:#710">&quot;</span></span></code></dd>
1778
+
1779
+ <dt>number</dt>
1780
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">7</span></code></dd>
1781
+
1782
+ <dt>trace</dt>
1783
+ <dd><pre>INPUT:13
1784
+ bin/erbook:80:in `content_from_block'
1785
+ bin/erbook:259:in `hello'
1786
+ INPUT:11
1787
+ bin/erbook:80:in `content_from_block'
1788
+ bin/erbook:259:in `hello'
1789
+ INPUT:1
1790
+ bin/erbook:278
1791
+ bin/erbook:278:in `instance_eval'
1792
+ bin/erbook:278</pre></dd>
1793
+
1794
+ <dt>content</dt>
1795
+ <dd>So _be_ happy my friend, *happy*!
1796
+
1797
+ <h3>hello #1.2.1.1: "domerej"</h3>
1798
+
1799
+ My name is "domerej" and these are my properties:
1800
+
1801
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1802
+ <dt>args</dt>
1803
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Lonely (as you can see, I have no block)</span><span style="color:#710">&quot;</span></span>]</code></dd>
1804
+
1805
+ <dt>index</dt>
1806
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">1.2.1.1</span><span style="color:#710">&quot;</span></span></code></dd>
1807
+
1808
+ <dt>number</dt>
1809
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">8</span></code></dd>
1810
+
1811
+ <dt>trace</dt>
1812
+ <dd><pre>INPUT:15
1813
+ bin/erbook:80:in `content_from_block'
1814
+ bin/erbook:259:in `hello'
1815
+ INPUT:13
1816
+ bin/erbook:80:in `content_from_block'
1817
+ bin/erbook:259:in `hello'
1818
+ INPUT:11
1819
+ bin/erbook:80:in `content_from_block'
1820
+ bin/erbook:259:in `hello'
1821
+ INPUT:1
1822
+ bin/erbook:278
1823
+ bin/erbook:278:in `instance_eval'
1824
+ bin/erbook:278</pre></dd>
1825
+
1826
+ <dt>content</dt>
1827
+ <dd />
1828
+ </dl>
1829
+ </dd>
1830
+ </dl></dd>
1831
+ </dl></dd>
1832
+ </dl><h3>hello #2: "pomit"</h3>
1833
+ <p>My name is &#8220;pomit&#8221; and these are my properties:</p>
1834
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1835
+ <dt>args</dt>
1836
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Snappy</span><span style="color:#710">&quot;</span></span>]</code></dd>
1837
+
1838
+ <dt>index</dt>
1839
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">2</span><span style="color:#710">&quot;</span></span></code></dd>
1840
+
1841
+ <dt>number</dt>
1842
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">9</span></code></dd>
1843
+
1844
+ <dt>trace</dt>
1845
+ <dd><pre>INPUT:17
1846
+ bin/erbook:278
1847
+ bin/erbook:278:in `instance_eval'
1848
+ bin/erbook:278</pre></dd>
1849
+
1850
+ <dt>content</dt>
1851
+ <dd>Zip! Zap! Wake up, you sap!
1852
+ _Whoo I'm wild!_ ;-)
1853
+ </dd>
1854
+ </dl><h3>hello #3: "faz"</h3>
1855
+ <p>My name is &#8220;faz&#8221; and these are my properties:</p>
1856
+ <dl style='border-left: thick dotted LightGrey; padding-left: 1em;'>
1857
+ <dt>args</dt>
1858
+ <dd><code class="code">[<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Independent (no block, no parents, I am _free_!)</span><span style="color:#710">&quot;</span></span>]</code></dd>
1859
+
1860
+ <dt>index</dt>
1861
+ <dd><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">3</span><span style="color:#710">&quot;</span></span></code></dd>
1862
+
1863
+ <dt>number</dt>
1864
+ <dd><code class="code"><span style="color:#00D;font-weight:bold">10</span></code></dd>
1865
+
1866
+ <dt>trace</dt>
1867
+ <dd><pre>INPUT:20
1868
+ bin/erbook:278
1869
+ bin/erbook:278:in `instance_eval'
1870
+ bin/erbook:278</pre></dd>
1871
+
1872
+ <dt>content</dt>
1873
+ <dd />
1874
+ </dl>
1875
+ <p>That&#8217;s all folks!</p></div>
1876
+ </div></p></div>
1877
+ </div></p></div>
1878
+ </div></p></div>
1879
+ </div>
1880
+ <div class="chapter">
1881
+ <h1 class="title" id="Usage">
1882
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:Usage">4</a>
1883
+ <br/>
1884
+ <big><a class="here" title="Permanent link to this section" href="#Usage">Usage</a></big>
1885
+ </h1>
1886
+ <div class="content"><p><div class="section">
1887
+ <h2 class="title" id="Command-line-invocation">
1888
+ <a class="list" title="Return to table of contents" href="#rev:Command-line-invocation">4.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Command-line-invocation">Command-line invocation</a>
1889
+ </h2>
1890
+ <div class="content"><p>erbook is an extensible document processor based on eRuby.</p>
1891
+
1892
+ <ul>
1893
+ <li>
1894
+ <p>STDIN will be read if no input files are specified.</p>
1895
+ </li>
1896
+
1897
+ <li>
1898
+ <p>If an error occurs, the input document will be printed to STDOUT so you can investigate line numbers in the error&#8217;s stack trace. Otherwise, the final output document will be printed to STDOUT.</p>
1899
+ </li>
1900
+ </ul>
1901
+ <b>Usage: </b>
1902
+ <p><pre>erbook [Option...] {Format|SpecFile} [InputFile...]</pre></p>
1903
+ <b>Option: </b>
1904
+ <dl>
1905
+ <dt><tt>-h</tt>, <tt>--help</tt></dt>
1906
+
1907
+ <dd>show usage information</dd>
1908
+
1909
+ <dt><tt>-v</tt>, <tt>--version</tt></dt>
1910
+
1911
+ <dd>show version information</dd>
1912
+
1913
+ <dt><tt>-u</tt>, <tt>--unindent</tt></dt>
1914
+
1915
+ <dd>unindent hierarchically</dd>
1916
+ </dl>
1917
+ <b>Format:</b>
1918
+ <dl>
1919
+ <dt>latex</dt>
1920
+
1921
+ <dd>high-quality typesetting</dd>
1922
+
1923
+ <dt>html</dt>
1924
+
1925
+ <dd>web page for the Internet</dd>
1926
+
1927
+ <dt>man</dt>
1928
+
1929
+ <dd>manual page for UNIX</dd>
1930
+
1931
+ <dt>text</dt>
1932
+
1933
+ <dd>plain text, nothing fancy</dd>
1934
+ </dl>
1935
+
1936
+ <p><div class="paragraph">
1937
+ <p class="title" id="Command-line-arguments"><a class="here" title="Permanent link to this section" href="#Command-line-arguments">Command-line arguments</a></p>
1938
+ <div class="content"><p>As the <tt>{Format|SpecFile}</tt> token in the usage syntax above denotes, erbook requires its first command-line argument to be either (1) the name of a predefined format or (2) the path to a <a class="xref" href="#SpecFile" title="Section 3.2. Format specification file">format specification file</a>.</p>
1939
+
1940
+ <p>Predefined formats are simply short-hand names of format specification files located in the <tt>fmt/</tt> subdirectory of the erbook installation directory (see <a class="xref" href="#Manifest">Section 2.3. Manifest</a>).</p></div>
1941
+ </div></p></div>
1942
+ </div> <div class="section">
1943
+ <h2 class="title" id="include">
1944
+ <a class="list" title="Return to table of contents" href="#rev:include">4.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#include">Including external documents</a>
1945
+ </h2>
1946
+ <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>
1947
+
1948
+ <pre>&lt;%# include YOUR_PATH_HERE #%&gt;</pre>
1949
+
1950
+ <p>In the above example, <strong>YOUR_PATH_HERE</strong> is the path of the file whose content you wish to insert into the input document.</p>
1951
+
1952
+ <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>
1953
+ </div> <div class="section">
1954
+ <h2 class="title" id="Unindenting-nodes-hierarchically">
1955
+ <a class="list" title="Return to table of contents" href="#rev:Unindenting-nodes-hierarchically">4.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Unindenting-nodes-hierarchically">Unindenting nodes hierarchically</a>
1956
+ </h2>
1957
+ <div class="content"><p>When writing erbook documents, I prefer to indent the content of nodes according to their depth (as can be seen in <a class="xref" href="#See-the-source-of-this-manual" title="Note 1. See the source of this manual">the source of this manual</a>) because my <a href='http://jedit.org'>text editor of choice</a> automatically folds blocks of text based on indentation.</p>
1958
+
1959
+ <p>If you also prefer to write documents in this way, be sure to pass the <tt>--unindent</tt> option to <strong>erbook</strong> so that the indentation will not affect the resulting output.</p></div>
1960
+ </div></p></div>
1961
+ </div>
1962
+ <div class="part">
1963
+ <h1 class="title" id="Formats">
1964
+ Part&nbsp;<a class="list" title="Return to table of contents" href="#rev:Formats">5</a>
1965
+ <br/>
1966
+ <big><a class="here" title="Permanent link to this section" href="#Formats">Formats</a></big>
1967
+ </h1>
1968
+ <div class="content"><p>This part describes the default formats provided along with erbook. The <a class="xref" href="#SpecFile" title="Section 3.2. Format specification file">format specification files</a> for these formats can be found in the <tt>fmt/</tt> directory of the erbook installation directory (see <a class="xref" href="#Manifest">Section 2.3. Manifest</a>).</p>
1969
+
1970
+ <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 <a class="xref" href="#License" title="Section 1.2.2. License">contact the author</a>.</p>
1971
+
1972
+ <p><div class="chapter">
1973
+ <h1 class="title" id="html">
1974
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:html">5.1</a>
1975
+ <br/>
1976
+ <big><a class="here" title="Permanent link to this section" href="#html">HTML</a></big>
1977
+ </h1>
1978
+ <div class="content"><p>This format generates a <em>monolithic</em> HTML document that allows users to easily search for a particular topic using nothing more than their web browser&#8217;s built-in text search mechanism. This facilitates offline reading, where an Internet search engine is not available.</p>
1979
+
1980
+ <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>
1981
+
1982
+ <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 &#8220;print preview&#8221; function of a graphical web browser to see how the HTML document will appear when printed.</p>
1983
+
1984
+ <p><div class="section">
1985
+ <h3 class="title" id="Text-to-HTML-conversion">
1986
+ <a class="list" title="Return to table of contents" href="#rev:Text-to-HTML-conversion">5.1.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Text-to-HTML-conversion">Text to HTML conversion</a>
1987
+ </h3>
1988
+ <div class="content"><p>Inside the <tt>fmt/</tt> subdirectory of the erbook installation directory (see <a class="xref" href="#Manifest">Section 2.3. Manifest</a>), you will see a <tt>html.rb</tt> file. This file defines methods that transform text in an input document into HTML:</p>
1989
+
1990
+ <ul>
1991
+ <li>
1992
+ <p><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_html</span></code> - Transforms this string into HTML while ensuring that the result contains one or more block-level elements at the root.</p>
1993
+ </li>
1994
+
1995
+ <li>
1996
+ <p><code class="code"><span style="color:#036;font-weight:bold">String</span>.to_inline_html</code> - Transforms this string into an <em>inline</em> HTML string (one that does not contain any block-level HTML elements at the root).</p>
1997
+ </li>
1998
+ </ul>
1999
+
2000
+ <p>The default implementation of the <code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_html</span></code> method employs the <a href='http://daringfireball.net/projects/markdown/'>Markdown</a> markup system. If you do not like Markdown 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><span style="color:#666">#to_html</span></code> and <code class="code"><span style="color:#036;font-weight:bold">String</span>.to_inline_html</code> methods accordingly.</p>
2001
+
2002
+ <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>
2003
+
2004
+ <p><pre class="code">
2005
+ <span style="color:#080;font-weight:bold">class</span> <span style="color:#B06;font-weight:bold">String</span>
2006
+ <span style="color:#666"># Transforms this string into HTML while ensuring that the</span>
2007
+ <span style="color:#666"># result contains one or more block-level elements at the root.</span>
2008
+ <span style="color:#080;font-weight:bold">def</span> <span style="color:#06B;font-weight:bold">to_html</span>
2009
+ <span style="background-color:#fff0f0"><span style="color:#710">'</span><span style="color:#D20">&lt;p style=&quot;border: thin solid red&quot;&gt;</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">&lt;/p&gt;</span><span style="color:#710">'</span></span>
2010
+ <span style="color:#080;font-weight:bold">end</span>
2011
+
2012
+ <span style="color:#666"># Transforms this string into an *inline* HTML string (one that</span>
2013
+ <span style="color:#666"># does not contain any block-level HTML elements at the root).</span>
2014
+ <span style="color:#080;font-weight:bold">def</span> <span style="color:#06B;font-weight:bold">to_inline_html</span>
2015
+ <span style="color:#038;font-weight:bold">self</span>
2016
+ <span style="color:#080;font-weight:bold">end</span>
2017
+ <span style="color:#080;font-weight:bold">end</span>
2018
+ </pre></p>
2019
+
2020
+ <p>In addition to supporting Markdown syntax, the default implementation has some additional features which are described in the following subsections.</p>
2021
+
2022
+ <p><div class="section">
2023
+ <h4 class="title" id="Syntax-coloring-for-source-code">
2024
+ <a class="list" title="Return to table of contents" href="#rev:Syntax-coloring-for-source-code">5.1.1.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Syntax-coloring-for-source-code">Syntax coloring for source code</a>
2025
+ </h4>
2026
+ <div class="content"><p>Syntax coloring is <em>automatically added</em> to source code found inside the <strong>&#60;code&#62;</strong> and <strong>&#60;/code&#62;</strong> HTML tags. The syntax coloring library, <a href='http://coderay.rubychan.de'>CodeRay</a>, currently supports the following programming languages:</p>
2027
+
2028
+ <ul>
2029
+ <li>Ruby</li>
2030
+
2031
+ <li>C</li>
2032
+
2033
+ <li>Delphi</li>
2034
+
2035
+ <li>HTML</li>
2036
+
2037
+ <li>RHTML (Rails)</li>
2038
+
2039
+ <li>Nitro-XHTML</li>
2040
+ </ul>
2041
+
2042
+ <p><div class="section">
2043
+ <h5 class="title" id="Specifying-the-programming-language">
2044
+ <a class="list" title="Return to table of contents" href="#rev:Specifying-the-programming-language">5.1.1.1.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Specifying-the-programming-language">Specifying the programming language</a>
2045
+ </h5>
2046
+ <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>
2047
+
2048
+ <p>For example, here is some source code <em>without</em> the <code class="code">lang</code> attribute:</p>
2049
+
2050
+ <p><pre class="code">
2051
+ <span style="color:#666"># Ruby ###########################</span>
2052
+ <span style="color:#080;font-weight:bold">def</span> <span style="color:#06B;font-weight:bold">hello</span>
2053
+ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Hello world!</span><span style="color:#710">&quot;</span></span>
2054
+ <span style="color:#080;font-weight:bold">end</span>
2055
+
2056
+
2057
+ <span style="background-color:#fff0ff"><span style="color:#404">/</span><span style="color:#808">* C ****************************</span><span style="color:#404">/</span></span>
2058
+ <span style="color:#666">#include &lt;stdio.h&gt;</span>
2059
+ int main(int argc, char **argv) {
2060
+ printf(<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Hello world!</span><span style="color:#b0b">\n</span><span style="color:#710">&quot;</span></span>);
2061
+ <span style="color:#080;font-weight:bold">return</span> <span style="color:#00D;font-weight:bold">0</span>;
2062
+ }
2063
+
2064
+
2065
+ &lt;!-- <span style="color:#036;font-weight:bold">HTML</span> -----------------------&gt;
2066
+ &lt;html&gt;
2067
+ &lt;body&gt;
2068
+ <span style="color:#036;font-weight:bold">Hello</span> world!
2069
+ &lt;body&gt;
2070
+ &lt;<span style="background-color:#fff0ff"><span style="color:#404">/</span><span style="color:#808">html&gt;
2071
+ </span></span></pre></p>
2072
+
2073
+ <p>And here is the same source code with a <code class="code">lang=<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">c</span><span style="color:#710">&quot;</span></span></code> attribute:</p>
2074
+
2075
+ <p><pre class="code" lang="c">
2076
+ <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">#
2077
+ def</span> hello
2078
+ puts <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Hello world!</span><span style="color:#710">&quot;</span></span>
2079
+ end
2080
+
2081
+
2082
+ <span style="color:#666">/* C ****************************/</span>
2083
+ <span style="color:#579">#include</span> <span style="color:#B44;font-weight:bold">&lt;stdio.h&gt;</span>
2084
+ <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) {
2085
+ printf(<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Hello world!</span><span style="color:#b0b">\n</span><span style="color:#710">&quot;</span></span>);
2086
+ <span style="color:#080;font-weight:bold">return</span> <span style="color:#00D;font-weight:bold">0</span>;
2087
+ }
2088
+
2089
+
2090
+ &lt;!-- HTML -----------------------&gt;
2091
+ &lt;html&gt;
2092
+ &lt;body&gt;
2093
+ Hello world!
2094
+ &lt;body&gt;
2095
+ &lt;/html&gt;
2096
+ </pre></p>
2097
+
2098
+ <p>And here is the same source code with a <code class="code">lang=<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">html</span><span style="color:#710">&quot;</span></span></code> attribute:</p>
2099
+
2100
+ <p><pre class="code" lang="html">
2101
+ # Ruby ###########################
2102
+ def hello
2103
+ puts &quot;Hello world!&quot;
2104
+ end
2105
+
2106
+
2107
+ /* C ****************************/
2108
+ #include <span style="color:#070">&lt;stdio.h&gt;</span>
2109
+ int main(int argc, char **argv) {
2110
+ printf(&quot;Hello world!\n&quot;);
2111
+ return 0;
2112
+ }
2113
+
2114
+
2115
+ <span style="color:#666">&lt;!-- HTML -----------------------&gt;</span>
2116
+ <span style="color:#070">&lt;html&gt;</span>
2117
+ <span style="color:#070">&lt;body&gt;</span>
2118
+ Hello world!
2119
+ <span style="color:#070">&lt;body&gt;</span>
2120
+ <span style="color:#070">&lt;/html&gt;</span>
2121
+ </pre></p></div>
2122
+ </div></p></div>
2123
+ </div> <div class="section">
2124
+ <h4 class="title" id="Smart-sizing-of-source-code">
2125
+ <a class="list" title="Return to table of contents" href="#rev:Smart-sizing-of-source-code">5.1.1.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Smart-sizing-of-source-code">Smart sizing of source code</a>
2126
+ </h4>
2127
+ <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>
2128
+
2129
+ <p>For example, here is a single line <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> of code. And here is a paragraph <pre class="code">life =
2130
+ <span style="color:#038;font-weight:bold">true</span> <span style="color:#080;font-weight:bold">or</span>
2131
+ <span style="color:#038;font-weight:bold">false</span></pre> of code.</p></div>
2132
+ </div> <div class="section">
2133
+ <h4 class="title" id="Protecting-verbatim-text">
2134
+ <a class="list" title="Return to table of contents" href="#rev:Protecting-verbatim-text">5.1.1.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Protecting-verbatim-text">Protecting verbatim text</a>
2135
+ </h4>
2136
+ <div class="content"><p>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>&#60;noformat&#62;</strong> and <strong>&#60;/noformat&#62;</strong> tags.</p></div>
2137
+ </div></p></div>
2138
+ </div> <div class="section">
2139
+ <h3 class="title" id="Parameters">
2140
+ <a class="list" title="Return to table of contents" href="#rev:Parameters">5.1.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Parameters">Parameters</a>
2141
+ </h3>
2142
+ <div class="content"><p>The HTML format accepts the following document parameters.</p>
2143
+ <table border="1"><thead><tr><th>Parameter</th><th>Type</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'><code class="code"><span style="color:#d70;font-weight:bold">$title</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'><code class="code"><span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">$title</span><span style="color:#710">&quot;</span></span></code></td><td style='text-align: left;'>Title of the document.</td>
2144
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#d70;font-weight:bold">$authors</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Hash</span></code></td><td style='text-align: left;'><code class="code">{<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">$authors</span><span style="color:#710">&quot;</span></span> =&gt; <span style="color:#038;font-weight:bold">nil</span>}</code></td><td style='text-align: left;'>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:#666">#to_html_entities</span></code> method like this: <code class="code">{ <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">Y. Matsumoto</span><span style="color:#710">&quot;</span></span> =&gt; <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">mailto:matz@ruby.invalid</span><span style="color:#710">&quot;</span></span>.to_html_entities }</code></td>
2145
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#d70;font-weight:bold">$date</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Time</span>.now.strftime(<span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">%d %B %Y</span><span style="color:#710">&quot;</span></span>)</code></td><td style='text-align: left;'>Date when the document was written.</td>
2146
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#d70;font-weight:bold">$logo</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">String</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#038;font-weight:bold">nil</span></code></td><td style='text-align: left;'>Arbitrary content that goes above the document title in the default header.</td>
2147
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#d70;font-weight:bold">$feeds</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#036;font-weight:bold">Hash</span></code></td><td style='text-align: left;'><code class="code"><span style="color:#038;font-weight:bold">nil</span></code></td><td style='text-align: left;'>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">&quot;</span><span style="color:#D20">my_rss_feed.xml</span><span style="color:#710">&quot;</span></span> =&gt; <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">rss</span><span style="color:#710">&quot;</span></span>, <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">my_atom_feed.xml</span><span style="color:#710">&quot;</span></span> =&gt; <span style="background-color:#fff0f0"><span style="color:#710">&quot;</span><span style="color:#D20">atom</span><span style="color:#710">&quot;</span></span> }</code></td>
2148
+ </tr><tr><td style='text-align: left;'><code class="code"><span style="color:#d70;font-weight:bold">$use_icons</span></code></td><td style='text-align: left;'>Boolean</td><td style='text-align: left;'><code class="code"><span style="color:#038;font-weight:bold">true</span></code></td><td style='text-align: left;'>Use <a href='http://tango.freedesktop.org/Tango_Icon_Library'>Tango icons</a> in admonitions (see <a class="xref" href="#Admonition-nodes">Section 5.1.4.3. Admonition nodes</a>)?</td>
2149
+ </tr></tbody></table></div>
2150
+ </div> <div class="section">
2151
+ <h3 class="title" id="Methods">
2152
+ <a class="list" title="Return to table of contents" href="#rev:Methods">5.1.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Methods">Methods</a>
2153
+ </h3>
2154
+ <div class="content"><p>The HTML format provides the following methods. In the method declarations shown below,</p>
2155
+
2156
+ <ul>
2157
+ <li>a pound sign (#) indicates that the method is an <em>instance method</em>, meaning that it can only be invoked on instances of a class, not on the classes themselves.</li>
2158
+
2159
+ <li>a double colon sign (::) indicates that the method is a <em>class method</em>, meaning that it can only be invoked on a class.</li>
2160
+ </ul>
2161
+
2162
+ <p><div class="section">
2163
+ <h4 class="title" id="a-Node-title">
2164
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-title">5.1.3.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-title"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#title()</span></code></a>
2165
+ </h4>
2166
+ <div class="content"><p>
2167
+ Returns the user-defined title for this node&#8216;s content.
2168
+ </p></div>
2169
+ </div><div class="section">
2170
+ <h4 class="title" id="a-Node-id">
2171
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-id">5.1.3.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-id"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#id()</span></code></a>
2172
+ </h4>
2173
+ <div class="content"><p>
2174
+ Returns the user-defined indentifer for this node.
2175
+ </p></div>
2176
+ </div><div class="section">
2177
+ <h4 class="title" id="a-Node-type_label">
2178
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-type_label">5.1.3.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-type_label"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#type_label()</span></code></a>
2179
+ </h4>
2180
+ <div class="content"></div>
2181
+ </div><div class="section">
2182
+ <h4 class="title" id="a-Node-type_atts">
2183
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-type_atts">5.1.3.4</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-type_atts"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#type_atts()</span></code></a>
2184
+ </h4>
2185
+ <div class="content"></div>
2186
+ </div><div class="section">
2187
+ <h4 class="title" id="a-Node-title_atts">
2188
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-title_atts">5.1.3.5</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-title_atts"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#title_atts()</span></code></a>
2189
+ </h4>
2190
+ <div class="content"></div>
2191
+ </div><div class="section">
2192
+ <h4 class="title" id="a-Node-title_html">
2193
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-title_html">5.1.3.6</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-title_html"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#title_html()</span></code></a>
2194
+ </h4>
2195
+ <div class="content"></div>
2196
+ </div><div class="section">
2197
+ <h4 class="title" id="a-Node-content_html">
2198
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-content_html">5.1.3.7</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-content_html"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#content_html()</span></code></a>
2199
+ </h4>
2200
+ <div class="content"></div>
2201
+ </div><div class="section">
2202
+ <h4 class="title" id="a-Node-title_link-aTitle-nil">
2203
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-title_link-aTitle-nil">5.1.3.8</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-title_link-aTitle-nil"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#title_link(aTitle = nil)</span></code></a>
2204
+ </h4>
2205
+ <div class="content"></div>
2206
+ </div><div class="section">
2207
+ <h4 class="title" id="a-Node-index_link">
2208
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-index_link">5.1.3.9</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-index_link"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#index_link()</span></code></a>
2209
+ </h4>
2210
+ <div class="content"></div>
2211
+ </div><div class="section">
2212
+ <h4 class="title" id="a-Node-number_link">
2213
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-number_link">5.1.3.10</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-number_link"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#number_link()</span></code></a>
2214
+ </h4>
2215
+ <div class="content"></div>
2216
+ </div><div class="section">
2217
+ <h4 class="title" id="a-Node-number_and_title_link">
2218
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-number_and_title_link">5.1.3.11</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-number_and_title_link"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#number_and_title_link()</span></code></a>
2219
+ </h4>
2220
+ <div class="content"></div>
2221
+ </div><div class="section">
2222
+ <h4 class="title" id="a-Node-index_and_title_link">
2223
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-index_and_title_link">5.1.3.12</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-index_and_title_link"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#index_and_title_link()</span></code></a>
2224
+ </h4>
2225
+ <div class="content"></div>
2226
+ </div><div class="section">
2227
+ <h4 class="title" id="a-Node-content_div">
2228
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-content_div">5.1.3.13</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-content_div"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#content_div()</span></code></a>
2229
+ </h4>
2230
+ <div class="content"></div>
2231
+ </div><div class="section">
2232
+ <h4 class="title" id="a-Node-here_frag">
2233
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-here_frag">5.1.3.14</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-here_frag"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#here_frag()</span></code></a>
2234
+ </h4>
2235
+ <div class="content"><p>
2236
+ Returns a unique URI fragment for this node.
2237
+ </p></div>
2238
+ </div><div class="section">
2239
+ <h4 class="title" id="a-Node-list_frag">
2240
+ <a class="list" title="Return to table of contents" href="#rev:a-Node-list_frag">5.1.3.15</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Node-list_frag"><code class="code"><span style="color:#036;font-weight:bold">Node</span><span style="color:#666">#list_frag()</span></code></a>
2241
+ </h4>
2242
+ <div class="content"><p>
2243
+ Returns the URI fragment for the location in the table of contents / list
2244
+ of figures that points this node.
2245
+ </p></div>
2246
+ </div><div class="section">
2247
+ <h4 class="title" id="a-Icon-css_class">
2248
+ <a class="list" title="Return to table of contents" href="#rev:a-Icon-css_class">5.1.3.16</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Icon-css_class"><code class="code"><span style="color:#036;font-weight:bold">Icon</span><span style="color:#666">#css_class()</span></code></a>
2249
+ </h4>
2250
+ <div class="content"><p>
2251
+ Returns the CSS class for this icon.
2252
+ </p></div>
2253
+ </div><div class="section">
2254
+ <h4 class="title" id="a-Icon-css_image">
2255
+ <a class="list" title="Return to table of contents" href="#rev:a-Icon-css_image">5.1.3.17</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Icon-css_image"><code class="code"><span style="color:#036;font-weight:bold">Icon</span><span style="color:#666">#css_image()</span></code></a>
2256
+ </h4>
2257
+ <div class="content"><p>
2258
+ Returns a CSS url() containing embedded image data.
2259
+ </p></div>
2260
+ </div><div class="section">
2261
+ <h4 class="title" id="a-Hash-to_html_atts">
2262
+ <a class="list" title="Return to table of contents" href="#rev:a-Hash-to_html_atts">5.1.3.18</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-Hash-to_html_atts"><code class="code"><span style="color:#036;font-weight:bold">Hash</span><span style="color:#666">#to_html_atts()</span></code></a>
2263
+ </h4>
2264
+ <div class="content"><p>
2265
+ Transforms this hash into a string of HTML attribute key=value pairs.
2266
+ </p></div>
2267
+ </div><div class="section">
2268
+ <h4 class="title" id="a-String-to_html_entities">
2269
+ <a class="list" title="Return to table of contents" href="#rev:a-String-to_html_entities">5.1.3.19</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-String-to_html_entities"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_html_entities()</span></code></a>
2270
+ </h4>
2271
+ <div class="content"><p>
2272
+ Transforms this UTF-8 string into HTML entities.
2273
+ </p></div>
2274
+ </div><div class="section">
2275
+ <h4 class="title" id="a-String-to_uri_fragment">
2276
+ <a class="list" title="Return to table of contents" href="#rev:a-String-to_uri_fragment">5.1.3.20</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-String-to_uri_fragment"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_uri_fragment()</span></code></a>
2277
+ </h4>
2278
+ <div class="content"><p>
2279
+ Transforms this string into a valid URI fragment. See <a href='http://www.nmt.edu/tcc/help/pubs/xhtml/id-type.html'>www.nmt.edu/tcc/help/pubs/xhtml/id-type.html</a>
2280
+ </p></div>
2281
+ </div><div class="section">
2282
+ <h4 class="title" id="a-String-to_inline_html">
2283
+ <a class="list" title="Return to table of contents" href="#rev:a-String-to_inline_html">5.1.3.21</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-String-to_inline_html"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_inline_html()</span></code></a>
2284
+ </h4>
2285
+ <div class="content"><p>
2286
+ Transforms this string into an <b>inline</b> HTML string (one that does not
2287
+ contain any block-level HTML elements at the root).
2288
+ </p></div>
2289
+ </div><div class="section">
2290
+ <h4 class="title" id="a-String-to_html-aInline-false">
2291
+ <a class="list" title="Return to table of contents" href="#rev:a-String-to_html-aInline-false">5.1.3.22</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-String-to_html-aInline-false"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#to_html(aInline = false)</span></code></a>
2292
+ </h4>
2293
+ <div class="content"><p>
2294
+ Transforms this string into HTML while ensuring that the result contains
2295
+ one or more block-level elements at the root.
2296
+ </p><p>
2297
+ If aInline is true, then the resulting HTML will be an <b>inline</b>
2298
+ string.
2299
+ </p></div>
2300
+ </div><div class="section">
2301
+ <h4 class="title" id="a-String-thru_maruku-aInline-false">
2302
+ <a class="list" title="Return to table of contents" href="#rev:a-String-thru_maruku-aInline-false">5.1.3.23</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-String-thru_maruku-aInline-false"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#thru_maruku(aInline = false)</span></code></a>
2303
+ </h4>
2304
+ <div class="content"><p>
2305
+ Returns the result of running this string through Maruku.
2306
+ </p><p>
2307
+ If aInline is true, then the resulting HTML will <b>not</b> be wrapped in a
2308
+ HTML paragraph element.
2309
+ </p></div>
2310
+ </div><div class="section">
2311
+ <h4 class="title" id="a-String-thru_coderay">
2312
+ <a class="list" title="Return to table of contents" href="#rev:a-String-thru_coderay">5.1.3.24</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-String-thru_coderay"><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#thru_coderay()</span></code></a>
2313
+ </h4>
2314
+ <div class="content"><p>
2315
+ Adds syntax coloring to &lt;code&gt; elements in the given text. If the
2316
+ &lt;code&gt; tag has an attribute lang=&quot;&#8230;&quot;, then that is
2317
+ considered the programming language for which appropriate syntax coloring
2318
+ should be applied. Otherwise, the programming language is assumed to be
2319
+ ruby.
2320
+ </p></div>
2321
+ </div><div class="section">
2322
+ <h4 class="title" id="a-String-protect-aInput-aTags-aVerbatim-aInput-...">
2323
+ <a class="list" title="Return to table of contents" href="#rev:a-String-protect-aInput-aTags-aVerbatim-aInput-...">5.1.3.25</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#a-String-protect-aInput-aTags-aVerbatim-aInput-..."><code class="code"><span style="color:#036;font-weight:bold">String</span><span style="color:#666">#protect(aInput, aTags, aVerbatim) {|aInput| ... }</span></code></a>
2324
+ </h4>
2325
+ <div class="content"><p>
2326
+ Protects the given tags in the given input, passes that protected input to
2327
+ the given block, restores the given tags in the result of the block and
2328
+ returns it.
2329
+ </p><p>
2330
+ If aVerbatim is true, the content of the elments having the given tags will
2331
+ not be temporarily altered so that process nested elements can be
2332
+ processed.
2333
+ </p></div>
2334
+ </div></p></div>
2335
+ </div> <div class="chapter">
2336
+ <h1 class="title" id="html.nodes">
2337
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:html.nodes">5.1.4</a>
2338
+ <br/>
2339
+ <big><a class="here" title="Permanent link to this section" href="#html.nodes">Nodes</a></big>
2340
+ </h1>
2341
+ <div class="content"><p>Unless otherwise noted, all nodes defined by the HTML format accept two arguments, in this order:</p>
2342
+
2343
+ <ol>
2344
+ <li>a required <em>title</em> for the node</li>
2345
+
2346
+ <li>an optional <em>unique identifier</em> for the node</li>
2347
+ </ol>
2348
+
2349
+ <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. xref</a> and <a class="xref" href="#html.nodes.cite">Section 5.1.4.5.2. cite</a>), which allow you to refer to another node in the document by its unique identifier.</p>
2350
+
2351
+ <p>Furthermore, <a class="xref" href="#SpecFile.nodes" title="Section 3.2.1. Node definition">node definitions</a> in the HTML format have two additional parameters:</p>
2352
+ <table border="1"><thead><tr><th>Parameter</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td style='text-align: left;'>toc</td><td style='text-align: left;'>Boolean</td><td style='text-align: left;'>Include this node in the <strong>Table of Contents</strong> (TOC)?</td>
2353
+ </tr><tr><td style='text-align: left;'>lof</td><td style='text-align: left;'>Boolean</td><td style='text-align: left;'>Include this node in the <strong>List of Figures</strong> (LOF)?</td>
2354
+ </tr></tbody></table>
2355
+ <p><div class="section">
2356
+ <h4 class="title" id="Structural-nodes">
2357
+ <a class="list" title="Return to table of contents" href="#rev:Structural-nodes">5.1.4.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Structural-nodes">Structural nodes</a>
2358
+ </h4>
2359
+ <div class="content"><p>The nodes described in this section form the overall structure of the output document.</p>
2360
+
2361
+ <p><div class="section">
2362
+ <h5 class="title" id="html.nodes.header">
2363
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.header">5.1.4.1.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.header">header</a>
2364
+ </h5>
2365
+ <div class="content"><p>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.</p></div>
2366
+ </div> <div class="section">
2367
+ <h5 class="title" id="html.nodes.footer">
2368
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.footer">5.1.4.1.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.footer">footer</a>
2369
+ </h5>
2370
+ <div class="content"><p>This node overrides (1) the date when this document was generated and (2) the hyperlink to the erbook website, shown at the bottom of the document. The hyperlink is there as a way of saying thanks for erbook, the <em>wonderful</em> little utility you have grown so fond of! ;-)</p></div>
2371
+ </div> <div class="section">
2372
+ <h5 class="title" id="html.nodes.abstract">
2373
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.abstract">5.1.4.1.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.abstract">abstract</a>
2374
+ </h5>
2375
+ <div class="content"><p>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! :-(</p></div>
2376
+ </div> <div class="section">
2377
+ <h5 class="title" id="html.nodes.xref">
2378
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.xref">5.1.4.1.4</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.xref">xref</a>
2379
+ </h5>
2380
+ <div class="content"><p>A cross-reference; a hyperlink that takes you to any node in the document.</p>
2381
+
2382
+ <p>The first argument of this node is either the unique identifier or the user-defined title of the node you wish to cross-reference. If no nodes in the document have the given identifier or user-defined title, then an error will be raised.</p>
2383
+
2384
+ <p>The second argument of this node overrides the default link text of the cross-reference.</p>
2385
+
2386
+ <p>For example, this node in the input document:</p>
2387
+
2388
+ <pre>&lt;%= xref &quot;SpecFile&quot; %&gt;</pre>
2389
+
2390
+ <p>appears in the output document like this: <a class="xref" href="#SpecFile">Section 3.2. Format specification file</a>.</p>
2391
+
2392
+ <p>As another example, this node in the input document:</p>
2393
+
2394
+ <pre>&lt;%= xref &quot;SpecFile&quot;, &quot;custom link text&quot; %&gt;</pre>
2395
+
2396
+ <p>appears in the output document like this: <a class="xref" href="#SpecFile" title="Section 3.2. Format specification file">custom link text</a>.</p></div>
2397
+ </div></p></div>
2398
+ </div> <div class="section">
2399
+ <h4 class="title" id="Organizational-nodes">
2400
+ <a class="list" title="Return to table of contents" href="#rev:Organizational-nodes">5.1.4.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Organizational-nodes">Organizational nodes</a>
2401
+ </h4>
2402
+ <div class="content"><p>The nodes described in this section are meant to help organize the document&#8217;s content logically. Based on how deeply these nodes are nested in the document, their heading will be larger (shallow depth) or smaller (deep depth).</p>
2403
+
2404
+ <p><div class="section">
2405
+ <h5 class="title" id="html.nodes.part">
2406
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.part">5.1.4.2.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.part">part</a>
2407
+ </h5>
2408
+ <div class="content"><p>A collection of chapters.</p>
2409
+
2410
+ <p><div class="part">
2411
+ <h1 class="title" id="An-example">
2412
+ Part&nbsp;<a class="list" title="Return to table of contents" href="#rev:An-example">5.1.4.2.1.1</a>
2413
+ <br/>
2414
+ <big><a class="here" title="Permanent link to this section" href="#An-example">An example</a></big>
2415
+ </h1>
2416
+ <div class="content"><p>This is how a <strong>part</strong> node appears.</p></div>
2417
+ </div></p></div>
2418
+ </div> <div class="section">
2419
+ <h5 class="title" id="html.nodes.chapter">
2420
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.chapter">5.1.4.2.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.chapter">chapter</a>
2421
+ </h5>
2422
+ <div class="content"><p>A collection of sections.</p>
2423
+
2424
+ <p><div class="chapter">
2425
+ <h1 class="title" id="An-example-5.1.4.2.2.1">
2426
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:An-example-5.1.4.2.2.1">5.1.4.2.2.1</a>
2427
+ <br/>
2428
+ <big><a class="here" title="Permanent link to this section" href="#An-example-5.1.4.2.2.1">An example</a></big>
2429
+ </h1>
2430
+ <div class="content"><p>This is how a <strong>chapter</strong> node appears.</p></div>
2431
+ </div></p></div>
2432
+ </div> <div class="section">
2433
+ <h5 class="title" id="html.nodes.section">
2434
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.section">5.1.4.2.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.section">section</a>
2435
+ </h5>
2436
+ <div class="content"><p>A collection of paragraphs about a particular topic.</p>
2437
+
2438
+ <p><div class="section">
2439
+ <h6 class="title" id="An-example-5.1.4.2.3.1">
2440
+ <a class="list" title="Return to table of contents" href="#rev:An-example-5.1.4.2.3.1">5.1.4.2.3.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-5.1.4.2.3.1">An example</a>
2441
+ </h6>
2442
+ <div class="content"><p>This is how a <strong>section</strong> node appears.</p></div>
2443
+ </div></p></div>
2444
+ </div> <div class="section">
2445
+ <h5 class="title" id="html.nodes.paragraph">
2446
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.paragraph">5.1.4.2.4</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.paragraph">paragraph</a>
2447
+ </h5>
2448
+ <div class="content"><p>A collection of sentences about a particular idea.</p>
2449
+
2450
+ <p><div class="paragraph">
2451
+ <p class="title" id="An-example-609604428"><a class="here" title="Permanent link to this section" href="#An-example-609604428">An example</a></p>
2452
+ <div class="content"><p>This is how a <strong>paragraph</strong> node appears. Notice that there is no LaTeX-style index number in the heading of this <strong>paragraph</strong> node.</p></div>
2453
+ </div></p></div>
2454
+ </div></p></div>
2455
+ </div> <div class="section">
2456
+ <h4 class="title" id="Admonition-nodes">
2457
+ <a class="list" title="Return to table of contents" href="#rev:Admonition-nodes">5.1.4.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Admonition-nodes">Admonition nodes</a>
2458
+ </h4>
2459
+ <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>
2460
+
2461
+ <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>
2462
+
2463
+ <p> <div class="section">
2464
+ <h5 class="title" id="html.nodes.warning">
2465
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.warning">5.1.4.3.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.warning">warning</a>
2466
+ </h5>
2467
+ <div class="content"><p>Use a <strong>warning</strong> node when &#8220;data loss could occur if you follow the procedure being described.&#8221; <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
2468
+
2469
+ <p><div class="warning">
2470
+ <p class="title" id="An-example-1"><a class="list" title="Return to table of contents" href="#rev:An-example-1">Warning 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-1">An example</a></p>
2471
+ <div class="content icon-warning"><p>This is how a <strong>warning</strong> node appears.</p></div>
2472
+ </div></p></div>
2473
+ </div> <div class="section">
2474
+ <h5 class="title" id="html.nodes.caution">
2475
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.caution">5.1.4.3.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.caution">caution</a>
2476
+ </h5>
2477
+ <div class="content"><p>bq. 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&#8217;t correctly follow the procedure being outlined. <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
2478
+
2479
+ <p><div class="caution">
2480
+ <p class="title" id="An-example-1-1"><a class="list" title="Return to table of contents" href="#rev:An-example-1-1">Caution 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-1-1">An example</a></p>
2481
+ <div class="content icon-caution"><p>This is how a <strong>caution</strong> node appears.</p></div>
2482
+ </div></p></div>
2483
+ </div> <div class="section">
2484
+ <h5 class="title" id="html.nodes.important">
2485
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.important">5.1.4.3.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.important">important</a>
2486
+ </h5>
2487
+ <div class="content"><p>Use an <strong>important</strong> node when:</p>
2488
+
2489
+ <p>bq. When there is no danger of data loss, but you wish to make clear to the reader a consequence that isn&#8217;t immediately obvious (e.g. when changing the font for one instance of a program also changes the default setting, and this isn&#8217;t clear from the GUI.) <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
2490
+
2491
+ <p><div class="important">
2492
+ <p class="title" id="An-example-1-1-1"><a class="list" title="Return to table of contents" href="#rev:An-example-1-1-1">Important 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-1-1-1">An example</a></p>
2493
+ <div class="content icon-important"><p>This is how a <strong>important</strong> node appears.</p></div>
2494
+ </div></p></div>
2495
+ </div> <div class="section">
2496
+ <h5 class="title" id="html.nodes.note">
2497
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.note">5.1.4.3.4</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.note">note</a>
2498
+ </h5>
2499
+ <div class="content"><p>Use a <strong>note</strong> node to convey:</p>
2500
+
2501
+ <p>bq. 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>
2502
+
2503
+ <p><div class="note">
2504
+ <p class="title" id="An-example-2"><a class="list" title="Return to table of contents" href="#rev:An-example-2">Note 2</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-2">An example</a></p>
2505
+ <div class="content icon-note"><p>This is how a <strong>note</strong> node appears.</p></div>
2506
+ </div></p></div>
2507
+ </div> <div class="section">
2508
+ <h5 class="title" id="html.nodes.tip">
2509
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.tip">5.1.4.3.5</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.tip">tip</a>
2510
+ </h5>
2511
+ <div class="content"><p>Use a <strong>tip</strong> node when:</p>
2512
+
2513
+ <p>bq. When you&#8217;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>
2514
+
2515
+ <p><div class="tip">
2516
+ <p class="title" id="An-example-1-1-1-1"><a class="list" title="Return to table of contents" href="#rev:An-example-1-1-1-1">Tip 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-1-1-1-1">An example</a></p>
2517
+ <div class="content icon-tip"><p>This is how a <strong>tip</strong> node appears.</p></div>
2518
+ </div></p></div>
2519
+ </div></p></div>
2520
+ </div> <div class="section">
2521
+ <h4 class="title" id="Auxilary-materials">
2522
+ <a class="list" title="Return to table of contents" href="#rev:Auxilary-materials">5.1.4.4</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Auxilary-materials">Auxilary materials</a>
2523
+ </h4>
2524
+ <div class="content"><p><div class="section">
2525
+ <h5 class="title" id="html.nodes.figure">
2526
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.figure">5.1.4.4.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.figure">figure</a>
2527
+ </h5>
2528
+ <div class="content"><p>A diagram, sketch, image, or illustration; something that visually depicts an idea or thought.</p>
2529
+
2530
+ <p><div class="figure">
2531
+ <p class="title"><a class="list" title="Return to table of contents" href="#rev:An-example-1-1-1-1-1">Figure 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-1-1-1-1-1">An example</a></p>
2532
+ <div class="content"><p>This is how a <strong>figure</strong> node appears.</p></div>
2533
+ </div></p></div>
2534
+ </div> <div class="section">
2535
+ <h5 class="title" id="html.nodes.table">
2536
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.table">5.1.4.4.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.table">table</a>
2537
+ </h5>
2538
+ <div class="content"><p>Information (typically measurement data) represented in tabular form for easy reading, comparison, and analysis.</p>
2539
+
2540
+ <p><div class="table">
2541
+ <p class="title"><a class="list" title="Return to table of contents" href="#rev:An-example-1-1-1-1-1-1">Table 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-1-1-1-1-1-1">An example</a></p>
2542
+ <div class="content"><p>This is how a <strong>table</strong> node appears.</p></div>
2543
+ </div></p></div>
2544
+ </div> <div class="section">
2545
+ <h5 class="title" id="html.nodes.example">
2546
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.example">5.1.4.4.3</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.example">example</a>
2547
+ </h5>
2548
+ <div class="content"><p>A sample application of an idea or thought.</p>
2549
+
2550
+ <p><div class="example">
2551
+ <p class="title"><a class="list" title="Return to table of contents" href="#rev:An-example-4">Example 4</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-4">An example</a></p>
2552
+ <div class="content"><p>This is how a <strong>example</strong> node appears.</p></div>
2553
+ </div></p></div>
2554
+ </div> <div class="section">
2555
+ <h5 class="title" id="html.nodes.equation">
2556
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.equation">5.1.4.4.4</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.equation">equation</a>
2557
+ </h5>
2558
+ <div class="content"><p>A mathematical equation or formula.</p>
2559
+
2560
+ <p><div class="equation">
2561
+ <p class="title"><a class="list" title="Return to table of contents" href="#rev:An-example-1-1-1-1-1-1-1">Equation 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-1-1-1-1-1-1-1">An example</a></p>
2562
+ <div class="content"><p>This is how a <strong>equation</strong> node appears.</p></div>
2563
+ </div></p></div>
2564
+ </div> <div class="section">
2565
+ <h5 class="title" id="html.nodes.procedure">
2566
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.procedure">5.1.4.4.5</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.procedure">procedure</a>
2567
+ </h5>
2568
+ <div class="content"><p>An outline; a series of steps outlining some kind of process.</p>
2569
+
2570
+ <p><div class="procedure">
2571
+ <p class="title"><a class="list" title="Return to table of contents" href="#rev:An-example-1-1-1-1-1-1-1-1">Procedure 1</a>.&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#An-example-1-1-1-1-1-1-1-1">An example</a></p>
2572
+ <div class="content"><p>This is how a <strong>procedure</strong> node appears.</p></div>
2573
+ </div></p></div>
2574
+ </div></p></div>
2575
+ </div> <div class="section">
2576
+ <h4 class="title" id="Bibliographical-nodes">
2577
+ <a class="list" title="Return to table of contents" href="#rev:Bibliographical-nodes">5.1.4.5</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#Bibliographical-nodes">Bibliographical nodes</a>
2578
+ </h4>
2579
+ <div class="content"><p>The nodes in this section deal with attribution of ideas&#8212;an important weapon against plagiarism.</p>
2580
+
2581
+ <p><div class="section">
2582
+ <h5 class="title" id="html.nodes.reference">
2583
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.reference">5.1.4.5.1</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.reference">reference</a>
2584
+ </h5>
2585
+ <div class="content"><p>This node stores bibliography information about an information source that is relevant to your document.</p>
2586
+
2587
+ <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. cite</a>) to perform the citation.</p>
2588
+
2589
+ <p><div class="paragraph">
2590
+ <p class="title" id="An-example-609683078"><a class="here" title="Permanent link to this section" href="#An-example-609683078">An example</a></p>
2591
+ <div class="content"><p>See <a class="xref" href="#html.nodes.reference.example">Reference 2</a> for an example of how a <strong>reference</strong> node appears.</p></div>
2592
+ </div> </p></div>
2593
+ </div> <div class="section">
2594
+ <h5 class="title" id="html.nodes.cite">
2595
+ <a class="list" title="Return to table of contents" href="#rev:html.nodes.cite">5.1.4.5.2</a>&nbsp;&nbsp;<a class="here" title="Permanent link to this section" href="#html.nodes.cite">cite</a>
2596
+ </h5>
2597
+ <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. reference</a>) in the document&#8217;s bibliography.</p>
2598
+
2599
+ <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>
2600
+
2601
+ <p>For example, this node in the input document:</p>
2602
+
2603
+ <pre>&lt;%= cite &quot;html.nodes.reference.example&quot; %&gt;</pre>
2604
+
2605
+ <p>appears in the output document like this: <sup>[<a class="cite" href="#html.nodes.reference.example">2</a>]</sup></p>
2606
+
2607
+ <p>As another example, this node in the input document:</p>
2608
+
2609
+ <pre>&lt;%= cite &quot;html.nodes.reference.example&quot;, &quot;chapter 10&quot;, &quot;page 53&quot;, &quot;...&quot; %&gt;</pre>
2610
+
2611
+ <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>
2612
+ </div></p></div>
2613
+ </div></p></div>
2614
+ </div></p></div>
2615
+ </div> <div class="chapter">
2616
+ <h1 class="title" id="text">
2617
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:text">5.2</a>
2618
+ <br/>
2619
+ <big><a class="here" title="Permanent link to this section" href="#text">Plain text</a></big>
2620
+ </h1>
2621
+ <div class="content"><p><a href='http://en.wikipedia.org/wiki/Plain_text'>This format is not yet implemented.</a></p></div>
2622
+ </div> <div class="chapter">
2623
+ <h1 class="title" id="latex">
2624
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:latex">5.3</a>
2625
+ <br/>
2626
+ <big><a class="here" title="Permanent link to this section" href="#latex">LaTeX</a></big>
2627
+ </h1>
2628
+ <div class="content"><p><a href='http://www.latex-project.org'>This format is not yet implemented.</a></p></div>
2629
+ </div> <div class="chapter">
2630
+ <h1 class="title" id="man">
2631
+ Chapter&nbsp;<a class="list" title="Return to table of contents" href="#rev:man">5.4</a>
2632
+ <br/>
2633
+ <big><a class="here" title="Permanent link to this section" href="#man">UNIX man page</a></big>
2634
+ </h1>
2635
+ <div class="content"><p><a href='http://en.wikipedia.org/wiki/Man_page'>This format is not yet implemented.</a></p></div>
2636
+ </div></p></div>
2637
+ </div></div>
2638
+
2639
+ <div id="bib">
2640
+ <h1 class="title" id="References"><a class="here" href="#References">References</a></h1>
2641
+ <ol>
2642
+ <li id="KDE.admonitions"><p>L. Watts, &#8220;Admonitions: Tips, hints, and Warnings&#8221;, 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></p></li>
2643
+ <li id="html.nodes.reference.example"><p>This is how a <strong>reference</strong> node appears.</p></li>
2644
+ </ol>
2645
+ </div>
2646
+
2647
+ <br style="display: none"/>
2648
+ <hr style="display: none"/>
2649
+ <br style="display: none"/>
2650
+
2651
+
2652
+ <div id="footer">
2653
+
2654
+ Generated by <a href="http://snk.tuxfamily.org/lib/erbook">erbook 4.0.0</a> on Sat Nov 15 18:25:12 -0800 2008.
2655
+
2656
+ <div id="footer-credits">
2657
+ The icons used in this document are &copy; 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>.
2658
+ </div>
2659
+
2660
+ </div>
2661
+
2662
+ </body>
2663
+ </html>