gerbil 2.1.0 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README +2 -1
- data/Rakefile +1 -1
- data/bin/gerbil +53 -22
- data/doc/api/created.rid +1 -1
- data/doc/api/files/lib/gerbil/html_rb.html +1 -1
- data/doc/api/files/lib/gerbil/rdoc_rb.html +1 -1
- data/doc/api/files/lib/gerbil_rb.html +2 -2
- data/doc/guide.erb +48 -60
- data/doc/guide.html +536 -551
- data/fmt/html.yaml +45 -15
- data/lib/gerbil.rb +2 -2
- metadata +2 -2
data/README
CHANGED
@@ -1 +1,2 @@
|
|
1
|
-
Please see doc/guide.html in your web browser
|
1
|
+
Please see the ./doc/guide.html file in your web browser
|
2
|
+
or visit http://gerbil.rubyforge.org for more information.
|
data/Rakefile
CHANGED
@@ -11,7 +11,7 @@ require 'rake/gempackagetask'
|
|
11
11
|
|
12
12
|
# the user guide
|
13
13
|
file 'doc/guide.html' => 'doc/guide.erb' do |t|
|
14
|
-
sh "ruby bin/gerbil html #{t.prerequisites} > #{t.name}"
|
14
|
+
sh "ruby bin/gerbil -u html #{t.prerequisites} > #{t.name}"
|
15
15
|
end
|
16
16
|
task :doc => 'doc/guide.html'
|
17
17
|
CLOBBER.include 'doc/guide.html'
|
data/bin/gerbil
CHANGED
@@ -2,12 +2,15 @@
|
|
2
2
|
|
3
3
|
# Gerbil is an extensible document generator based on eRuby.
|
4
4
|
#
|
5
|
-
# * STDIN will be read if
|
5
|
+
# * STDIN will be read if no input files are specified.
|
6
6
|
#
|
7
7
|
# * If an error occurs, the input document will be printed to STDOUT
|
8
8
|
# so you can investigate line numbers in the error's stack trace.
|
9
|
-
#
|
10
9
|
# Otherwise, the final output document will be printed to STDOUT.
|
10
|
+
#
|
11
|
+
# * The --unindent option assumes that all beginning (<% ... do %>)
|
12
|
+
# and ending (<% end %>) eRuby directives appear one per line
|
13
|
+
# (with nothing else on the line, except whitespace) in the input.
|
11
14
|
|
12
15
|
# Copyright 2007 Suraj N. Kurapati
|
13
16
|
# See the file named LICENSE for details.
|
@@ -23,7 +26,7 @@ $:.unshift File.join(File.dirname(__FILE__), '..', 'lib')
|
|
23
26
|
require 'gerbil'
|
24
27
|
|
25
28
|
# Prints the given message and raises the given error.
|
26
|
-
def
|
29
|
+
def error aMessage, aError = $!
|
27
30
|
STDERR.printf "%s:\n\n", aMessage
|
28
31
|
raise aError
|
29
32
|
end
|
@@ -104,11 +107,11 @@ if __FILE__ == $0 or File.basename(__FILE__) == File.basename($0)
|
|
104
107
|
# show program description located at the top of this file
|
105
108
|
puts File.read(__FILE__).split(/^$\n/)[1].gsub(/^# ?/, '')
|
106
109
|
|
107
|
-
puts "
|
110
|
+
puts '', "Usage: #{File.basename $0} [Option...] Format|SpecFile [InputFile...]\n"
|
108
111
|
|
109
|
-
puts "
|
112
|
+
puts '', "Option: #{opts}"
|
110
113
|
|
111
|
-
puts "
|
114
|
+
puts '', "Format:"
|
112
115
|
Gerbil[:format_files].each do |file|
|
113
116
|
name = File.basename(file, '.yaml')
|
114
117
|
desc = YAML.load_file(file)['desc'] rescue nil
|
@@ -122,9 +125,13 @@ if __FILE__ == $0 or File.basename(__FILE__) == File.basename($0)
|
|
122
125
|
puts "%s %s (%s) %s %s" % [
|
123
126
|
:name, :version, :release, :website, :home
|
124
127
|
].map {|m| Gerbil[m] }
|
128
|
+
|
125
129
|
exit
|
126
130
|
end
|
127
131
|
|
132
|
+
unindent = false
|
133
|
+
opts.on '-u', '--unindent', 'unindent node content' do unindent = true end
|
134
|
+
|
128
135
|
opts.parse! ARGV
|
129
136
|
|
130
137
|
# load format specification file
|
@@ -140,7 +147,7 @@ if __FILE__ == $0 or File.basename(__FILE__) == File.basename($0)
|
|
140
147
|
:name => File.basename(specFile).sub(/\..*?$/, '')
|
141
148
|
|
142
149
|
rescue Exception
|
143
|
-
|
150
|
+
error "Error when loading the format specification file (#{specFile.inspect})"
|
144
151
|
end
|
145
152
|
|
146
153
|
if specData.key? 'code'
|
@@ -151,10 +158,40 @@ if __FILE__ == $0 or File.basename(__FILE__) == File.basename($0)
|
|
151
158
|
input = ARGF.read
|
152
159
|
|
153
160
|
# expand all "include" directives in the input
|
154
|
-
begin end while input.gsub! %r
|
161
|
+
begin end while input.gsub! %r{<%#\s*include\s+(.+?)\s*#%>} do
|
155
162
|
"<%#begin(#{name = $1.inspect})%>#{File.read $1}<%#end(#{name})%>"
|
156
163
|
end
|
157
164
|
|
165
|
+
# unindent node content
|
166
|
+
if unindent
|
167
|
+
BLOCK_HEAD = /<%(?!%)(?:.(?!<%[^%]))*\bdo\s*%>/
|
168
|
+
BLOCK_TAIL = /<%\s*end\s*%>/
|
169
|
+
|
170
|
+
margins = input.scan(/#{BLOCK_HEAD}(?:\r?\n)*([ \t]*)/).flatten
|
171
|
+
lines = input.split(/^/)
|
172
|
+
|
173
|
+
# unindent each line by the inner margin of its containing node
|
174
|
+
stack = []
|
175
|
+
lines.each do |line|
|
176
|
+
case line
|
177
|
+
when BLOCK_HEAD
|
178
|
+
line.replace $&
|
179
|
+
stack.push margins.shift
|
180
|
+
|
181
|
+
when BLOCK_TAIL
|
182
|
+
line.replace $&
|
183
|
+
stack.pop
|
184
|
+
|
185
|
+
else
|
186
|
+
if margin = stack.last and line.include? margin
|
187
|
+
line[margin] = ''
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
191
|
+
|
192
|
+
input = lines.join
|
193
|
+
end
|
194
|
+
|
158
195
|
# process input document
|
159
196
|
template = Template.new('INPUT', input)
|
160
197
|
|
@@ -214,21 +251,20 @@ if __FILE__ == $0 or File.basename(__FILE__) == File.basename($0)
|
|
214
251
|
|
215
252
|
# assign node content
|
216
253
|
if block_given?
|
217
|
-
@stack
|
254
|
+
@stack.push node
|
218
255
|
content = content_from_block(node, &aBlock)
|
219
256
|
@stack.pop
|
220
257
|
|
221
258
|
digest = content.digest
|
222
|
-
|
223
|
-
node.content = content
|
224
|
-
node.digest = digest
|
225
|
-
|
226
259
|
@buffer << digest
|
227
260
|
else
|
261
|
+
content = nil
|
228
262
|
digest = node.object_id.to_s.digest
|
229
|
-
node.digest = digest
|
230
263
|
end
|
231
264
|
|
265
|
+
node.content = content
|
266
|
+
node.digest = digest
|
267
|
+
|
232
268
|
digest
|
233
269
|
end
|
234
270
|
}, __FILE__, Kernel.caller.first[/\d+/].to_i.next
|
@@ -240,11 +276,6 @@ if __FILE__ == $0 or File.basename(__FILE__) == File.basename($0)
|
|
240
276
|
|
241
277
|
# replace nodes with output
|
242
278
|
expander = lambda do |n, buf|
|
243
|
-
# unindent content
|
244
|
-
if defined? $unindent and n.content
|
245
|
-
n.content.gsub! %r/^(#{Regexp.escape $unindent}){0,#{n.depth.next}}/, ''
|
246
|
-
end
|
247
|
-
|
248
279
|
# calculate node output
|
249
280
|
source = "#{specFile}:nodes:#{n.type}:output"
|
250
281
|
n.output = Template.new(source, nodeDefs[n.type]['output'].to_s.chomp).
|
@@ -259,14 +290,14 @@ if __FILE__ == $0 or File.basename(__FILE__) == File.basename($0)
|
|
259
290
|
end
|
260
291
|
|
261
292
|
# repeat for all child nodes
|
262
|
-
n.children.each {|c| expander[c, buf]}
|
293
|
+
n.children.each {|c| expander[c, buf] }
|
263
294
|
end
|
264
295
|
|
265
|
-
roots.each {|n| expander[n, document]}
|
296
|
+
roots.each {|n| expander[n, document] }
|
266
297
|
|
267
298
|
rescue Exception
|
268
299
|
puts input # so the user can debug the line numbers in the stack trace
|
269
|
-
|
300
|
+
error 'Error when processing the input document (INPUT)'
|
270
301
|
end
|
271
302
|
|
272
303
|
# produce output document
|
data/doc/api/created.rid
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Sun, 01 Jun 2008 22:30:15 -0700
|
@@ -56,7 +56,7 @@
|
|
56
56
|
</tr>
|
57
57
|
<tr class="top-aligned-row">
|
58
58
|
<td><strong>Last Update:</strong></td>
|
59
|
-
<td>
|
59
|
+
<td>Sun Jun 01 22:09:37 -0700 2008</td>
|
60
60
|
</tr>
|
61
61
|
</table>
|
62
62
|
</div>
|
@@ -95,7 +95,7 @@ project information
|
|
95
95
|
<tr class="top-aligned-row context-row">
|
96
96
|
<td class="context-item-name">Gerbil</td>
|
97
97
|
<td>=</td>
|
98
|
-
<td class="context-item-value">{ :name => 'Gerbil', :version => '
|
98
|
+
<td class="context-item-value">{ :name => 'Gerbil', :version => '3.0.0', :release => '2008-06-01', :website => 'http://gerbil.rubyforge.org', :home => File.expand_path(File.join(File.dirname(__FILE__), '..'))</td>
|
99
99
|
<td width="3em"> </td>
|
100
100
|
<td class="context-item-desc">
|
101
101
|
project information
|
data/doc/guide.erb
CHANGED
@@ -1,30 +1,46 @@
|
|
1
1
|
<%
|
2
2
|
# local variables for this document
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
feed_icon_url = File.join(Gerbil[:website], 'feed-icon-28x28.png')
|
3
|
+
pkg_url = File.join(Gerbil[:website], 'pkg')
|
4
|
+
src_url = File.join(Gerbil[:website], 'src')
|
5
|
+
ann_url = File.join(Gerbil[:website], 'ann')
|
6
|
+
dev_url = File.join(Gerbil[:website], 'dev')
|
7
|
+
log_url = File.join(Gerbil[:website], 'log')
|
9
8
|
|
10
9
|
# parameters for the HTML format
|
11
10
|
$title = "#{Gerbil} user guide"
|
12
|
-
$authors = { 'Suraj N. Kurapati' => 'http://snk.
|
13
|
-
$feeds = {
|
11
|
+
$authors = { 'Suraj N. Kurapati' => 'http://snk.rubyforge.org' }
|
12
|
+
$feeds = { ann_url => :rss }
|
14
13
|
$logo = '<img src="gerbil.png" alt="Gerbil logo" title="Gerbil logo"/>'
|
15
|
-
|
16
|
-
# parameters for Gerbil
|
17
|
-
$unindent = ' '
|
18
14
|
%>
|
19
15
|
|
16
|
+
<% header_inside_below do %>
|
17
|
+
---
|
18
|
+
|
19
|
+
"Project news":<%= ann_url %> - announcements of new releases.
|
20
|
+
|
21
|
+
"Release notes":<%= log_url %> - history of project release notes.
|
22
|
+
|
23
|
+
"Downloads":<%= pkg_url %> - obtain the newest release package.
|
24
|
+
|
25
|
+
"Reference":api/index.html - API documentation for source code.
|
26
|
+
|
27
|
+
"Developer feed":<%= dev_url %> - news about repository commits.
|
28
|
+
|
29
|
+
To get help or provide feedback, simply <%= xref "License", "contact the author" %>.
|
30
|
+
|
31
|
+
---
|
32
|
+
<% end %>
|
33
|
+
|
20
34
|
<% chapter "Introduction" do %>
|
21
35
|
Gerbil is an *extensible document generator* based on "eRuby":http://www.ruby-doc.org/docs/ProgrammingRuby/html/web.html#S2 that outputs to any format you want: <%= xref 'html', "HTML (web page)" %>, <%= xref 'latex', "LaTeX" %>, <%= xref "man", "UNIX man page" %>, <%= xref 'text', 'plain text' %>, <%= xref "HelloWorld", "your own custom format" %>, and so on.
|
22
36
|
|
23
37
|
Gerbil is *lighter* and more *flexible* than "DocBook":http://www.docbook.org, "Deplate":http://deplate.sourceforge.net, and "SiSU":http://www.jus.uio.no/sisu/SiSU/ because it is small, fast, and lets you <%= xref "HelloWorld", "define your own custom format" %>. Furthermore, Gerbil is *scriptable* unlike raw text generators such as "AsciiDoc":http://www.methods.co.nz/asciidoc/, "txt2tags":http://txt2tags.sourceforge.net, and "Grutatxt":http://www.triptico.com/software/grutatxt.html because it lets you inject Ruby code directly into your documents for dynamic content generation.
|
24
38
|
|
25
|
-
Gerbil is *open-source software* (see <%= xref "License" %>) so feel free to contribute your improvements and discuss your ideas
|
39
|
+
Gerbil is *open-source software* (see <%= xref "License" %>) so feel free to contribute your improvements and discuss your ideas <%= xref "License", "with the author" %>. You can obtain the source code from the project "Darcs":http://darcs.net repository by running the following command:
|
40
|
+
|
41
|
+
darcs get <%= src_url %> gerbil
|
26
42
|
|
27
|
-
|
43
|
+
In addition, you can monitor for changes to the above repository by subscribing to "this news feed":<%= dev_url %>.
|
28
44
|
|
29
45
|
<% note "See the source of this guide" do %>
|
30
46
|
Did you know that this user guide was generated by Gerbil? Here is "the source document":guide.erb to prove it!
|
@@ -41,19 +57,8 @@
|
|
41
57
|
<%=h File.read('LICENSE') %>
|
42
58
|
<% end %>
|
43
59
|
|
44
|
-
<% section "
|
45
|
-
|
46
|
-
- project news and release announcements.
|
47
|
-
* "Download area":<%= download_url %>
|
48
|
-
- place to obtain release packages.
|
49
|
-
* "Mailing list":<%= mailing_list_url %>
|
50
|
-
- ask questions, get help, discuss.
|
51
|
-
* "API reference":api/
|
52
|
-
- documentation for all Ruby code provided with Gerbil.
|
53
|
-
<% end %>
|
54
|
-
|
55
|
-
<% section "Testimonials" do %>
|
56
|
-
bq. I actually felt like printing it [the user guide], because it's just so well-thought typographically... Even if it [Gerbil] weren't great by itself, I'd feel good just looking at the manual. --"_Vitor Peres_ in [ruby-talk:283052]":http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/283052
|
60
|
+
<% section "Reviews" do %>
|
61
|
+
bq. I actually felt like printing it [this user guide], because it's just so well-thought typographically... Even if it [Gerbil] weren't great by itself, I'd feel good just looking at the manual [this user guide]. --"_Vitor Peres_ in [ruby-talk:283052]":http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/283052
|
57
62
|
<% end %>
|
58
63
|
<% end %>
|
59
64
|
|
@@ -78,7 +83,7 @@
|
|
78
83
|
gerbil -v
|
79
84
|
|
80
85
|
Otherwise, follow these instructions:
|
81
|
-
# Download the newest release package from "the download area":<%=
|
86
|
+
# Download the newest release package from "the download area":<%= pkg_url %>.
|
82
87
|
# Extract the release package anywhere you want on your system.
|
83
88
|
# Go inside the extracted directory and run the following command:
|
84
89
|
|
@@ -86,7 +91,7 @@
|
|
86
91
|
|
87
92
|
If the installation was successful, then you will see output like this: <pre><%=h `ruby bin/gerbil -v` %></pre>
|
88
93
|
|
89
|
-
Otherwise, you can
|
94
|
+
Otherwise, you can <%= xref "License", "contact the author" %> for help.
|
90
95
|
<% end %>
|
91
96
|
|
92
97
|
<% section "Manifest" do %>
|
@@ -255,24 +260,12 @@
|
|
255
260
|
# Run this command: <pre>gerbil HelloWorld.spec HelloWorld.input > HelloWorld.output</pre>
|
256
261
|
# Examine the <tt>HelloWorld.output</tt> file until you are satisfied!
|
257
262
|
|
258
|
-
<%
|
259
|
-
|
260
|
-
|
261
|
-
Instead, I just _really_ want to get the first release of Gerbil out the door and continue work on my other programming projects, but I cannot do so until I've written some documentation. Ah, the dilemma of an open-source developer who cares about documentation!
|
262
|
-
|
263
|
-
On the other hand, if you have ideas on how to improve this example, please speak up in the <%= mailing_list_link %>. Thanks!
|
264
|
-
<% end %>
|
265
|
-
|
266
|
-
<% example "HelloWorld format specification file", "HelloWorld.spec" do |n| %>
|
267
|
-
<code lang="rhtml">
|
268
|
-
<%= h File.read('doc/HelloWorld.spec').gsub(/^/, $unindent * n.depth.next).lstrip %>
|
269
|
-
</code>
|
263
|
+
<% example "HelloWorld format specification file", "HelloWorld.spec" do %>
|
264
|
+
<code lang="rhtml"><%= h File.read('doc/HelloWorld.spec') %></code>
|
270
265
|
<% end %>
|
271
266
|
|
272
|
-
<% example "Input document for HelloWorld format", "HelloWorld.input" do
|
273
|
-
<code lang="rhtml">
|
274
|
-
<%= h File.read('doc/HelloWorld.input').gsub(/^/, $unindent * n.depth.next).lstrip %>
|
275
|
-
</code>
|
267
|
+
<% example "Input document for HelloWorld format", "HelloWorld.input" do %>
|
268
|
+
<code lang="rhtml"><%= h File.read('doc/HelloWorld.input') %></code>
|
276
269
|
<% end %>
|
277
270
|
|
278
271
|
<% example "Output of HelloWorld format", "HelloWorld.output" do %>
|
@@ -283,35 +276,30 @@
|
|
283
276
|
<% end %>
|
284
277
|
|
285
278
|
<% chapter "Usage" do %>
|
286
|
-
|
279
|
+
<%=
|
280
|
+
`ruby bin/gerbil -h`.
|
281
|
+
gsub(/^ {4}(\S+(?:, \S+)?) {4,}(.*)$/, '| \1 | \2 |'). # option listing
|
282
|
+
gsub(/-\w\b|--\w{2,}/, '<tt>\&</tt>'). # option names
|
283
|
+
gsub(/^\S+?:/, '<b>\&</b>') # section headings
|
284
|
+
%>
|
287
285
|
|
288
|
-
Gerbil requires its _first_ command-line argument to be either (1) the name of a predefined format or (2) the path to a <%= xref 'SpecFile', 'format specification file' %>. Predefined formats are simply short-hand names of format specification files located in the <tt>
|
286
|
+
Gerbil requires its _first_ command-line argument to be either (1) the name of a predefined format or (2) the path to a <%= xref 'SpecFile', 'format specification file' %>. Predefined formats are simply short-hand names of format specification files located in the <tt>fmt/</tt> subdirectory of the Gerbil installation directory (see <%= xref "Manifest" %>).
|
289
287
|
|
290
288
|
<% section "The *include* directive", "include" do %>
|
291
289
|
The *include* directive allows you to insert the content of an arbitrary file at a certain place in the input document. It is written like this:
|
292
290
|
|
293
|
-
<%%# include _path_
|
291
|
+
<%%# include _path_ #%>
|
294
292
|
|
295
293
|
Here, _path_ is the path of the file whose content you wish to insert into the input document.
|
296
294
|
|
297
295
|
You can divide a large document into separate files for easier editing and stitch them together, dynamically, into a single document using the *include* directive.
|
298
296
|
<% end %>
|
299
|
-
|
300
|
-
<% section "The @$unindent@ variable", "unindent" do %>
|
301
|
-
The @$unindent@ variable allows you to unindent the content of every node in the input document by a specified amount of whitespace (spaces, tabs, newlines, and so on).
|
302
|
-
|
303
|
-
Simply define this variable somewhere in your input document, like this (assuming you indent your node content using a TAB and two spaces):
|
304
|
-
|
305
|
-
<%% $unindent = "\t " %>
|
306
|
-
|
307
|
-
and let Gerbil do it's magic!
|
308
|
-
<% end %>
|
309
297
|
<% end %>
|
310
298
|
|
311
299
|
<% part "Formats" do %>
|
312
|
-
This section describes the default formats provided along with Gerbil. The format specification files (see <%= xref "SpecFile" %>) for these formats can be found in the <tt>
|
300
|
+
This section describes the default formats provided along with Gerbil. The format specification files (see <%= xref "SpecFile" %>) for these formats can be found in the <tt>fmt/</tt> directory of the Gerbil installation directory (see <%= xref "Manifest" %>).
|
313
301
|
|
314
|
-
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
|
302
|
+
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 <%= xref "License", "contact the author" %>.
|
315
303
|
|
316
304
|
<% chapter "HTML", 'html' do %>
|
317
305
|
This format generates a _monolithic_ HTML (technically, it's XHTML 1.0 transitional, but who's counting?) document. A monolithic HTML document allows users to easily search for a particular topic using nothing more than their web browser's built-in text search mechanism. This facilitates offline reading, where an Internet search engine is not available.
|
@@ -321,7 +309,7 @@
|
|
321
309
|
Furthermore, the HTML document comes equipped with a stylesheet that makes it suitable for printing. In particular, users of the "Mozilla":http://mozilla.org and "Opera":http://www.opera.com/ family of web browsers will be pleasantly surprised to notice that all hyperlinks have been expanded to include their target URL next to the link text. So try using the "print preview" function of a graphical web browser to see how the HTML document will appear when printed.
|
322
310
|
|
323
311
|
<% section "Text to HTML conversion" do %>
|
324
|
-
Inside the <tt>
|
312
|
+
Inside the <tt>fmt/</tt> subdirectory of the Gerbil installation directory (see <%= xref "Manifest" %>), you will see a <tt>html.rb</tt> file. This file defines a @String.to_html@ method which is used to transform text in an input document into HTML.
|
325
313
|
|
326
314
|
The default implementation of the @String.to_html@ method is based on the "Textile":http://whytheluckystiff.net/ruby/redcloth/ markup system. If you do not like Textile or wish to use a different markup system for text in your documents, then simply edit the <tt>html.rb</tt> file and adjust the source code of the default @String.to_html@ method accordingly.
|
327
315
|
|
data/doc/guide.html
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
<html>
|
3
3
|
<head>
|
4
4
|
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
5
|
-
<meta name="date" content="
|
5
|
+
<meta name="date" content="01 June 2008"/>
|
6
6
|
<meta name="author" content="Suraj N. Kurapati"/>
|
7
|
-
<meta name="generator" content="Gerbil
|
8
|
-
<link rel="alternate" type="application/rss+xml" href="http://gerbil.rubyforge.org/
|
9
|
-
<title>Gerbil
|
7
|
+
<meta name="generator" content="Gerbil 3.0.0"/>
|
8
|
+
<link rel="alternate" type="application/rss+xml" href="http://gerbil.rubyforge.org/ann"/>
|
9
|
+
<title>Gerbil 3.0.0 user guide</title>
|
10
10
|
|
11
11
|
<style type="text/css" media="screen">
|
12
12
|
body
|
@@ -129,10 +129,35 @@
|
|
129
129
|
|
130
130
|
#header
|
131
131
|
{
|
132
|
-
margin-bottom : 5em;
|
133
132
|
text-align : center;
|
134
133
|
}
|
135
134
|
|
135
|
+
.header_outside_above,
|
136
|
+
#header,
|
137
|
+
.header_outside_below
|
138
|
+
{
|
139
|
+
margin-bottom : 5em;
|
140
|
+
}
|
141
|
+
|
142
|
+
.footer_outside_above,
|
143
|
+
#footer,
|
144
|
+
.footer_outside_below
|
145
|
+
{
|
146
|
+
margin-top : 5em;
|
147
|
+
}
|
148
|
+
|
149
|
+
#header .header_inside_above,
|
150
|
+
#footer .footer_inside_above
|
151
|
+
{
|
152
|
+
margin-bottom : 4em;
|
153
|
+
}
|
154
|
+
|
155
|
+
#header .header_inside_below,
|
156
|
+
#footer .footer_inside_below
|
157
|
+
{
|
158
|
+
margin-top : 4em;
|
159
|
+
}
|
160
|
+
|
136
161
|
#abstract
|
137
162
|
{
|
138
163
|
margin-bottom : 5em;
|
@@ -169,7 +194,6 @@
|
|
169
194
|
{
|
170
195
|
border-top : thick dotted #DCDCDC;
|
171
196
|
padding-top : 1em;
|
172
|
-
margin-top : 5em;
|
173
197
|
text-align : center;
|
174
198
|
}
|
175
199
|
|
@@ -303,8 +327,9 @@
|
|
303
327
|
|
304
328
|
hr
|
305
329
|
{
|
306
|
-
|
307
|
-
|
330
|
+
height : 0;
|
331
|
+
border : 0;
|
332
|
+
border-top : 2px solid #FF0000;
|
308
333
|
}
|
309
334
|
|
310
335
|
/* source code */
|
@@ -515,10 +540,35 @@
|
|
515
540
|
|
516
541
|
#header
|
517
542
|
{
|
518
|
-
margin-bottom : 5em;
|
519
543
|
text-align : center;
|
520
544
|
}
|
521
545
|
|
546
|
+
.header_outside_above,
|
547
|
+
#header,
|
548
|
+
.header_outside_below
|
549
|
+
{
|
550
|
+
margin-bottom : 5em;
|
551
|
+
}
|
552
|
+
|
553
|
+
.footer_outside_above,
|
554
|
+
#footer,
|
555
|
+
.footer_outside_below
|
556
|
+
{
|
557
|
+
margin-top : 5em;
|
558
|
+
}
|
559
|
+
|
560
|
+
#header .header_inside_above,
|
561
|
+
#footer .footer_inside_above
|
562
|
+
{
|
563
|
+
margin-bottom : 4em;
|
564
|
+
}
|
565
|
+
|
566
|
+
#header .header_inside_below,
|
567
|
+
#footer .footer_inside_below
|
568
|
+
{
|
569
|
+
margin-top : 4em;
|
570
|
+
}
|
571
|
+
|
522
572
|
#abstract
|
523
573
|
{
|
524
574
|
margin-bottom : 5em;
|
@@ -555,7 +605,6 @@
|
|
555
605
|
{
|
556
606
|
border-top : thick dotted #DCDCDC;
|
557
607
|
padding-top : 1em;
|
558
|
-
margin-top : 5em;
|
559
608
|
text-align : center;
|
560
609
|
}
|
561
610
|
|
@@ -769,23 +818,45 @@
|
|
769
818
|
<div id="header">
|
770
819
|
|
771
820
|
<img src="gerbil.png" alt="Gerbil logo" title="Gerbil logo"/>
|
772
|
-
<h1 class="title">Gerbil
|
773
|
-
<h2 class="authors"><a href="http://snk.
|
774
|
-
<h3 class="date">
|
775
|
-
|
821
|
+
<h1 class="title">Gerbil 3.0.0 user guide</h1>
|
822
|
+
<h2 class="authors"><a href="http://snk.rubyforge.org">Suraj N. Kurapati</a></h2>
|
823
|
+
<h3 class="date">01 June 2008</h3>
|
824
|
+
<div class="header_inside_below"><hr />
|
825
|
+
|
826
|
+
|
827
|
+
<p><a href="http://gerbil.rubyforge.org/ann">Project news</a> – announcements of new releases.</p>
|
828
|
+
|
829
|
+
|
830
|
+
<p><a href="http://gerbil.rubyforge.org/log">Release notes</a> – history of project release notes.</p>
|
831
|
+
|
832
|
+
|
833
|
+
<p><a href="http://gerbil.rubyforge.org/pkg">Downloads</a> – obtain the newest release package.</p>
|
834
|
+
|
835
|
+
|
836
|
+
<p><a href="api/index.html">Reference</a> – API documentation for source code.</p>
|
837
|
+
|
838
|
+
|
839
|
+
<p><a href="http://gerbil.rubyforge.org/dev">Developer feed</a> – news about repository commits.</p>
|
840
|
+
|
841
|
+
|
842
|
+
<p>To get help or provide feedback, simply <a class="xref" href="#License">contact the author</a>.</p>
|
843
|
+
|
844
|
+
|
845
|
+
<hr /></div>
|
776
846
|
</div>
|
777
847
|
|
778
848
|
|
849
|
+
|
779
850
|
|
780
|
-
<div id="toc"><h1>Contents</h1> <ul><li>1 <a id="a-
|
851
|
+
<div id="toc"><h1>Contents</h1> <ul><li>1 <a id="a-605970898" href="#Introduction">Introduction</a><ul><li>1.1 <a id="a-606066588" href="#Features">Features</a></li><li>1.2 <a id="a-606122318" href="#License">License</a></li><li>1.3 <a id="a-606146828" href="#Reviews">Reviews</a></li></ul></li><li>2 <a id="a-606154168" href="#Setup">Setup</a><ul><li>2.1 <a id="a-605622608" href="#Requirements">Requirements</a></li><li>2.2 <a id="a-605710938" href="#Installation">Installation</a></li><li>2.3 <a id="a-605760218" href="#Manifest">Manifest</a></li><li>2.4 <a id="a-606185998" href="#Version-numbering-system">Version numbering system</a></li></ul></li><li>3 <a id="a-606192738" href="#Theory-of-operation">Theory of operation</a><ul><li>3.1 <a id="a-606211768" href="#Nodes">Nodes</a><ul><li>3.1.1 <a id="a-606223748" href="#Node.class">The <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> class</a></li></ul></li><li>3.2 <a id="a-606229648" href="#SpecFile">Format specification file</a><ul><li>3.2.1 <a id="a-606241638" href="#SpecFile.nodes">Node definition</a><ul><li>3.2.1.1 <a id="a-606248698" href="#SpecFile.nodes.output">Node output template</a></li></ul></li><li>3.2.2 <a id="a-606256688" href="#SpecFile.output">Document output template</a></li><li>3.2.3 <a id="a-606262248" href="#HelloWorld">Creating your own custom format</a></li></ul></li></ul></li><li>4 <a id="a-606308348" href="#Usage">Usage</a><ul><li>4.1 <a id="a-606315728" href="#include">The <strong>include</strong> directive</a></li></ul></li><li>5 <a id="a-606319258" href="#Formats">Formats</a><ul><li>5.1 <a id="a-606328418" href="#html">HTML</a><ul><li>5.1.1 <a id="a-606330638" href="#Text-to-HTML-conversion">Text to HTML conversion</a><ul><li>5.1.1.1 <a id="a-606335428" href="#Syntax-coloring-for-source-code">Syntax coloring for source code</a><ul><li>5.1.1.1.1 <a id="a-606338018" href="#Specifying-the-programming-language">Specifying the programming language</a></li></ul></li><li>5.1.1.2 <a id="a-606341978" href="#Smart-sizing-of-source-code">Smart sizing of source code</a></li><li>5.1.1.3 <a id="a-606345218" href="#Protecting-verbatim-text">Protecting verbatim text</a></li></ul></li><li>5.1.2 <a id="a-606353048" href="#Parameters">Parameters</a></li><li>5.1.3 <a id="a-606356788" href="#Methods">Methods</a></li><li>5.1.4 <a id="a-606981518" href="#html.nodes">Nodes</a><ul><li>5.1.4.1 <a id="a-606992068" href="#Structure">Structure</a><ul><li>5.1.4.1.1 <a id="a-606999108" href="#html.nodes.header">header</a></li><li>5.1.4.1.2 <a id="a-607002748" href="#html.nodes.footer">footer</a></li><li>5.1.4.1.3 <a id="a-607009848" href="#html.nodes.abstract">abstract</a></li><li>5.1.4.1.4 <a id="a-607014308" href="#html.nodes.xref">xref</a></li></ul></li><li>5.1.4.2 <a id="a-607031368" href="#Organization">Organization</a><ul><li>5.1.4.2.1 <a id="a-607035868" href="#html.nodes.part">part</a><ul><li>5.1.4.2.1.1 <a id="a-607039118" href="#An-example">An example</a></li></ul></li><li>5.1.4.2.2 <a id="a-607041628" href="#html.nodes.chapter">chapter</a><ul><li>5.1.4.2.2.1 <a id="a-607043318" href="#An-example-607136348">An example</a></li></ul></li><li>5.1.4.2.3 <a id="a-607045828" href="#html.nodes.section">section</a><ul><li>5.1.4.2.3.1 <a id="a-607047548" href="#An-example-607242248">An example</a></li></ul></li><li>5.1.4.2.4 <a id="a-607050058" href="#html.nodes.paragraph">paragraph</a></li></ul></li><li>5.1.4.3 <a id="a-607054298" href="#Admonitions">Admonitions</a><ul><li>5.1.4.3.1 <a id="a-607059578" href="#html.nodes.warning">warning</a></li><li>5.1.4.3.2 <a id="a-607065148" href="#html.nodes.caution">caution</a></li><li>5.1.4.3.3 <a id="a-607070748" href="#html.nodes.important">important</a></li><li>5.1.4.3.4 <a id="a-607078658" href="#html.nodes.note">note</a></li><li>5.1.4.3.5 <a id="a-607091318" href="#html.nodes.tip">tip</a></li></ul></li><li>5.1.4.4 <a id="a-607113278" href="#Auxilary-materials">Auxilary materials</a><ul><li>5.1.4.4.1 <a id="a-607120048" href="#html.nodes.figure">figure</a></li><li>5.1.4.4.2 <a id="a-607131228" href="#html.nodes.table">table</a></li><li>5.1.4.4.3 <a id="a-607142608" href="#html.nodes.example">example</a></li><li>5.1.4.4.4 <a id="a-607150388" href="#html.nodes.equation">equation</a></li><li>5.1.4.4.5 <a id="a-607158588" href="#html.nodes.procedure">procedure</a></li></ul></li><li>5.1.4.5 <a id="a-607170548" href="#Bibliography">Bibliography</a><ul><li>5.1.4.5.1 <a id="a-607173848" href="#html.nodes.reference">reference</a></li><li>5.1.4.5.2 <a id="a-607194148" href="#html.nodes.cite">cite</a></li></ul></li></ul></li></ul></li><li>5.2 <a id="a-607222938" href="#text">Plain text</a></li><li>5.3 <a id="a-607234148" href="#latex">LaTeX</a></li><li>5.4 <a id="a-607237578" href="#man">UNIX man page</a></li></ul></li></ul></div>
|
781
852
|
|
782
|
-
<div id="lof"><h1>Cautions</h1> <ol><li><a id="a-
|
853
|
+
<div id="lof"><h1>Cautions</h1> <ol><li><a id="a-607068458" href="#An-example-607338778">An example</a></li></ol><h1>Equations</h1> <ol><li><a id="a-607154858" href="#An-example-607537918">An example</a></li></ol><h1>Examples</h1> <ol><li><a id="a-606287038" href="#HelloWorld.spec">HelloWorld format specification file</a></li><li><a id="a-606294048" href="#HelloWorld.input">Input document for HelloWorld format</a></li><li><a id="a-606300938" href="#HelloWorld.output">Output of HelloWorld format</a></li><li><a id="a-607146808" href="#An-example-607515828">An example</a></li></ol><h1>Figures</h1> <ol><li><a id="a-607123418" href="#An-example-607470278">An example</a></li></ol><h1>Importants</h1> <ol><li><a id="a-607074108" href="#An-example-607369758">An example</a></li></ol><h1>Notes</h1> <ol><li><a id="a-606050618" href="#See-the-source-of-this-guide">See the source of this guide</a></li><li><a id="a-607085588" href="#An-example-607405428">An example</a></li></ol><h1>Procedures</h1> <ol><li><a id="a-607161558" href="#An-example-607559818">An example</a></li></ol><h1>Tables</h1> <ol><li><a id="a-607135628" href="#An-example-607493418">An example</a></li></ol><h1>Tips</h1> <ol><li><a id="a-607103358" href="#An-example-607435678">An example</a></li></ol><h1>Warnings</h1> <ol><li><a id="a-607062858" href="#An-example-607309288">An example</a></li></ol></div>
|
783
854
|
|
784
855
|
<div id="content">
|
785
856
|
<div class="chapter">
|
786
857
|
<h1 class="title">
|
787
858
|
Chapter
|
788
|
-
<a class="toc" id="Introduction" href="#a-
|
859
|
+
<a class="toc" id="Introduction" href="#a-605970898">1</a>
|
789
860
|
|
790
861
|
<br/>
|
791
862
|
|
@@ -798,14 +869,17 @@
|
|
798
869
|
<p>Gerbil is <strong>lighter</strong> and more <strong>flexible</strong> than <a href="http://www.docbook.org">DocBook</a>, <a href="http://deplate.sourceforge.net">Deplate</a>, and <a href="http://www.jus.uio.no/sisu/SiSU/">SiSU</a> because it is small, fast, and lets you <a class="xref" href="#HelloWorld">define your own custom format</a>. Furthermore, Gerbil is <strong>scriptable</strong> unlike raw text generators such as <a href="http://www.methods.co.nz/asciidoc/">AsciiDoc</a>, <a href="http://txt2tags.sourceforge.net">txt2tags</a>, and <a href="http://www.triptico.com/software/grutatxt.html">Grutatxt</a> because it lets you inject Ruby code directly into your documents for dynamic content generation.</p>
|
799
870
|
|
800
871
|
|
801
|
-
<p>Gerbil is <strong>open-source software</strong> (see <a class="xref" href="#License">Section 1.2: <em>License</em></a>) so feel free to contribute your improvements and discuss your ideas
|
872
|
+
<p>Gerbil is <strong>open-source software</strong> (see <a class="xref" href="#License">Section 1.2: <em>License</em></a>) so feel free to contribute your improvements and discuss your ideas <a class="xref" href="#License">with the author</a>. You can obtain the source code from the project <a href="http://darcs.net">Darcs</a> repository by running the following command:</p>
|
802
873
|
|
803
874
|
|
804
875
|
<pre>darcs get http://gerbil.rubyforge.org/src gerbil</pre>
|
805
876
|
|
806
877
|
|
878
|
+
<p>In addition, you can monitor for changes to the above repository by subscribing to <a href="http://gerbil.rubyforge.org/dev">this news feed</a>.</p>
|
879
|
+
|
880
|
+
|
807
881
|
<p><div class="note">
|
808
|
-
<p class="title"><a class="toc" id="See-the-source-of-this-guide" href="#a-
|
882
|
+
<p class="title"><a class="toc" id="See-the-source-of-this-guide" href="#a-606050618">Note 1</a>. See the source of this guide</p>
|
809
883
|
|
810
884
|
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
811
885
|
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
@@ -867,10 +941,9 @@ DUCQhrhWJkj394A0gKeUCjVo3r9Zv0r2P3yyQqPd16MPAAAAAElFTkSuQmCC
|
|
867
941
|
" class="icon"/>
|
868
942
|
|
869
943
|
<div class="content">Did you know that this user guide was generated by Gerbil? Here is <a href="guide.erb">the source document</a> to prove it!</div>
|
870
|
-
</div>
|
871
|
-
<div class="section">
|
944
|
+
</div><div class="section">
|
872
945
|
<h2 class="title">
|
873
|
-
<a class="toc" id="Features" href="#a-
|
946
|
+
<a class="toc" id="Features" href="#a-606066588">1.1</a> Features
|
874
947
|
</h2>
|
875
948
|
<div class="content"><ul>
|
876
949
|
<li>Composed of <strong>less than 200 lines</strong> of code!</li>
|
@@ -878,10 +951,9 @@ DUCQhrhWJkj394A0gKeUCjVo3r9Zv0r2P3yyQqPd16MPAAAAAElFTkSuQmCC
|
|
878
951
|
<li>Supports <strong>any text-based output</strong> format.</li>
|
879
952
|
<li>Generates a <strong>table of contents</strong> automatically.</li>
|
880
953
|
</ul></div>
|
881
|
-
</div>
|
882
|
-
<div class="section">
|
954
|
+
</div><div class="section">
|
883
955
|
<h2 class="title">
|
884
|
-
<a class="toc" id="License" href="#a-
|
956
|
+
<a class="toc" id="License" href="#a-606122318">1.2</a> License
|
885
957
|
</h2>
|
886
958
|
<div class="content"><p>Copyright 2006 Suraj N. Kurapati <SNK at GNA dot ORG></p>
|
887
959
|
|
@@ -896,15 +968,15 @@ Software is furnished to do so, subject to the following conditions:</p>
|
|
896
968
|
|
897
969
|
<ul>
|
898
970
|
<li>All copies and substantial portions of the Software (the "Derivatives")
|
899
|
-
and their corresponding machine-readable source code (the "Code") must
|
900
|
-
include the above copyright notice and this permission notice.</li>
|
971
|
+
and their corresponding machine-readable source code (the "Code") must
|
972
|
+
include the above copyright notice and this permission notice.</li>
|
901
973
|
</ul>
|
902
974
|
|
903
975
|
|
904
976
|
<ul>
|
905
977
|
<li>Upon distribution, the Derivatives must be accompanied by either the Code
|
906
|
-
or—provided that the Code is obtainable for no more than the cost of
|
907
|
-
distribution plus a nominal fee—information on how to obtain the Code.</li>
|
978
|
+
or—provided that the Code is obtainable for no more than the cost of
|
979
|
+
distribution plus a nominal fee—information on how to obtain the Code.</li>
|
908
980
|
</ul>
|
909
981
|
|
910
982
|
|
@@ -914,35 +986,19 @@ IMPLIED, INCLUDING <span class="caps">BUT NOT LIMITED TO THE WARRANTIES OF MERCH
|
|
914
986
|
<span class="caps">COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM</span>, DAMAGES <span class="caps">OR OTHER LIABILITY</span>, WHETHER
|
915
987
|
<span class="caps">IN AN ACTION OF CONTRACT</span>, TORT <span class="caps">OR OTHERWISE</span>, ARISING FROM, OUT <span class="caps">OF OR IN</span>
|
916
988
|
<span class="caps">CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE</span>.</p></div>
|
917
|
-
</div>
|
918
|
-
<div class="section">
|
919
|
-
<h2 class="title">
|
920
|
-
<a class="toc" id="Resources" href="#a-606213458">1.3</a> Resources
|
921
|
-
</h2>
|
922
|
-
<div class="content"><ul>
|
923
|
-
<li><a href="http://gerbil.rubyforge.org/news.xml">Announcements</a> <img src="http://gerbil.rubyforge.org/feed-icon-28x28.png" title="RSS icon" alt="RSS icon" />
|
924
|
-
– project news and release announcements.</li>
|
925
|
-
<li><a href="http://rubyforge.org/frs/?group_id=4905">Download area</a>
|
926
|
-
– place to obtain release packages.</li>
|
927
|
-
<li><a href="http://rubyforge.org/mailman/listinfo/gerbil-talk">Mailing list</a>
|
928
|
-
– ask questions, get help, discuss.</li>
|
929
|
-
<li><a href="api/">API reference</a>
|
930
|
-
– documentation for all Ruby code provided with Gerbil.</li>
|
931
|
-
</ul></div>
|
932
|
-
</div>
|
933
|
-
<div class="section">
|
989
|
+
</div><div class="section">
|
934
990
|
<h2 class="title">
|
935
|
-
<a class="toc" id="
|
991
|
+
<a class="toc" id="Reviews" href="#a-606146828">1.3</a> Reviews
|
936
992
|
</h2>
|
937
993
|
<div class="content"><blockquote>
|
938
|
-
<p>I actually felt like printing it [
|
994
|
+
<p>I actually felt like printing it [this user guide], because it’s just so well-thought typographically… Even if it [Gerbil] weren’t great by itself, I’d feel good just looking at the manual [this user guide]. —<a href="http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/283052"><em>Vitor Peres</em> in [ruby-talk:283052]</a></p>
|
939
995
|
</blockquote></div>
|
940
996
|
</div></p></div>
|
941
997
|
</div>
|
942
998
|
<div class="chapter">
|
943
999
|
<h1 class="title">
|
944
1000
|
Chapter
|
945
|
-
<a class="toc" id="Setup" href="#a-
|
1001
|
+
<a class="toc" id="Setup" href="#a-606154168">2</a>
|
946
1002
|
|
947
1003
|
<br/>
|
948
1004
|
|
@@ -951,7 +1007,7 @@ IMPLIED, INCLUDING <span class="caps">BUT NOT LIMITED TO THE WARRANTIES OF MERCH
|
|
951
1007
|
|
952
1008
|
<div class="content"><div class="section">
|
953
1009
|
<h2 class="title">
|
954
|
-
<a class="toc" id="Requirements" href="#a-
|
1010
|
+
<a class="toc" id="Requirements" href="#a-605622608">2.1</a> Requirements
|
955
1011
|
</h2>
|
956
1012
|
<div class="content"><p>Your system needs the following software to run Gerbil.</p>
|
957
1013
|
|
@@ -982,10 +1038,9 @@ IMPLIED, INCLUDING <span class="caps">BUT NOT LIMITED TO THE WARRANTIES OF MERCH
|
|
982
1038
|
|
983
1039
|
|
984
1040
|
<pre>gem install RedCloth coderay</pre></div>
|
985
|
-
</div>
|
986
|
-
<div class="section">
|
1041
|
+
</div><div class="section">
|
987
1042
|
<h2 class="title">
|
988
|
-
<a class="toc" id="Installation" href="#a-
|
1043
|
+
<a class="toc" id="Installation" href="#a-605710938">2.2</a> Installation
|
989
1044
|
</h2>
|
990
1045
|
<div class="content"><p>If your system has <a href="http://rubygems.org/">RubyGems</a>, then you can install Gerbil by running the following commands:</p>
|
991
1046
|
|
@@ -996,7 +1051,7 @@ gerbil -v</pre>
|
|
996
1051
|
|
997
1052
|
Otherwise, follow these instructions:
|
998
1053
|
<ol>
|
999
|
-
<li>Download the newest release package from <a href="http://rubyforge.org/
|
1054
|
+
<li>Download the newest release package from <a href="http://gerbil.rubyforge.org/pkg">the download area</a>.</li>
|
1000
1055
|
<li>Extract the release package anywhere you want on your system.</li>
|
1001
1056
|
<li>Go inside the extracted directory and run the following command:</li>
|
1002
1057
|
</ol>
|
@@ -1005,15 +1060,14 @@ Otherwise, follow these instructions:
|
|
1005
1060
|
<pre>ruby bin/gerbil -v</pre>
|
1006
1061
|
|
1007
1062
|
|
1008
|
-
<p>If the installation was successful, then you will see output like this: <pre>Gerbil
|
1063
|
+
<p>If the installation was successful, then you will see output like this: <pre>Gerbil 3.0.0 (2008-06-01) http://gerbil.rubyforge.org /home/sun/src/gerbil
|
1009
1064
|
</pre></p>
|
1010
1065
|
|
1011
1066
|
|
1012
|
-
<p>Otherwise, you can
|
1013
|
-
</div>
|
1014
|
-
<div class="section">
|
1067
|
+
<p>Otherwise, you can <a class="xref" href="#License">contact the author</a> for help.</p></div>
|
1068
|
+
</div><div class="section">
|
1015
1069
|
<h2 class="title">
|
1016
|
-
<a class="toc" id="Manifest" href="#a-
|
1070
|
+
<a class="toc" id="Manifest" href="#a-605760218">2.3</a> Manifest
|
1017
1071
|
</h2>
|
1018
1072
|
<div class="content">Now that Gerbil is installed on your system, let us examine its installation directory.
|
1019
1073
|
<ul>
|
@@ -1034,33 +1088,22 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1034
1088
|
<li><tt>latex.yaml</tt> – high-quality typesetting</li>
|
1035
1089
|
<li><tt>html.yaml</tt> – web page for the Internet</li>
|
1036
1090
|
<li><tt>man.yaml</tt> – manual page for UNIX</li>
|
1037
|
-
<li><tt>text.yaml</tt> – plain text, nothing fancy
|
1038
|
-
|
1039
|
-
|
1040
|
-
|
1041
|
-
|
1042
|
-
|
1043
|
-
|
1044
|
-
|
1045
|
-
|
1046
|
-
|
1047
|
-
|
1048
|
-
</li>
|
1049
|
-
</ul>
|
1050
|
-
</li>
|
1051
|
-
<li><tt>doc/</tt> – contains the user guide and other documentation.
|
1052
|
-
<ul>
|
1053
|
-
<li><tt>gerbil.svg</tt> – the source file of the Gerbil logo.</li>
|
1054
|
-
<li><tt>guide.erb</tt> – the source file of this user guide.</li>
|
1055
|
-
<li><tt>api/</tt> – contains API reference documentation for the provided Ruby code.</li>
|
1056
|
-
</ul>
|
1057
|
-
</li>
|
1058
|
-
<li><tt>LICENSE</tt> – the project license and copyright notice.</li>
|
1091
|
+
<li><tt>text.yaml</tt> – plain text, nothing fancy
|
1092
|
+
* <tt>lib/</tt> – Gerbil automatically adds this directory to Ruby’s load path.
|
1093
|
+
<strong>* <tt>gerbil.rb</tt> – project version information.
|
1094
|
+
*</strong> <tt>gerbil/</tt>
|
1095
|
+
<b>* <tt>html.rb</tt> – provides the <code class="code"><span style="color:#036; font-weight:bold">String</span><span style="color:#888">#to_html</span></code> method.
|
1096
|
+
<strong></b> <tt>rdoc.rb</tt> – provides RDoc parse trees to Ruby code.
|
1097
|
+
* <tt>doc/</tt> – contains the user guide and other documentation.
|
1098
|
+
*</strong> <tt>gerbil.svg</tt> – the source file of the Gerbil logo.
|
1099
|
+
<strong>* <tt>guide.erb</tt> – the source file of this user guide.
|
1100
|
+
*</strong> <tt>api/</tt> – contains API reference documentation for the provided Ruby code.
|
1101
|
+
* <tt>LICENSE</tt> – the project license and copyright notice.</li>
|
1102
|
+
</ul></li>
|
1059
1103
|
</ul></div>
|
1060
|
-
</div>
|
1061
|
-
<div class="section">
|
1104
|
+
</div><div class="section">
|
1062
1105
|
<h2 class="title">
|
1063
|
-
<a class="toc" id="Version-numbering-system" href="#a-
|
1106
|
+
<a class="toc" id="Version-numbering-system" href="#a-606185998">2.4</a> Version numbering system
|
1064
1107
|
</h2>
|
1065
1108
|
<div class="content">Gerbil uses the <a href="http://www.rubygems.org/read/chapter/7">RubyGems rational versioning policy</a> to number its releases. This <strong>major.minor.patch</strong> numbering policy <a href="http://ablog.apress.com/?p=738">is summarized</a> as follows.
|
1066
1109
|
|
@@ -1096,7 +1139,7 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1096
1139
|
<div class="chapter">
|
1097
1140
|
<h1 class="title">
|
1098
1141
|
Chapter
|
1099
|
-
<a class="toc" id="Theory-of-operation" href="#a-
|
1142
|
+
<a class="toc" id="Theory-of-operation" href="#a-606192738">3</a>
|
1100
1143
|
|
1101
1144
|
<br/>
|
1102
1145
|
|
@@ -1128,7 +1171,7 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1128
1171
|
|
1129
1172
|
<p><div class="section">
|
1130
1173
|
<h2 class="title">
|
1131
|
-
<a class="toc" id="Nodes" href="#a-
|
1174
|
+
<a class="toc" id="Nodes" href="#a-606211768">3.1</a> Nodes
|
1132
1175
|
</h2>
|
1133
1176
|
<div class="content"><p>A node is a block of text that appears like this:</p>
|
1134
1177
|
|
@@ -1186,7 +1229,7 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1186
1229
|
|
1187
1230
|
<p><div class="section">
|
1188
1231
|
<h3 class="title">
|
1189
|
-
<a class="toc" id="Node.class" href="#a-
|
1232
|
+
<a class="toc" id="Node.class" href="#a-606223748">3.1.1</a> The <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> class
|
1190
1233
|
</h3>
|
1191
1234
|
<div class="content"><p>When Gerbil builds a document tree from nodes present in an input document, it stores information about these nodes into <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> objects. A <code class="code"><span style="color:#036; font-weight:bold">Node</span></code> object has the following properties (methods):</p>
|
1192
1235
|
|
@@ -1262,7 +1305,7 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1262
1305
|
</div>
|
1263
1306
|
<div class="section">
|
1264
1307
|
<h2 class="title">
|
1265
|
-
<a class="toc" id="SpecFile" href="#a-
|
1308
|
+
<a class="toc" id="SpecFile" href="#a-606229648">3.2</a> Format specification file
|
1266
1309
|
</h2>
|
1267
1310
|
<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>
|
1268
1311
|
|
@@ -1300,7 +1343,7 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1300
1343
|
|
1301
1344
|
<p><div class="section">
|
1302
1345
|
<h3 class="title">
|
1303
|
-
<a class="toc" id="SpecFile.nodes" href="#a-
|
1346
|
+
<a class="toc" id="SpecFile.nodes" href="#a-606241638">3.2.1</a> Node definition
|
1304
1347
|
</h3>
|
1305
1348
|
<div class="content"><p>A node definition is a mapping from a name (the “node type”) to the following set of parameters:</p>
|
1306
1349
|
|
@@ -1341,7 +1384,7 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1341
1384
|
|
1342
1385
|
<p><div class="section">
|
1343
1386
|
<h4 class="title">
|
1344
|
-
<a class="toc" id="SpecFile.nodes.output" href="#a-
|
1387
|
+
<a class="toc" id="SpecFile.nodes.output" href="#a-606248698">3.2.1.1</a> Node output template
|
1345
1388
|
</h4>
|
1346
1389
|
<div class="content"><p>A node output template (the <strong>output</strong> parameter in a node definition) is an eRuby template that transforms a node’s content into output. During the processing stage, Gerbil replaces all nodes in the input document with the result of this template <em>unless</em> the <strong>silent</strong> parameter is enabled in this node’s definition.</p>
|
1347
1390
|
|
@@ -1409,7 +1452,7 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1409
1452
|
</div>
|
1410
1453
|
<div class="section">
|
1411
1454
|
<h3 class="title">
|
1412
|
-
<a class="toc" id="SpecFile.output" href="#a-
|
1455
|
+
<a class="toc" id="SpecFile.output" href="#a-606256688">3.2.2</a> Document output template
|
1413
1456
|
</h3>
|
1414
1457
|
<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>
|
1415
1458
|
|
@@ -1473,10 +1516,9 @@ Inside Gerbil’s installation directory, you will see (among other things)
|
|
1473
1516
|
<td> Path of the current format specification file. </td>
|
1474
1517
|
</tr>
|
1475
1518
|
</table></div>
|
1476
|
-
</div>
|
1477
|
-
<div class="section">
|
1519
|
+
</div><div class="section">
|
1478
1520
|
<h3 class="title">
|
1479
|
-
<a class="toc" id="HelloWorld" href="#a-
|
1521
|
+
<a class="toc" id="HelloWorld" href="#a-606262248">3.2.3</a> Creating your own custom format
|
1480
1522
|
</h3>
|
1481
1523
|
<div class="content">Here is a working example to help you digest all that you’ve learned so far about format specification files. A few things to notice in this example are:
|
1482
1524
|
<ul>
|
@@ -1494,80 +1536,9 @@ To run this example, perform the following steps:
|
|
1494
1536
|
</ol>
|
1495
1537
|
|
1496
1538
|
|
1497
|
-
<p><div class="
|
1498
|
-
<p class="title"><a class="toc" id="
|
1499
|
-
|
1500
|
-
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
1501
|
-
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
1502
|
-
Lmlua3NjYXBlLm9yZ5vuPBoAAAmCSURBVGiB1ZltbJXlGcd/9/N+Tlssh1Ja
|
1503
|
-
hNEJaK2UFxFptqC2wGCSTWdM3DSQzWVDEzVxy4xfjNkHQ8xMnEEXviwZ62Rj
|
1504
|
-
6siWTcVBZeJA5yBQpOWlKNZSaEvpyyk95zwv970Pp+fY5/S0tFBkXsmTc67n
|
1505
|
-
eu77+f/u6349Ryil+Cqbdq0FXKldEuClp+3nfvVz/eJLT9vPXQv/igFc13tq
|
1506
|
-
w4/ujLqu99S18C9lRr6br7zyyi2WZb2eSqUqpVSUlE5BSmW8/PLL6sv2bdtu
|
1507
|
-
TiaT9z/++ONN486AZVm/XLiw+qZlt98Wun/bsqUhf+nSJSF/ya2LQv6ixQtD
|
1508
|
-
/sJFC0L+guqqkF91S2XIr6y6idlfm1Vp2/Yz+XSOCiCEqDJMQ3ze+hm6bnC+
|
1509
|
-
sx9d1zl+vBlN1znf2Y+m6TQfa0LTvvCbmo6G/KNHj4T8Ix83hvzGI4dD/uHG
|
1510
|
-
QyG/peUElmUJIURlPp2jAkgpiwXg+R5FM9dRv3U/heXrkFJSWHZ32i/7NlJK
|
1511
|
-
CsrWUr91P9EZa5FSEildQ/3W/USmfwspJc701dRv3Y9dshopJda0VdRv3Y8V
|
1512
|
-
W4mUEjO2kvqt+zCm1iGlxCiu5fe/24defBeu6yHSkopHAxD51oEtW7bEb1++
|
1513
|
-
rLC5+ShBEKCU+uJCgWJCvlJD9/iinlw/o2O4b5omixct4fixkz2PPPJILB9A
|
1514
|
-
3kEspYzOmjWbxYuWjIiNtfBdjdjg4EWam44XjhYf0YU2b948xTTNoGRaSbjl
|
1515
|
-
R2mlqx0rLCxC0zR98+bNdj6AERkIgiDmOI6nlDK/7NbOF1NKYdt2KplMxoCz
|
1516
|
-
ufERAKZpxiKRSDC8wnfeeWfUl06W0FxbtWpV9tloNOoPDg6OD0BKGYtEIqGX
|
1517
|
-
rV69etKFXio2vGs5jqOklOMbxJqmxaLRqBheSRAEo77sSoWOZkKI7DORSERo
|
1518
|
-
mjY+AKVULBKJGMMB3n333Uum/XK35aOVq6ury2YiEonoSqnxAziOYw0HqKur
|
1519
|
-
G5fIyR68mU/Hccyes8cq19cVbQB84Fh9Q/xgXgDTNGfYtq0NBxivkMmGAGg7
|
1520
|
-
3cTOV58xe9tPPvnwuodUxFX89cOd/vq6orX1DfG9IwB0XS+zbTs0kHbt2jVh
|
1521
|
-
iMwscrkQrS2H+ce2TfSdPc2Dd9xN1cL7TK29E9rbWWBXWk9o+95eX1c0Jd9K
|
1522
|
-
XGqaZghg5cqVExIyEaG51tL0IW9u2wRuijVrf4JXXIHR1oZoaIC2NjhzBtHb
|
1523
|
-
S+lcTT9jBNPzAUyzLCvUBy9HyETLHm98nze3bWKw7xy1NZXcOG8JUmq0BgGt
|
1524
|
-
paVoRUWUfPwxnb5Pl+/RJ6QAIvkGcXFuBq4mxNEDu3lr2yaUN8BdyyuZO/d2
|
1525
|
-
hNBQ0sPrf43C0yvoqqjic9umdXCQ85akeT6plMUL9f+Mf5pvIZtiGAa5g3gy
|
1526
|
-
IZRSNH74Nm/9cRO2HrByeSUVFRWAQAYpEj2nSF44hZI+F/tn4V0/n3hPJ+1V
|
1527
|
-
ym+KKFcY4lXPU89A/r1QgWEY+L6fvbd79+4rhkg/Izlz8j+c/O/rlBRHufuO
|
1528
|
-
BcyeNRsA6Q+S6G4h1XcaJdMLZ0evT3tXG/65VznU9j5eofqN5/N8/c7+9kyd
|
1529
|
-
ofPAiy++GIlGo/ENGzborutOWOhosSDw+ehfb7Dzzy9QVjKFO5bdTHl5eTrm
|
1530
|
-
xklcOEmq73NQEqmgvduj5axLR5/GRVdQd89G2uMFsqd3wH722Wf94XWHMhCJ
|
1531
|
-
RGK2bbtAZDLmc99z+aDhT+x6/dfMmTWdH3znG5ROL03HUr0kzp/AjbcDikAq
|
1532
|
-
Wrt8TrWn6IgbSC1K3b2PsbzuAQqLrmP79u2u0KypQNeoAL7vxxzH8XMHb0ND
|
1533
|
-
w4Qh2k99RPO//0DlvNlsuL+WabFpAHiJbpLdx3EHOgBwfcVnnR4t7SnO9Qk0
|
1534
|
-
q5Ablt7Lgz/+BZqmZ+uzbdsfGBiIjQkwtI1QuTNQbW3tJVt7uB14bwcfHdnB
|
1535
|
-
xofvoTgaBQTuxXMkuk/gD3YDkHAVn55z+eRcis64QUnZXB7Y8DNuXnzXiNlv
|
1536
|
-
aD+kDMMYsR8akQHTNIWU8rJnoAN7d7DrtefZ+MSjRGfMI/HpPuInd+EnewGI
|
1537
|
-
JySnzrp81unRGRdU3LiUHz76JBU3LhkhOmNSShzHId+WOgSQTCZjlmWFdqIA
|
1538
|
-
e/bsGdcs03ZiH62H/sJPH12PXXAd0r2IXVZFz5E36BkIaDnr0trl09kXUF6x
|
1539
|
-
iOW191BYXM7p9j5Ot+8J1XXnnXeGYEzT1F3XHRsgCIKYZVlmLsCKFStGtMqw
|
1540
|
-
Mvi+z4H3dtD1yXus+e59WJaBn+hBc+MoBUfaFM2nk1y4KKlaupq1teuZWjIT
|
1541
|
-
wzDQdR3DMDAMA9M0s/UOFy+lxLZtw/f9sQE8z5tu27aR24UyhwshROiQ47ou
|
1542
|
-
rutyaN/f2Pv3Lew9fJ7Dxzr4/pqv0xt36e4ZoOt8D6mUy7zFa6m5dR0FRVPx
|
1543
|
-
lUFvby+maWJZFqZpZr9blkVmIR0OY5qm6XnetDEBlFLllmWNaO29e/eS8xy+
|
1544
|
-
7+P7Pm0nPuD4B9soKCxkzTdvoOC6Ms755TglMWZ+bSpzIsWYzhR0XSdQOslk
|
1545
|
-
ksw7hBAIIdA0LfuZ2cbkvs80TaGUKh8TwPf9UsuykFKGIGpqanLLZVPbffNc
|
1546
|
-
vvfQY3heGsjzPDzPy3at3Exqmoau6+i6jmmaGIaB4zg4joNhGKEsZ0xKyZCu
|
1547
|
-
GZcCKMnsRIf3QV3XRwBkYmUzK0JAmSsIguz3fK2t6zqapqFp2og6873Hsiw8
|
1548
|
-
z5s+JkAqlZqaycDlTKO5gsZTbjynvkwGXNedOiaA67pT8gFMBOJqxDIAqVRq
|
1549
|
-
xI+8IYBEIlE4lKoJn4evZiwDkEgkinKfyeZ748aNpuu6pmma2QzkXplKv+yY
|
1550
|
-
lBLTNEkmk86CBQus4QDZDDQ2Nl4/f/5817Isp7S0NDv3T6aNZzUfzXzfRwjh
|
1551
|
-
K6XmCCHOAoNKKWkACCEKqqurpwkhZEtLC42NjZOledKsuroaTdOU67olwACg
|
1552
|
-
CSEGDCGEBdiu6zq+75NMJkNL+v+LJRIJfN8nkUhEgAgQAK5BehzoPT098e7u
|
1553
|
-
bj2VSjFnzpxrKjafSSm5cOEC/f39KUAnrVsTgAkUAYU1NTUPx2KxjUEQTLmW
|
1554
|
-
YvOZpmnxjo6O3x48eHA76S4UB3qEUgohRBQoGLoyKTJJp+nyR97kmA1IwANS
|
1555
|
-
wODQ1auUSmYP9UNjoQBwAIv0DBUMFb6WZpNuRB9wSYsfUEr5kOdfSiGETrr1
|
1556
|
-
DUCQhrhWJkj394A0gKeUCjVo3r9Zv0r2P3yyQqPd16MPAAAAAElFTkSuQmCC
|
1557
|
-
" class="icon"/>
|
1558
|
-
|
1559
|
-
<div class="content"><p>Please excuse my lack of creativity for this example. I tried different ideas but scrapped most of them because writing documentation is hard and mostly boring. (Although I did have fun reading the wacky names produced by the <code class="code">generate_name()</code> method!)</p>
|
1560
|
-
|
1561
|
-
|
1562
|
-
<p>Instead, I just <em>really</em> want to get the first release of Gerbil out the door and continue work on my other programming projects, but I cannot do so until I’ve written some documentation. Ah, the dilemma of an open-source developer who cares about documentation!</p>
|
1563
|
-
|
1564
|
-
|
1565
|
-
<p>On the other hand, if you have ideas on how to improve this example, please speak up in the <a href="http://rubyforge.org/mailman/listinfo/gerbil-talk">project mailing list</a>. Thanks!</p></div>
|
1566
|
-
</div>
|
1567
|
-
<div class="example">
|
1568
|
-
<p class="title"><a class="toc" id="HelloWorld.spec" href="#a-606445138">Example 1</a>. HelloWorld format specification file</p>
|
1569
|
-
<div class="content"><pre class="code" lang="rhtml">
|
1570
|
-
desc: A illustrative format.
|
1539
|
+
<p><div class="example">
|
1540
|
+
<p class="title"><a class="toc" id="HelloWorld.spec" href="#a-606287038">Example 1</a>. HelloWorld format specification file</p>
|
1541
|
+
<div class="content"><pre class="code" lang="rhtml">desc: A illustrative format.
|
1571
1542
|
|
1572
1543
|
code: |
|
1573
1544
|
# Returns a random, but pronounceable, name.
|
@@ -1633,13 +1604,10 @@ output: |
|
|
1633
1604
|
Welcome to the "<span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@spec</span>[<span style="color:#A60">:name</span>] <span style="color:black">%></span></span>" format.
|
1634
1605
|
<span style="color:#070"><div</span> <span style="color:#007">style</span>=<span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#d70; font-weight:bold">$style</span> <span style="color:black">%></span></span><span style="color:#710">"</span></span><span style="color:#070">></span><span style="background: #eee"><span style="color:black"><%=</span> <span style="color:#33B">@content</span> <span style="color:black">%></span></span><span style="color:#070"></div></span>
|
1635
1606
|
That's all folks!
|
1636
|
-
|
1637
1607
|
</pre></div>
|
1638
|
-
</div>
|
1639
|
-
<
|
1640
|
-
<
|
1641
|
-
<div class="content"><pre class="code" lang="rhtml">
|
1642
|
-
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#d70; font-weight:bold">$style</span> = <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">border-left: thick solid salmon; padding-left: 1em;</span><span style="color:#710">"</span></span> <span style="color:black">%></span></span>
|
1608
|
+
</div><div class="example">
|
1609
|
+
<p class="title"><a class="toc" id="HelloWorld.input" href="#a-606294048">Example 2</a>. Input document for HelloWorld format</p>
|
1610
|
+
<div class="content"><pre class="code" lang="rhtml"><span style="background: #eee"><span style="color:black"><%</span> <span style="color:#d70; font-weight:bold">$style</span> = <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">border-left: thick solid salmon; padding-left: 1em;</span><span style="color:#710">"</span></span> <span style="color:black">%></span></span>
|
1643
1611
|
<span style="background: #eee"><span style="color:black"><%</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Pretentious</span><span style="color:#710">"</span></span> <span style="color:#080; font-weight:bold">do</span> <span style="color:black">%></span></span>
|
1644
1612
|
<span style="color:#070"><big></span>I'm<span style="color:#070"></big></span> the very first node, oh _yes_ I am! *sneer*
|
1645
1613
|
|
@@ -1675,301 +1643,299 @@ output: |
|
|
1675
1643
|
_Whoo I'm wild!_ ;-)
|
1676
1644
|
<span style="background: #eee"><span style="color:black"><%</span> <span style="color:#080; font-weight:bold">end</span> <span style="color:black">%></span></span>
|
1677
1645
|
|
1678
|
-
<span style="background: #eee"><span style="color:black"><%=</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Independent (no block, no parents, I am _free_!)</span><span style="color:#710">"</span></span> <span style="color:black">%></span></span>
|
1679
|
-
</
|
1680
|
-
</
|
1681
|
-
<div class="example">
|
1682
|
-
<p class="title"><a class="toc" id="HelloWorld.output" href="#a-606461008">Example 3</a>. Output of HelloWorld format</p>
|
1646
|
+
<span style="background: #eee"><span style="color:black"><%=</span> hello <span style="background-color:#fff0f0"><span style="color:#710">"</span><span style="color:#D20">Independent (no block, no parents, I am _free_!)</span><span style="color:#710">"</span></span> <span style="color:black">%></span></span></pre></div>
|
1647
|
+
</div><div class="example">
|
1648
|
+
<p class="title"><a class="toc" id="HelloWorld.output" href="#a-606300938">Example 3</a>. Output of HelloWorld format</p>
|
1683
1649
|
<div class="content">Welcome to the “HelloWorld” format.
|
1684
|
-
<div style="border-left: thick solid salmon; padding-left: 1em;"><h1>hello #1: “
|
1685
|
-
My name is “
|
1650
|
+
<div style="border-left: thick solid salmon; padding-left: 1em;"><h1>hello #1: “riju”</h1>
|
1651
|
+
My name is “riju” and these are my properties:
|
1686
1652
|
<table border="1">
|
1687
|
-
<tr>
|
1688
|
-
<th>Property</th>
|
1689
|
-
<th>Value</th>
|
1690
|
-
</tr>
|
1691
|
-
<tr>
|
1692
|
-
<td>args</td>
|
1693
|
-
<td>[“Pretentious”]</td>
|
1694
|
-
</tr>
|
1695
|
-
<tr>
|
1696
|
-
<td>index</td>
|
1697
|
-
<td>“1”</td>
|
1698
|
-
</tr>
|
1699
|
-
<tr>
|
1700
|
-
<td>number</td>
|
1701
|
-
<td>1</td>
|
1702
|
-
</tr>
|
1703
|
-
<tr>
|
1704
|
-
<td>trace</td>
|
1705
|
-
<td><ul><li>INPUT:1</li><li>bin/gerbil:
|
1706
|
-
</tr>
|
1707
|
-
<tr>
|
1708
|
-
<td>content</td>
|
1709
|
-
<td> <big>I’m</big> the very first node, oh <em>yes</em> I am! <strong>sneer</strong>
|
1710
|
-
|
1711
|
-
<h1>hello #1.1: “
|
1712
|
-
My name is “
|
1653
|
+
<tr>
|
1654
|
+
<th>Property</th>
|
1655
|
+
<th>Value</th>
|
1656
|
+
</tr>
|
1657
|
+
<tr>
|
1658
|
+
<td>args</td>
|
1659
|
+
<td>[“Pretentious”]</td>
|
1660
|
+
</tr>
|
1661
|
+
<tr>
|
1662
|
+
<td>index</td>
|
1663
|
+
<td>“1”</td>
|
1664
|
+
</tr>
|
1665
|
+
<tr>
|
1666
|
+
<td>number</td>
|
1667
|
+
<td>1</td>
|
1668
|
+
</tr>
|
1669
|
+
<tr>
|
1670
|
+
<td>trace</td>
|
1671
|
+
<td><ul><li>INPUT:1</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1672
|
+
</tr>
|
1673
|
+
<tr>
|
1674
|
+
<td>content</td>
|
1675
|
+
<td> <big>I’m</big> the very first node, oh <em>yes</em> I am! <strong>sneer</strong>
|
1676
|
+
|
1677
|
+
<h1>hello #1.1: “mokej”</h1>
|
1678
|
+
My name is “mokej” and these are my properties:
|
1713
1679
|
<table border="1">
|
1714
|
-
<tr>
|
1715
|
-
<th>Property</th>
|
1716
|
-
<th>Value</th>
|
1717
|
-
</tr>
|
1718
|
-
<tr>
|
1719
|
-
<td>args</td>
|
1720
|
-
<td>[“Bashful”]</td>
|
1721
|
-
</tr>
|
1722
|
-
<tr>
|
1723
|
-
<td>index</td>
|
1724
|
-
<td>“1.1”</td>
|
1725
|
-
</tr>
|
1726
|
-
<tr>
|
1727
|
-
<td>number</td>
|
1728
|
-
<td>2</td>
|
1729
|
-
</tr>
|
1730
|
-
<tr>
|
1731
|
-
<td>trace</td>
|
1732
|
-
<td><ul><li>INPUT:3</li><li>bin/gerbil:
|
1733
|
-
</tr>
|
1734
|
-
<tr>
|
1735
|
-
<td>content</td>
|
1736
|
-
<td> Hi, I… <strong>hide</strong>
|
1737
|
-
|
1738
|
-
<h1>hello #1.1.1: “
|
1739
|
-
My name is “
|
1680
|
+
<tr>
|
1681
|
+
<th>Property</th>
|
1682
|
+
<th>Value</th>
|
1683
|
+
</tr>
|
1684
|
+
<tr>
|
1685
|
+
<td>args</td>
|
1686
|
+
<td>[“Bashful”]</td>
|
1687
|
+
</tr>
|
1688
|
+
<tr>
|
1689
|
+
<td>index</td>
|
1690
|
+
<td>“1.1”</td>
|
1691
|
+
</tr>
|
1692
|
+
<tr>
|
1693
|
+
<td>number</td>
|
1694
|
+
<td>2</td>
|
1695
|
+
</tr>
|
1696
|
+
<tr>
|
1697
|
+
<td>trace</td>
|
1698
|
+
<td><ul><li>INPUT:3</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1699
|
+
</tr>
|
1700
|
+
<tr>
|
1701
|
+
<td>content</td>
|
1702
|
+
<td> Hi, I… <strong>hide</strong>
|
1703
|
+
|
1704
|
+
<h1>hello #1.1.1: “fapusod”</h1>
|
1705
|
+
My name is “fapusod” and these are my properties:
|
1740
1706
|
<table border="1">
|
1741
|
-
<tr>
|
1742
|
-
<th>Property</th>
|
1743
|
-
<th>Value</th>
|
1744
|
-
</tr>
|
1745
|
-
<tr>
|
1746
|
-
<td>args</td>
|
1747
|
-
<td>[“Hopeful”]</td>
|
1748
|
-
</tr>
|
1749
|
-
<tr>
|
1750
|
-
<td>index</td>
|
1751
|
-
<td>“1.1.1”</td>
|
1752
|
-
</tr>
|
1753
|
-
<tr>
|
1754
|
-
<td>number</td>
|
1755
|
-
<td>3</td>
|
1756
|
-
</tr>
|
1757
|
-
<tr>
|
1758
|
-
<td>trace</td>
|
1759
|
-
<td><ul><li>INPUT:5</li><li>bin/gerbil:
|
1760
|
-
</tr>
|
1761
|
-
<tr>
|
1762
|
-
<td>content</td>
|
1763
|
-
<td> <strong>sigh</strong>
|
1764
|
-
|
1765
|
-
<h1>hello #1.1.1.1: “
|
1766
|
-
My name is “
|
1707
|
+
<tr>
|
1708
|
+
<th>Property</th>
|
1709
|
+
<th>Value</th>
|
1710
|
+
</tr>
|
1711
|
+
<tr>
|
1712
|
+
<td>args</td>
|
1713
|
+
<td>[“Hopeful”]</td>
|
1714
|
+
</tr>
|
1715
|
+
<tr>
|
1716
|
+
<td>index</td>
|
1717
|
+
<td>“1.1.1”</td>
|
1718
|
+
</tr>
|
1719
|
+
<tr>
|
1720
|
+
<td>number</td>
|
1721
|
+
<td>3</td>
|
1722
|
+
</tr>
|
1723
|
+
<tr>
|
1724
|
+
<td>trace</td>
|
1725
|
+
<td><ul><li>INPUT:5</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:3</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1726
|
+
</tr>
|
1727
|
+
<tr>
|
1728
|
+
<td>content</td>
|
1729
|
+
<td> <strong>sigh</strong>
|
1730
|
+
|
1731
|
+
<h1>hello #1.1.1.1: “genebi”</h1>
|
1732
|
+
My name is “genebi” and these are my properties:
|
1767
1733
|
<table border="1">
|
1768
|
-
<tr>
|
1769
|
-
<th>Property</th>
|
1770
|
-
<th>Value</th>
|
1771
|
-
</tr>
|
1772
|
-
<tr>
|
1773
|
-
<td>args</td>
|
1774
|
-
<td>[“Confused”]</td>
|
1775
|
-
</tr>
|
1776
|
-
<tr>
|
1777
|
-
<td>index</td>
|
1778
|
-
<td>“1.1.1.1”</td>
|
1779
|
-
</tr>
|
1780
|
-
<tr>
|
1781
|
-
<td>number</td>
|
1782
|
-
<td>4</td>
|
1783
|
-
</tr>
|
1784
|
-
<tr>
|
1785
|
-
<td>trace</td>
|
1786
|
-
<td><ul><li>INPUT:7</li><li>bin/gerbil:
|
1787
|
-
</tr>
|
1788
|
-
<tr>
|
1789
|
-
<td>content</td>
|
1790
|
-
<td> Huh?
|
1734
|
+
<tr>
|
1735
|
+
<th>Property</th>
|
1736
|
+
<th>Value</th>
|
1737
|
+
</tr>
|
1738
|
+
<tr>
|
1739
|
+
<td>args</td>
|
1740
|
+
<td>[“Confused”]</td>
|
1741
|
+
</tr>
|
1742
|
+
<tr>
|
1743
|
+
<td>index</td>
|
1744
|
+
<td>“1.1.1.1”</td>
|
1745
|
+
</tr>
|
1746
|
+
<tr>
|
1747
|
+
<td>number</td>
|
1748
|
+
<td>4</td>
|
1749
|
+
</tr>
|
1750
|
+
<tr>
|
1751
|
+
<td>trace</td>
|
1752
|
+
<td><ul><li>INPUT:7</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:5</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:3</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1753
|
+
</tr>
|
1754
|
+
<tr>
|
1755
|
+
<td>content</td>
|
1756
|
+
<td> Huh?
|
1791
1757
|
</td>
|
1792
|
-
</tr>
|
1758
|
+
</tr>
|
1793
1759
|
</table></td>
|
1794
|
-
</tr>
|
1760
|
+
</tr>
|
1795
1761
|
</table>
|
1796
|
-
<h1>hello #1.1.2: “
|
1797
|
-
My name is “
|
1762
|
+
<h1>hello #1.1.2: “yel”</h1>
|
1763
|
+
My name is “yel” and these are my properties:
|
1798
1764
|
<table border="1">
|
1799
|
-
<tr>
|
1800
|
-
<th>Property</th>
|
1801
|
-
<th>Value</th>
|
1802
|
-
</tr>
|
1803
|
-
<tr>
|
1804
|
-
<td>args</td>
|
1805
|
-
<td>[“Raving”]</td>
|
1806
|
-
</tr>
|
1807
|
-
<tr>
|
1808
|
-
<td>index</td>
|
1809
|
-
<td>“1.1.2”</td>
|
1810
|
-
</tr>
|
1811
|
-
<tr>
|
1812
|
-
<td>number</td>
|
1813
|
-
<td>5</td>
|
1814
|
-
</tr>
|
1815
|
-
<tr>
|
1816
|
-
<td>trace</td>
|
1817
|
-
<td><ul><li>INPUT:9</li><li>bin/gerbil:
|
1818
|
-
</tr>
|
1819
|
-
<tr>
|
1820
|
-
<td>content</td>
|
1821
|
-
<td> Oh it’s <strong>on</strong> now! You’re going <strong>down</strong>!
|
1765
|
+
<tr>
|
1766
|
+
<th>Property</th>
|
1767
|
+
<th>Value</th>
|
1768
|
+
</tr>
|
1769
|
+
<tr>
|
1770
|
+
<td>args</td>
|
1771
|
+
<td>[“Raving”]</td>
|
1772
|
+
</tr>
|
1773
|
+
<tr>
|
1774
|
+
<td>index</td>
|
1775
|
+
<td>“1.1.2”</td>
|
1776
|
+
</tr>
|
1777
|
+
<tr>
|
1778
|
+
<td>number</td>
|
1779
|
+
<td>5</td>
|
1780
|
+
</tr>
|
1781
|
+
<tr>
|
1782
|
+
<td>trace</td>
|
1783
|
+
<td><ul><li>INPUT:9</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:3</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1784
|
+
</tr>
|
1785
|
+
<tr>
|
1786
|
+
<td>content</td>
|
1787
|
+
<td> Oh it’s <strong>on</strong> now! You’re going <strong>down</strong>!
|
1822
1788
|
</td>
|
1823
|
-
</tr>
|
1789
|
+
</tr>
|
1824
1790
|
</table></td>
|
1825
|
-
</tr>
|
1791
|
+
</tr>
|
1826
1792
|
</table>
|
1827
|
-
<h1>hello #1.2: “
|
1828
|
-
My name is “
|
1793
|
+
<h1>hello #1.2: “fadi”</h1>
|
1794
|
+
My name is “fadi” and these are my properties:
|
1829
1795
|
<table border="1">
|
1830
|
-
<tr>
|
1831
|
-
<th>Property</th>
|
1832
|
-
<th>Value</th>
|
1833
|
-
</tr>
|
1834
|
-
<tr>
|
1835
|
-
<td>args</td>
|
1836
|
-
<td>[“Sleepy”]</td>
|
1837
|
-
</tr>
|
1838
|
-
<tr>
|
1839
|
-
<td>index</td>
|
1840
|
-
<td>“1.2”</td>
|
1841
|
-
</tr>
|
1842
|
-
<tr>
|
1843
|
-
<td>number</td>
|
1844
|
-
<td>6</td>
|
1845
|
-
</tr>
|
1846
|
-
<tr>
|
1847
|
-
<td>trace</td>
|
1848
|
-
<td><ul><li>INPUT:11</li><li>bin/gerbil:
|
1849
|
-
</tr>
|
1850
|
-
<tr>
|
1851
|
-
<td>content</td>
|
1852
|
-
<td> <strong>yawn</strong> Just five more minutes…
|
1853
|
-
|
1854
|
-
<h1>hello #1.2.1: “
|
1855
|
-
My name is “
|
1796
|
+
<tr>
|
1797
|
+
<th>Property</th>
|
1798
|
+
<th>Value</th>
|
1799
|
+
</tr>
|
1800
|
+
<tr>
|
1801
|
+
<td>args</td>
|
1802
|
+
<td>[“Sleepy”]</td>
|
1803
|
+
</tr>
|
1804
|
+
<tr>
|
1805
|
+
<td>index</td>
|
1806
|
+
<td>“1.2”</td>
|
1807
|
+
</tr>
|
1808
|
+
<tr>
|
1809
|
+
<td>number</td>
|
1810
|
+
<td>6</td>
|
1811
|
+
</tr>
|
1812
|
+
<tr>
|
1813
|
+
<td>trace</td>
|
1814
|
+
<td><ul><li>INPUT:11</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1815
|
+
</tr>
|
1816
|
+
<tr>
|
1817
|
+
<td>content</td>
|
1818
|
+
<td> <strong>yawn</strong> Just five more minutes…
|
1819
|
+
|
1820
|
+
<h1>hello #1.2.1: “bibom”</h1>
|
1821
|
+
My name is “bibom” and these are my properties:
|
1856
1822
|
<table border="1">
|
1857
|
-
<tr>
|
1858
|
-
<th>Property</th>
|
1859
|
-
<th>Value</th>
|
1860
|
-
</tr>
|
1861
|
-
<tr>
|
1862
|
-
<td>args</td>
|
1863
|
-
<td>[“Peaceful”]</td>
|
1864
|
-
</tr>
|
1865
|
-
<tr>
|
1866
|
-
<td>index</td>
|
1867
|
-
<td>“1.2.1”</td>
|
1868
|
-
</tr>
|
1869
|
-
<tr>
|
1870
|
-
<td>number</td>
|
1871
|
-
<td>7</td>
|
1872
|
-
</tr>
|
1873
|
-
<tr>
|
1874
|
-
<td>trace</td>
|
1875
|
-
<td><ul><li>INPUT:13</li><li>bin/gerbil:
|
1876
|
-
</tr>
|
1877
|
-
<tr>
|
1878
|
-
<td>content</td>
|
1879
|
-
<td> So <em>be</em> happy my friend, <strong>happy</strong>!
|
1880
|
-
|
1881
|
-
<h1>hello #1.2.1.1: “
|
1882
|
-
My name is “
|
1823
|
+
<tr>
|
1824
|
+
<th>Property</th>
|
1825
|
+
<th>Value</th>
|
1826
|
+
</tr>
|
1827
|
+
<tr>
|
1828
|
+
<td>args</td>
|
1829
|
+
<td>[“Peaceful”]</td>
|
1830
|
+
</tr>
|
1831
|
+
<tr>
|
1832
|
+
<td>index</td>
|
1833
|
+
<td>“1.2.1”</td>
|
1834
|
+
</tr>
|
1835
|
+
<tr>
|
1836
|
+
<td>number</td>
|
1837
|
+
<td>7</td>
|
1838
|
+
</tr>
|
1839
|
+
<tr>
|
1840
|
+
<td>trace</td>
|
1841
|
+
<td><ul><li>INPUT:13</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:11</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1842
|
+
</tr>
|
1843
|
+
<tr>
|
1844
|
+
<td>content</td>
|
1845
|
+
<td> So <em>be</em> happy my friend, <strong>happy</strong>!
|
1846
|
+
|
1847
|
+
<h1>hello #1.2.1.1: “gehi”</h1>
|
1848
|
+
My name is “gehi” and these are my properties:
|
1883
1849
|
<table border="1">
|
1884
|
-
<tr>
|
1885
|
-
<th>Property</th>
|
1886
|
-
<th>Value</th>
|
1887
|
-
</tr>
|
1888
|
-
<tr>
|
1889
|
-
<td>args</td>
|
1890
|
-
<td>[“Lonely (as you can see, I have no block)”]</td>
|
1891
|
-
</tr>
|
1892
|
-
<tr>
|
1893
|
-
<td>index</td>
|
1894
|
-
<td>“1.2.1.1”</td>
|
1895
|
-
</tr>
|
1896
|
-
<tr>
|
1897
|
-
<td>number</td>
|
1898
|
-
<td>8</td>
|
1899
|
-
</tr>
|
1900
|
-
<tr>
|
1901
|
-
<td>trace</td>
|
1902
|
-
<td><ul><li>INPUT:15</li><li>bin/gerbil:
|
1903
|
-
</tr>
|
1904
|
-
<tr>
|
1905
|
-
<td>content</td>
|
1906
|
-
<td></td>
|
1907
|
-
</tr>
|
1850
|
+
<tr>
|
1851
|
+
<th>Property</th>
|
1852
|
+
<th>Value</th>
|
1853
|
+
</tr>
|
1854
|
+
<tr>
|
1855
|
+
<td>args</td>
|
1856
|
+
<td>[“Lonely (as you can see, I have no block)”]</td>
|
1857
|
+
</tr>
|
1858
|
+
<tr>
|
1859
|
+
<td>index</td>
|
1860
|
+
<td>“1.2.1.1”</td>
|
1861
|
+
</tr>
|
1862
|
+
<tr>
|
1863
|
+
<td>number</td>
|
1864
|
+
<td>8</td>
|
1865
|
+
</tr>
|
1866
|
+
<tr>
|
1867
|
+
<td>trace</td>
|
1868
|
+
<td><ul><li>INPUT:15</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:13</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:11</li><li>bin/gerbil:83:in `content_from_block’</li><li>bin/gerbil:255:in `hello’</li><li>INPUT:1</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1869
|
+
</tr>
|
1870
|
+
<tr>
|
1871
|
+
<td>content</td>
|
1872
|
+
<td></td>
|
1873
|
+
</tr>
|
1908
1874
|
</table>
|
1909
1875
|
</td>
|
1910
|
-
</tr>
|
1876
|
+
</tr>
|
1911
1877
|
</table></td>
|
1912
|
-
</tr>
|
1878
|
+
</tr>
|
1913
1879
|
</table></td>
|
1914
|
-
</tr>
|
1880
|
+
</tr>
|
1915
1881
|
</table>
|
1916
|
-
<h1>hello #2: “
|
1917
|
-
My name is “
|
1882
|
+
<h1>hello #2: “tusulo”</h1>
|
1883
|
+
My name is “tusulo” and these are my properties:
|
1918
1884
|
<table border="1">
|
1919
|
-
<tr>
|
1920
|
-
<th>Property</th>
|
1921
|
-
<th>Value</th>
|
1922
|
-
</tr>
|
1923
|
-
<tr>
|
1924
|
-
<td>args</td>
|
1925
|
-
<td>[“Snappy”]</td>
|
1926
|
-
</tr>
|
1927
|
-
<tr>
|
1928
|
-
<td>index</td>
|
1929
|
-
<td>“2”</td>
|
1930
|
-
</tr>
|
1931
|
-
<tr>
|
1932
|
-
<td>number</td>
|
1933
|
-
<td>9</td>
|
1934
|
-
</tr>
|
1935
|
-
<tr>
|
1936
|
-
<td>trace</td>
|
1937
|
-
<td><ul><li>INPUT:17</li><li>bin/gerbil:
|
1938
|
-
</tr>
|
1939
|
-
<tr>
|
1940
|
-
<td>content</td>
|
1941
|
-
<td> Zip! Zap! Wake up, you sap!
|
1942
|
-
<em>Whoo I’m wild!</em> ;-)
|
1885
|
+
<tr>
|
1886
|
+
<th>Property</th>
|
1887
|
+
<th>Value</th>
|
1888
|
+
</tr>
|
1889
|
+
<tr>
|
1890
|
+
<td>args</td>
|
1891
|
+
<td>[“Snappy”]</td>
|
1892
|
+
</tr>
|
1893
|
+
<tr>
|
1894
|
+
<td>index</td>
|
1895
|
+
<td>“2”</td>
|
1896
|
+
</tr>
|
1897
|
+
<tr>
|
1898
|
+
<td>number</td>
|
1899
|
+
<td>9</td>
|
1900
|
+
</tr>
|
1901
|
+
<tr>
|
1902
|
+
<td>trace</td>
|
1903
|
+
<td><ul><li>INPUT:17</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1904
|
+
</tr>
|
1905
|
+
<tr>
|
1906
|
+
<td>content</td>
|
1907
|
+
<td> Zip! Zap! Wake up, you sap!
|
1908
|
+
<em>Whoo I’m wild!</em> ;-)
|
1943
1909
|
</td>
|
1944
|
-
</tr>
|
1910
|
+
</tr>
|
1945
1911
|
</table>
|
1946
|
-
<h1>hello #3: “
|
1947
|
-
My name is “
|
1912
|
+
<h1>hello #3: “retunuj”</h1>
|
1913
|
+
My name is “retunuj” and these are my properties:
|
1948
1914
|
<table border="1">
|
1949
|
-
<tr>
|
1950
|
-
<th>Property</th>
|
1951
|
-
<th>Value</th>
|
1952
|
-
</tr>
|
1953
|
-
<tr>
|
1954
|
-
<td>args</td>
|
1955
|
-
<td>[“Independent (no block, no parents, I am <em>free</em>!)”]</td>
|
1956
|
-
</tr>
|
1957
|
-
<tr>
|
1958
|
-
<td>index</td>
|
1959
|
-
<td>“3”</td>
|
1960
|
-
</tr>
|
1961
|
-
<tr>
|
1962
|
-
<td>number</td>
|
1963
|
-
<td>10</td>
|
1964
|
-
</tr>
|
1965
|
-
<tr>
|
1966
|
-
<td>trace</td>
|
1967
|
-
<td><ul><li>INPUT:20</li><li>bin/gerbil:
|
1968
|
-
</tr>
|
1969
|
-
<tr>
|
1970
|
-
<td>content</td>
|
1971
|
-
<td></td>
|
1972
|
-
</tr>
|
1915
|
+
<tr>
|
1916
|
+
<th>Property</th>
|
1917
|
+
<th>Value</th>
|
1918
|
+
</tr>
|
1919
|
+
<tr>
|
1920
|
+
<td>args</td>
|
1921
|
+
<td>[“Independent (no block, no parents, I am <em>free</em>!)”]</td>
|
1922
|
+
</tr>
|
1923
|
+
<tr>
|
1924
|
+
<td>index</td>
|
1925
|
+
<td>“3”</td>
|
1926
|
+
</tr>
|
1927
|
+
<tr>
|
1928
|
+
<td>number</td>
|
1929
|
+
<td>10</td>
|
1930
|
+
</tr>
|
1931
|
+
<tr>
|
1932
|
+
<td>trace</td>
|
1933
|
+
<td><ul><li>INPUT:20</li><li>bin/gerbil:275</li><li>bin/gerbil:275:in `instance_eval’</li><li>bin/gerbil:275</li></ul></td>
|
1934
|
+
</tr>
|
1935
|
+
<tr>
|
1936
|
+
<td>content</td>
|
1937
|
+
<td></td>
|
1938
|
+
</tr>
|
1973
1939
|
</table></div>
|
1974
1940
|
That’s all folks!</div>
|
1975
1941
|
</div></p></div>
|
@@ -1979,91 +1945,119 @@ That’s all folks!</div>
|
|
1979
1945
|
<div class="chapter">
|
1980
1946
|
<h1 class="title">
|
1981
1947
|
Chapter
|
1982
|
-
<a class="toc" id="Usage" href="#a-
|
1948
|
+
<a class="toc" id="Usage" href="#a-606308348">4</a>
|
1983
1949
|
|
1984
1950
|
<br/>
|
1985
1951
|
|
1986
1952
|
<big>Usage</big>
|
1987
1953
|
</h1>
|
1988
1954
|
|
1989
|
-
<div class="content"><
|
1990
|
-
Gerbil is an extensible document generator based on eRuby.
|
1955
|
+
<div class="content"><p>Gerbil is an extensible document generator based on eRuby.</p>
|
1991
1956
|
|
1992
|
-
* STDIN will be read if an input file is not specified.
|
1993
1957
|
|
1994
|
-
|
1995
|
-
|
1958
|
+
<ul>
|
1959
|
+
<li>STDIN will be read if no input files are specified.</li>
|
1960
|
+
</ul>
|
1996
1961
|
|
1997
|
-
Otherwise, the final output document will be printed to STDOUT.
|
1998
1962
|
|
1999
|
-
|
1963
|
+
<ul>
|
1964
|
+
<li>If an error occurs, the input document will be printed to STDOUT
|
1965
|
+
so you can investigate line numbers in the error’s stack trace.
|
1966
|
+
Otherwise, the final output document will be printed to STDOUT.</li>
|
1967
|
+
</ul>
|
2000
1968
|
|
2001
|
-
Option:
|
2002
|
-
-h, --help show usage information
|
2003
|
-
-v, --version show version information
|
2004
1969
|
|
2005
|
-
|
2006
|
-
|
2007
|
-
|
2008
|
-
|
2009
|
-
|
2010
|
-
</pre>
|
1970
|
+
<ul>
|
1971
|
+
<li>The <tt>--unindent</tt> option assumes that all beginning (<% ... do %>)
|
1972
|
+
and ending (<% end %>) eRuby directives appear one per line
|
1973
|
+
(with nothing else on the line, except whitespace) in the input.</li>
|
1974
|
+
</ul>
|
2011
1975
|
|
2012
1976
|
|
2013
|
-
<p>
|
1977
|
+
<p><b>Usage:</b> gerbil [Option…] Format|SpecFile [InputFile…]</p>
|
2014
1978
|
|
2015
1979
|
|
2016
|
-
|
2017
|
-
|
2018
|
-
|
2019
|
-
|
2020
|
-
|
1980
|
+
<b>Option:</b>
|
1981
|
+
<table border="1">
|
1982
|
+
<tr>
|
1983
|
+
<td> <tt>-h</tt>, <tt>--help</tt> </td>
|
1984
|
+
<td> show usage information </td>
|
1985
|
+
</tr>
|
1986
|
+
<tr>
|
1987
|
+
<td> <tt>-v</tt>, <tt>--version</tt> </td>
|
1988
|
+
<td> show version information </td>
|
1989
|
+
</tr>
|
1990
|
+
<tr>
|
1991
|
+
<td> <tt>-u</tt>, <tt>--unindent</tt> </td>
|
1992
|
+
<td> unindent node content </td>
|
1993
|
+
</tr>
|
1994
|
+
</table>
|
2021
1995
|
|
2022
1996
|
|
2023
|
-
<pre><%# include <em>path</em> %></pre>
|
2024
1997
|
|
2025
1998
|
|
2026
|
-
|
1999
|
+
<b>Format:</b>
|
2000
|
+
<table border="1">
|
2001
|
+
<tr>
|
2002
|
+
<td> latex </td>
|
2003
|
+
<td> high-quality typesetting </td>
|
2004
|
+
</tr>
|
2005
|
+
<tr>
|
2006
|
+
<td> html </td>
|
2007
|
+
<td> web page for the Internet </td>
|
2008
|
+
</tr>
|
2009
|
+
<tr>
|
2010
|
+
<td> man </td>
|
2011
|
+
<td> manual page for UNIX </td>
|
2012
|
+
</tr>
|
2013
|
+
<tr>
|
2014
|
+
<td> text </td>
|
2015
|
+
<td> plain text, nothing fancy </td>
|
2016
|
+
</tr>
|
2017
|
+
</table>
|
2027
2018
|
|
2028
2019
|
|
2029
|
-
|
2030
|
-
|
2031
|
-
<
|
2020
|
+
|
2021
|
+
|
2022
|
+
<p>Gerbil requires its <em>first</em> command-line argument to be either (1) the name of a predefined format or (2) the path to a <a class="xref" href="#SpecFile">format specification file</a>. Predefined formats are simply short-hand names of format specification files located in the <tt>fmt/</tt> subdirectory of the Gerbil installation directory (see <a class="xref" href="#Manifest">Section 2.3: <em>Manifest</em></a>).</p>
|
2023
|
+
|
2024
|
+
|
2025
|
+
<p><div class="section">
|
2032
2026
|
<h2 class="title">
|
2033
|
-
<a class="toc" id="
|
2027
|
+
<a class="toc" id="include" href="#a-606315728">4.1</a> The <strong>include</strong> directive
|
2034
2028
|
</h2>
|
2035
|
-
<div class="content"><p>The <
|
2029
|
+
<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>
|
2036
2030
|
|
2037
2031
|
|
2038
|
-
<
|
2032
|
+
<pre><<span># include <em>path</em> #</span>></pre>
|
2039
2033
|
|
2040
2034
|
|
2041
|
-
<
|
2035
|
+
<p>Here, <em>path</em> is the path of the file whose content you wish to insert into the input document.</p>
|
2042
2036
|
|
2043
2037
|
|
2044
|
-
<p>and
|
2038
|
+
<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>
|
2045
2039
|
</div></p></div>
|
2046
2040
|
</div>
|
2047
2041
|
<div class="part">
|
2048
2042
|
<h1 class="title">
|
2049
2043
|
Part
|
2050
|
-
<a class="toc" id="Formats" href="#a-
|
2044
|
+
<a class="toc" id="Formats" href="#a-606319258">5</a>
|
2051
2045
|
|
2052
2046
|
<br/>
|
2053
2047
|
|
2054
2048
|
<big>Formats</big>
|
2055
2049
|
</h1>
|
2056
2050
|
|
2057
|
-
<div class="content"><p>This section describes the default formats provided along with Gerbil. The format specification files (see <a class="xref" href="#SpecFile">Section 3.2: <em>Format specification file</em></a>) for these formats can be found in the <tt>
|
2051
|
+
<div class="content"><p>This section describes the default formats provided along with Gerbil. The format specification files (see <a class="xref" href="#SpecFile">Section 3.2: <em>Format specification file</em></a>) for these formats can be found in the <tt>fmt/</tt> directory of the Gerbil installation directory (see <a class="xref" href="#Manifest">Section 2.3: <em>Manifest</em></a>).</p>
|
2058
2052
|
|
2059
2053
|
|
2060
|
-
<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
|
2054
|
+
<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">contact the author</a>.</p>
|
2061
2055
|
|
2062
2056
|
|
2063
2057
|
<p><div class="chapter">
|
2064
2058
|
<h1 class="title">
|
2065
2059
|
Chapter
|
2066
|
-
<a class="toc" id="html" href="#a-
|
2060
|
+
<a class="toc" id="html" href="#a-606328418">5.1</a>
|
2067
2061
|
|
2068
2062
|
<br/>
|
2069
2063
|
|
@@ -2081,9 +2075,9 @@ Format:
|
|
2081
2075
|
|
2082
2076
|
<p><div class="section">
|
2083
2077
|
<h3 class="title">
|
2084
|
-
<a class="toc" id="Text-to-HTML-conversion" href="#a-
|
2078
|
+
<a class="toc" id="Text-to-HTML-conversion" href="#a-606330638">5.1.1</a> Text to HTML conversion
|
2085
2079
|
</h3>
|
2086
|
-
<div class="content"><p>Inside the <tt>
|
2080
|
+
<div class="content"><p>Inside the <tt>fmt/</tt> subdirectory of the Gerbil installation directory (see <a class="xref" href="#Manifest">Section 2.3: <em>Manifest</em></a>), you will see a <tt>html.rb</tt> file. This file defines a <code class="code"><span style="color:#036; font-weight:bold">String</span>.to_html</code> method which is used to transform text in an input document into HTML.</p>
|
2087
2081
|
|
2088
2082
|
|
2089
2083
|
<p>The default implementation of the <code class="code"><span style="color:#036; font-weight:bold">String</span>.to_html</code> method is based on the <a href="http://whytheluckystiff.net/ruby/redcloth/">Textile</a> markup system. If you do not like Textile or wish to use a different markup system for text in your documents, then simply edit the <tt>html.rb</tt> file and adjust the source code of the default <code class="code"><span style="color:#036; font-weight:bold">String</span>.to_html</code> method accordingly.</p>
|
@@ -2106,7 +2100,7 @@ Format:
|
|
2106
2100
|
|
2107
2101
|
<p><div class="section">
|
2108
2102
|
<h4 class="title">
|
2109
|
-
<a class="toc" id="Syntax-coloring-for-source-code" href="#a-
|
2103
|
+
<a class="toc" id="Syntax-coloring-for-source-code" href="#a-606335428">5.1.1.1</a> Syntax coloring for source code
|
2110
2104
|
</h4>
|
2111
2105
|
<div class="content"><p>Syntax coloring is <em>automatically added</em> to source code found inside the <strong><code></strong> and <strong></code></strong> HTML tags. Note that in Textile, any text enclosed within a pair of at-signs (@ and @) is also considered to be source code.</p>
|
2112
2106
|
|
@@ -2124,7 +2118,7 @@ The following programming languages are currently supported by <a href="http://c
|
|
2124
2118
|
|
2125
2119
|
<p><div class="section">
|
2126
2120
|
<h5 class="title">
|
2127
|
-
<a class="toc" id="Specifying-the-programming-language" href="#a-
|
2121
|
+
<a class="toc" id="Specifying-the-programming-language" href="#a-606338018">5.1.1.1.1</a> Specifying the programming language
|
2128
2122
|
</h5>
|
2129
2123
|
<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>
|
2130
2124
|
|
@@ -2212,7 +2206,7 @@ int main(int argc, char **argv) {
|
|
2212
2206
|
</div>
|
2213
2207
|
<div class="section">
|
2214
2208
|
<h4 class="title">
|
2215
|
-
<a class="toc" id="Smart-sizing-of-source-code" href="#a-
|
2209
|
+
<a class="toc" id="Smart-sizing-of-source-code" href="#a-606341978">5.1.1.2</a> Smart sizing of source code
|
2216
2210
|
</h4>
|
2217
2211
|
<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>
|
2218
2212
|
|
@@ -2228,17 +2222,16 @@ int main(int argc, char **argv) {
|
|
2228
2222
|
|
2229
2223
|
<pre class="code">life =
|
2230
2224
|
<span style="color:#038; font-weight:bold">true</span> <span style="color:#080; font-weight:bold">or</span> <span style="color:#038; font-weight:bold">false</span></pre></div>
|
2231
|
-
</div>
|
2232
|
-
<div class="section">
|
2225
|
+
</div><div class="section">
|
2233
2226
|
<h4 class="title">
|
2234
|
-
<a class="toc" id="Protecting-verbatim-text" href="#a-
|
2227
|
+
<a class="toc" id="Protecting-verbatim-text" href="#a-606345218">5.1.1.3</a> Protecting verbatim text
|
2235
2228
|
</h4>
|
2236
2229
|
<div class="content">Sometimes you just need to protect some text from being mangled by the text-to-HTML conversion process . In such cases, you can wrap the text you want to proctect within <strong><noformat></strong> and <strong></noformat></strong> tags.</div>
|
2237
2230
|
</div></p></div>
|
2238
2231
|
</div>
|
2239
2232
|
<div class="section">
|
2240
2233
|
<h3 class="title">
|
2241
|
-
<a class="toc" id="Parameters" href="#a-
|
2234
|
+
<a class="toc" id="Parameters" href="#a-606353048">5.1.2</a> Parameters
|
2242
2235
|
</h3>
|
2243
2236
|
<div class="content">The HTML format accepts the following document parameters.
|
2244
2237
|
|
@@ -2287,10 +2280,9 @@ int main(int argc, char **argv) {
|
|
2287
2280
|
<td> Use <a href="http://tango.freedesktop.org/Tango_Icon_Library">Tango icons</a> in admonitions (see <a class="xref" href="#Admonitions">Section 5.1.4.3: <em>Admonitions</em></a>)? </td>
|
2288
2281
|
</tr>
|
2289
2282
|
</table></div>
|
2290
|
-
</div>
|
2291
|
-
<div class="section">
|
2283
|
+
</div><div class="section">
|
2292
2284
|
<h3 class="title">
|
2293
|
-
<a class="toc" id="Methods" href="#a-
|
2285
|
+
<a class="toc" id="Methods" href="#a-606356788">5.1.3</a> Methods
|
2294
2286
|
</h3>
|
2295
2287
|
<div class="content">The HTML format provides the following methods. In the method declarations shown below,
|
2296
2288
|
<ul>
|
@@ -2386,7 +2378,7 @@ ruby.
|
|
2386
2378
|
<div class="chapter">
|
2387
2379
|
<h1 class="title">
|
2388
2380
|
Chapter
|
2389
|
-
<a class="toc" id="html.nodes" href="#a-
|
2381
|
+
<a class="toc" id="html.nodes" href="#a-606981518">5.1.4</a>
|
2390
2382
|
|
2391
2383
|
<br/>
|
2392
2384
|
|
@@ -2429,32 +2421,29 @@ ruby.
|
|
2429
2421
|
|
2430
2422
|
<p><div class="section">
|
2431
2423
|
<h4 class="title">
|
2432
|
-
<a class="toc" id="Structure" href="#a-
|
2424
|
+
<a class="toc" id="Structure" href="#a-606992068">5.1.4.1</a> Structure
|
2433
2425
|
</h4>
|
2434
2426
|
<div class="content"><p>The nodes described in this section form the overall structure of the output document.</p>
|
2435
2427
|
|
2436
2428
|
|
2437
2429
|
<p><div class="section">
|
2438
2430
|
<h5 class="title">
|
2439
|
-
<a class="toc" id="html.nodes.header" href="#a-
|
2431
|
+
<a class="toc" id="html.nodes.header" href="#a-606999108">5.1.4.1.1</a> header
|
2440
2432
|
</h5>
|
2441
2433
|
<div class="content">This node overrides the logo, title, list of authors, and date when the document was written, all of which are shown at the top of the document.</div>
|
2442
|
-
</div>
|
2443
|
-
<div class="section">
|
2434
|
+
</div><div class="section">
|
2444
2435
|
<h5 class="title">
|
2445
|
-
<a class="toc" id="html.nodes.footer" href="#a-
|
2436
|
+
<a class="toc" id="html.nodes.footer" href="#a-607002748">5.1.4.1.2</a> footer
|
2446
2437
|
</h5>
|
2447
2438
|
<div class="content">This node overrides (1) the date when this document was generated and (2) the hyperlink to the Gerbil website, shown at the bottom of the document. The hyperlink is there as a way of saying thanks for Gerbil, the <em>wonderful</em> little utility you have grown so fond of! ;-)</div>
|
2448
|
-
</div>
|
2449
|
-
<div class="section">
|
2439
|
+
</div><div class="section">
|
2450
2440
|
<h5 class="title">
|
2451
|
-
<a class="toc" id="html.nodes.abstract" href="#a-
|
2441
|
+
<a class="toc" id="html.nodes.abstract" href="#a-607009848">5.1.4.1.3</a> abstract
|
2452
2442
|
</h5>
|
2453
2443
|
<div class="content">A summary of the entire document. This is what most readers will <em>skim</em> through, if you are lucky. Alas, nobody reads entire documents these days! :-(</div>
|
2454
|
-
</div>
|
2455
|
-
<div class="section">
|
2444
|
+
</div><div class="section">
|
2456
2445
|
<h5 class="title">
|
2457
|
-
<a class="toc" id="html.nodes.xref" href="#a-
|
2446
|
+
<a class="toc" id="html.nodes.xref" href="#a-607014308">5.1.4.1.4</a> xref
|
2458
2447
|
</h5>
|
2459
2448
|
<div class="content"><p>A cross-reference; a hyperlink that takes you to any node in the document.</p>
|
2460
2449
|
|
@@ -2485,14 +2474,14 @@ ruby.
|
|
2485
2474
|
</div>
|
2486
2475
|
<div class="section">
|
2487
2476
|
<h4 class="title">
|
2488
|
-
<a class="toc" id="Organization" href="#a-
|
2477
|
+
<a class="toc" id="Organization" href="#a-607031368">5.1.4.2</a> Organization
|
2489
2478
|
</h4>
|
2490
2479
|
<div class="content"><p>The nodes described in this section are meant to help organize the document’s content logically.</p>
|
2491
2480
|
|
2492
2481
|
|
2493
2482
|
<p><div class="section">
|
2494
2483
|
<h5 class="title">
|
2495
|
-
<a class="toc" id="html.nodes.part" href="#a-
|
2484
|
+
<a class="toc" id="html.nodes.part" href="#a-607035868">5.1.4.2.1</a> part
|
2496
2485
|
</h5>
|
2497
2486
|
<div class="content"><p>A collection of chapters.</p>
|
2498
2487
|
|
@@ -2500,7 +2489,7 @@ ruby.
|
|
2500
2489
|
<p><div class="part">
|
2501
2490
|
<h1 class="title">
|
2502
2491
|
Part
|
2503
|
-
<a class="toc" id="An-example" href="#a-
|
2492
|
+
<a class="toc" id="An-example" href="#a-607039118">5.1.4.2.1.1</a>
|
2504
2493
|
|
2505
2494
|
<br/>
|
2506
2495
|
|
@@ -2512,7 +2501,7 @@ ruby.
|
|
2512
2501
|
</div>
|
2513
2502
|
<div class="section">
|
2514
2503
|
<h5 class="title">
|
2515
|
-
<a class="toc" id="html.nodes.chapter" href="#a-
|
2504
|
+
<a class="toc" id="html.nodes.chapter" href="#a-607041628">5.1.4.2.2</a> chapter
|
2516
2505
|
</h5>
|
2517
2506
|
<div class="content"><p>A collection of sections.</p>
|
2518
2507
|
|
@@ -2520,7 +2509,7 @@ ruby.
|
|
2520
2509
|
<p><div class="chapter">
|
2521
2510
|
<h1 class="title">
|
2522
2511
|
Chapter
|
2523
|
-
<a class="toc" id="An-example-
|
2512
|
+
<a class="toc" id="An-example-607136348" href="#a-607043318">5.1.4.2.2.1</a>
|
2524
2513
|
|
2525
2514
|
<br/>
|
2526
2515
|
|
@@ -2532,21 +2521,21 @@ ruby.
|
|
2532
2521
|
</div>
|
2533
2522
|
<div class="section">
|
2534
2523
|
<h5 class="title">
|
2535
|
-
<a class="toc" id="html.nodes.section" href="#a-
|
2524
|
+
<a class="toc" id="html.nodes.section" href="#a-607045828">5.1.4.2.3</a> section
|
2536
2525
|
</h5>
|
2537
2526
|
<div class="content"><p>A collection of paragraphs about a particular topic.</p>
|
2538
2527
|
|
2539
2528
|
|
2540
2529
|
<p><div class="section">
|
2541
2530
|
<h6 class="title">
|
2542
|
-
<a class="toc" id="An-example-
|
2531
|
+
<a class="toc" id="An-example-607242248" href="#a-607047548">5.1.4.2.3.1</a> An example
|
2543
2532
|
</h6>
|
2544
2533
|
<div class="content">This is what a <strong>section</strong> node appears like.</div>
|
2545
2534
|
</div></p></div>
|
2546
2535
|
</div>
|
2547
2536
|
<div class="section">
|
2548
2537
|
<h5 class="title">
|
2549
|
-
<a class="toc" id="html.nodes.paragraph" href="#a-
|
2538
|
+
<a class="toc" id="html.nodes.paragraph" href="#a-607050058">5.1.4.2.4</a> paragraph
|
2550
2539
|
</h5>
|
2551
2540
|
<div class="content"><p>A collection of sentences about a particular idea.</p>
|
2552
2541
|
|
@@ -2559,7 +2548,7 @@ ruby.
|
|
2559
2548
|
</div>
|
2560
2549
|
<div class="section">
|
2561
2550
|
<h4 class="title">
|
2562
|
-
<a class="toc" id="Admonitions" href="#a-
|
2551
|
+
<a class="toc" id="Admonitions" href="#a-607054298">5.1.4.3</a> Admonitions
|
2563
2552
|
</h4>
|
2564
2553
|
<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>
|
2565
2554
|
|
@@ -2567,16 +2556,15 @@ ruby.
|
|
2567
2556
|
<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>
|
2568
2557
|
|
2569
2558
|
|
2570
|
-
<p>
|
2571
|
-
<div class="section">
|
2559
|
+
<p><div class="section">
|
2572
2560
|
<h5 class="title">
|
2573
|
-
<a class="toc" id="html.nodes.warning" href="#a-
|
2561
|
+
<a class="toc" id="html.nodes.warning" href="#a-607059578">5.1.4.3.1</a> warning
|
2574
2562
|
</h5>
|
2575
2563
|
<div class="content"><p>Use a <strong>warning</strong> node when “data loss could occur if you follow the procedure being described.” <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
|
2576
2564
|
|
2577
2565
|
|
2578
2566
|
<p><div class="warning">
|
2579
|
-
<p class="title"><a class="toc" id="An-example-
|
2567
|
+
<p class="title"><a class="toc" id="An-example-607309288" href="#a-607062858">Warning 1</a>. An example</p>
|
2580
2568
|
|
2581
2569
|
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
2582
2570
|
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
@@ -2641,7 +2629,7 @@ rBDpMPlaalVjI/la9EMCgnZW7hT+A5SLlrQmK/qkAAAAAElFTkSuQmCC
|
|
2641
2629
|
</div>
|
2642
2630
|
<div class="section">
|
2643
2631
|
<h5 class="title">
|
2644
|
-
<a class="toc" id="html.nodes.caution" href="#a-
|
2632
|
+
<a class="toc" id="html.nodes.caution" href="#a-607065148">5.1.4.3.2</a> caution
|
2645
2633
|
</h5>
|
2646
2634
|
<div class="content"><blockquote>
|
2647
2635
|
<p>A note of caution. Use this for example when the reader may lose easily recovered or replaceable information (e.g. user settings), or when they could cause data loss if they don’t correctly follow the procedure being outlined. <sup>[<a class="cite" href="#KDE.admonitions">1</a>]</sup></p>
|
@@ -2649,7 +2637,7 @@ rBDpMPlaalVjI/la9EMCgnZW7hT+A5SLlrQmK/qkAAAAAElFTkSuQmCC
|
|
2649
2637
|
|
2650
2638
|
|
2651
2639
|
<p><div class="caution">
|
2652
|
-
<p class="title"><a class="toc" id="An-example-
|
2640
|
+
<p class="title"><a class="toc" id="An-example-607338778" href="#a-607068458">Caution 1</a>. An example</p>
|
2653
2641
|
|
2654
2642
|
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
2655
2643
|
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
@@ -2710,7 +2698,7 @@ ECQGPj690VUrcfw2ZYuXhICbYRZiUUhEYFLNkjYs6s3c/5J97/9q8F/RUcwR
|
|
2710
2698
|
</div>
|
2711
2699
|
<div class="section">
|
2712
2700
|
<h5 class="title">
|
2713
|
-
<a class="toc" id="html.nodes.important" href="#a-
|
2701
|
+
<a class="toc" id="html.nodes.important" href="#a-607070748">5.1.4.3.3</a> important
|
2714
2702
|
</h5>
|
2715
2703
|
<div class="content"><p>Use an <strong>important</strong> node when:</p>
|
2716
2704
|
|
@@ -2721,7 +2709,7 @@ ECQGPj690VUrcfw2ZYuXhICbYRZiUUhEYFLNkjYs6s3c/5J97/9q8F/RUcwR
|
|
2721
2709
|
|
2722
2710
|
|
2723
2711
|
<p><div class="important">
|
2724
|
-
<p class="title"><a class="toc" id="An-example-
|
2712
|
+
<p class="title"><a class="toc" id="An-example-607369758" href="#a-607074108">Important 1</a>. An example</p>
|
2725
2713
|
|
2726
2714
|
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
2727
2715
|
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
@@ -2786,7 +2774,7 @@ YhZhYHbQZiOelwCTEJhIpuI+JYCZyKe2KNkEWIlIxTrPDJNc+B/DI2njy1uQ
|
|
2786
2774
|
</div>
|
2787
2775
|
<div class="section">
|
2788
2776
|
<h5 class="title">
|
2789
|
-
<a class="toc" id="html.nodes.note" href="#a-
|
2777
|
+
<a class="toc" id="html.nodes.note" href="#a-607078658">5.1.4.3.4</a> note
|
2790
2778
|
</h5>
|
2791
2779
|
<div class="content"><p>Use a <strong>note</strong> node to convey:</p>
|
2792
2780
|
|
@@ -2797,7 +2785,7 @@ YhZhYHbQZiOelwCTEJhIpuI+JYCZyKe2KNkEWIlIxTrPDJNc+B/DI2njy1uQ
|
|
2797
2785
|
|
2798
2786
|
|
2799
2787
|
<p><div class="note">
|
2800
|
-
<p class="title"><a class="toc" id="An-example-
|
2788
|
+
<p class="title"><a class="toc" id="An-example-607405428" href="#a-607085588">Note 2</a>. An example</p>
|
2801
2789
|
|
2802
2790
|
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
2803
2791
|
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
@@ -2863,7 +2851,7 @@ DUCQhrhWJkj394A0gKeUCjVo3r9Zv0r2P3yyQqPd16MPAAAAAElFTkSuQmCC
|
|
2863
2851
|
</div>
|
2864
2852
|
<div class="section">
|
2865
2853
|
<h5 class="title">
|
2866
|
-
<a class="toc" id="html.nodes.tip" href="#a-
|
2854
|
+
<a class="toc" id="html.nodes.tip" href="#a-607091318">5.1.4.3.5</a> tip
|
2867
2855
|
</h5>
|
2868
2856
|
<div class="content"><p>Use a <strong>tip</strong> node when:</p>
|
2869
2857
|
|
@@ -2874,7 +2862,7 @@ DUCQhrhWJkj394A0gKeUCjVo3r9Zv0r2P3yyQqPd16MPAAAAAElFTkSuQmCC
|
|
2874
2862
|
|
2875
2863
|
|
2876
2864
|
<p><div class="tip">
|
2877
|
-
<p class="title"><a class="toc" id="An-example-
|
2865
|
+
<p class="title"><a class="toc" id="An-example-607435678" href="#a-607103358">Tip 1</a>. An example</p>
|
2878
2866
|
|
2879
2867
|
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
2880
2868
|
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|
@@ -2959,79 +2947,79 @@ HGAANv6XHFhk9iI4CwDNm5m3aJG9Ww4o1MPnXQVe09fovEsXBC+AXO16LBK/
|
|
2959
2947
|
</div>
|
2960
2948
|
<div class="section">
|
2961
2949
|
<h4 class="title">
|
2962
|
-
<a class="toc" id="Auxilary-materials" href="#a-
|
2950
|
+
<a class="toc" id="Auxilary-materials" href="#a-607113278">5.1.4.4</a> Auxilary materials
|
2963
2951
|
</h4>
|
2964
2952
|
<div class="content"><div class="section">
|
2965
2953
|
<h5 class="title">
|
2966
|
-
<a class="toc" id="html.nodes.figure" href="#a-
|
2954
|
+
<a class="toc" id="html.nodes.figure" href="#a-607120048">5.1.4.4.1</a> figure
|
2967
2955
|
</h5>
|
2968
2956
|
<div class="content"><p>A diagram, sketch, image, or illustration; something that visually depicts an idea or thought.</p>
|
2969
2957
|
|
2970
2958
|
|
2971
2959
|
<p><div class="figure">
|
2972
|
-
<p class="title"><a class="toc" id="An-example-
|
2960
|
+
<p class="title"><a class="toc" id="An-example-607470278" href="#a-607123418">Figure 1</a>. An example</p>
|
2973
2961
|
<div class="content">This is what a <strong>figure</strong> node appears like.</div>
|
2974
2962
|
</div></p></div>
|
2975
2963
|
</div>
|
2976
2964
|
<div class="section">
|
2977
2965
|
<h5 class="title">
|
2978
|
-
<a class="toc" id="html.nodes.table" href="#a-
|
2966
|
+
<a class="toc" id="html.nodes.table" href="#a-607131228">5.1.4.4.2</a> table
|
2979
2967
|
</h5>
|
2980
2968
|
<div class="content"><p>Information (typically measurement data) represented in tabular form for easy reading, comparison, and analysis.</p>
|
2981
2969
|
|
2982
2970
|
|
2983
2971
|
<p><div class="table">
|
2984
|
-
<p class="title"><a class="toc" id="An-example-
|
2972
|
+
<p class="title"><a class="toc" id="An-example-607493418" href="#a-607135628">Table 1</a>. An example</p>
|
2985
2973
|
<div class="content">This is what a <strong>table</strong> node appears like.</div>
|
2986
2974
|
</div></p></div>
|
2987
2975
|
</div>
|
2988
2976
|
<div class="section">
|
2989
2977
|
<h5 class="title">
|
2990
|
-
<a class="toc" id="html.nodes.example" href="#a-
|
2978
|
+
<a class="toc" id="html.nodes.example" href="#a-607142608">5.1.4.4.3</a> example
|
2991
2979
|
</h5>
|
2992
2980
|
<div class="content"><p>A sample application of an idea or thought.</p>
|
2993
2981
|
|
2994
2982
|
|
2995
2983
|
<p><div class="example">
|
2996
|
-
<p class="title"><a class="toc" id="An-example-
|
2984
|
+
<p class="title"><a class="toc" id="An-example-607515828" href="#a-607146808">Example 4</a>. An example</p>
|
2997
2985
|
<div class="content">This is what a <strong>example</strong> node appears like.</div>
|
2998
2986
|
</div></p></div>
|
2999
2987
|
</div>
|
3000
2988
|
<div class="section">
|
3001
2989
|
<h5 class="title">
|
3002
|
-
<a class="toc" id="html.nodes.equation" href="#a-
|
2990
|
+
<a class="toc" id="html.nodes.equation" href="#a-607150388">5.1.4.4.4</a> equation
|
3003
2991
|
</h5>
|
3004
2992
|
<div class="content"><p>A mathematical equation or formula.</p>
|
3005
2993
|
|
3006
2994
|
|
3007
2995
|
<p><div class="equation">
|
3008
|
-
<p class="title"><a class="toc" id="An-example-
|
2996
|
+
<p class="title"><a class="toc" id="An-example-607537918" href="#a-607154858">Equation 1</a>. An example</p>
|
3009
2997
|
<div class="content">This is what a <strong>equation</strong> node appears like.</div>
|
3010
2998
|
</div></p></div>
|
3011
2999
|
</div>
|
3012
3000
|
<div class="section">
|
3013
3001
|
<h5 class="title">
|
3014
|
-
<a class="toc" id="html.nodes.procedure" href="#a-
|
3002
|
+
<a class="toc" id="html.nodes.procedure" href="#a-607158588">5.1.4.4.5</a> procedure
|
3015
3003
|
</h5>
|
3016
3004
|
<div class="content"><p>An outline; a series of steps outlining some kind of process.</p>
|
3017
3005
|
|
3018
3006
|
|
3019
3007
|
<p><div class="procedure">
|
3020
|
-
<p class="title"><a class="toc" id="An-example-
|
3008
|
+
<p class="title"><a class="toc" id="An-example-607559818" href="#a-607161558">Procedure 1</a>. An example</p>
|
3021
3009
|
<div class="content">This is what a <strong>procedure</strong> node appears like.</div>
|
3022
3010
|
</div></p></div>
|
3023
3011
|
</div></div>
|
3024
3012
|
</div>
|
3025
3013
|
<div class="section">
|
3026
3014
|
<h4 class="title">
|
3027
|
-
<a class="toc" id="Bibliography" href="#a-
|
3015
|
+
<a class="toc" id="Bibliography" href="#a-607170548">5.1.4.5</a> Bibliography
|
3028
3016
|
</h4>
|
3029
3017
|
<div class="content"><p>The nodes in this section deal with attribution of ideas—an important weapon against plagiarism.</p>
|
3030
3018
|
|
3031
3019
|
|
3032
3020
|
<p><div class="section">
|
3033
3021
|
<h5 class="title">
|
3034
|
-
<a class="toc" id="html.nodes.reference" href="#a-
|
3022
|
+
<a class="toc" id="html.nodes.reference" href="#a-607173848">5.1.4.5.1</a> reference
|
3035
3023
|
</h5>
|
3036
3024
|
<div class="content"><p>This node stores bibliography information about an information source that is relevant to your document.</p>
|
3037
3025
|
|
@@ -3042,12 +3030,11 @@ HGAANv6XHFhk9iI4CwDNm5m3aJG9Ww4o1MPnXQVe09fovEsXBC+AXO16LBK/
|
|
3042
3030
|
<p><div class="paragraph">
|
3043
3031
|
<p class="title">An example</p>
|
3044
3032
|
<div class="content">See <a class="xref" href="#html.nodes.reference.example">Reference 2</a> for an example of what a <strong>reference</strong> node appears like.</div>
|
3045
|
-
</div>
|
3046
|
-
</p></div>
|
3033
|
+
</div></p></div>
|
3047
3034
|
</div>
|
3048
3035
|
<div class="section">
|
3049
3036
|
<h5 class="title">
|
3050
|
-
<a class="toc" id="html.nodes.cite" href="#a-
|
3037
|
+
<a class="toc" id="html.nodes.cite" href="#a-607194148">5.1.4.5.2</a> cite
|
3051
3038
|
</h5>
|
3052
3039
|
<div class="content"><p>A citation to a <strong>reference</strong> node (see <a class="xref" href="#html.nodes.reference">Section 5.1.4.5.1: <em>reference</em></a>) in the document’s bibliography.</p>
|
3053
3040
|
|
@@ -3078,7 +3065,7 @@ HGAANv6XHFhk9iI4CwDNm5m3aJG9Ww4o1MPnXQVe09fovEsXBC+AXO16LBK/
|
|
3078
3065
|
<div class="chapter">
|
3079
3066
|
<h1 class="title">
|
3080
3067
|
Chapter
|
3081
|
-
<a class="toc" id="text" href="#a-
|
3068
|
+
<a class="toc" id="text" href="#a-607222938">5.2</a>
|
3082
3069
|
|
3083
3070
|
<br/>
|
3084
3071
|
|
@@ -3089,11 +3076,10 @@ HGAANv6XHFhk9iI4CwDNm5m3aJG9Ww4o1MPnXQVe09fovEsXBC+AXO16LBK/
|
|
3089
3076
|
|
3090
3077
|
|
3091
3078
|
<p>http://en.wikipedia.org/wiki/Plain_text</p></div>
|
3092
|
-
</div>
|
3093
|
-
<div class="chapter">
|
3079
|
+
</div><div class="chapter">
|
3094
3080
|
<h1 class="title">
|
3095
3081
|
Chapter
|
3096
|
-
<a class="toc" id="latex" href="#a-
|
3082
|
+
<a class="toc" id="latex" href="#a-607234148">5.3</a>
|
3097
3083
|
|
3098
3084
|
<br/>
|
3099
3085
|
|
@@ -3104,11 +3090,10 @@ HGAANv6XHFhk9iI4CwDNm5m3aJG9Ww4o1MPnXQVe09fovEsXBC+AXO16LBK/
|
|
3104
3090
|
|
3105
3091
|
|
3106
3092
|
<p>http://www.latex-project.org</p></div>
|
3107
|
-
</div>
|
3108
|
-
<div class="chapter">
|
3093
|
+
</div><div class="chapter">
|
3109
3094
|
<h1 class="title">
|
3110
3095
|
Chapter
|
3111
|
-
<a class="toc" id="man" href="#a-
|
3096
|
+
<a class="toc" id="man" href="#a-607237578">5.4</a>
|
3112
3097
|
|
3113
3098
|
<br/>
|
3114
3099
|
|
@@ -3137,7 +3122,7 @@ HGAANv6XHFhk9iI4CwDNm5m3aJG9Ww4o1MPnXQVe09fovEsXBC+AXO16LBK/
|
|
3137
3122
|
|
3138
3123
|
<div id="footer">
|
3139
3124
|
|
3140
|
-
Generated on
|
3125
|
+
Generated on Sun Jun 01 22:30:15 -0700 2008 by <a href="http://gerbil.rubyforge.org">Gerbil</a> 3.0.0.
|
3141
3126
|
|
3142
3127
|
<p>The admonition icons (<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgI
|
3143
3128
|
fAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3
|