rote 0.1.2 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +42 -231
- data/Rakefile +14 -5
- data/TODO +3 -0
- data/doc/layouts/page.html +4 -0
- data/doc/man/rote.1.gz +0 -0
- data/doc/pages/COMMON.rb +21 -3
- data/doc/pages/guide/COMMON.rb +7 -0
- data/doc/pages/guide/index.html +311 -0
- data/doc/pages/index.html +20 -41
- data/doc/pages/index.rb +8 -4
- data/doc/pages/license.html +27 -0
- data/install.rb +22 -0
- data/lib/rote.rb +1 -1
- data/lib/rote/dirfilelist.rb +8 -4
- data/lib/rote/page.rb +1 -1
- data/lib/rote/rotetasks.rb +3 -1
- metadata +9 -3
data/README
CHANGED
@@ -10,41 +10,7 @@ Markdown, and embedded Ruby code with RedCloth [http://redcloth.rubyforge.org/]
|
|
10
10
|
and ERB [http://www.ruby-doc.org/stdlib/libdoc/erb/rdoc/classes/ERB.html]),
|
11
11
|
layout, and general documentation / website build tasks.
|
12
12
|
|
13
|
-
==
|
14
|
-
|
15
|
-
I don't know. Rote offers the following major features:
|
16
|
-
|
17
|
-
* Simple set-up based on page templates and sections.
|
18
|
-
* ERB, Textile, and Markdown supported out of the box.
|
19
|
-
* Multiple configurable layouts apply boilerplate to your pages.
|
20
|
-
* 'Scoped' Ruby code support allows fine-grained control of data available across
|
21
|
-
all documentation, a subset, or individual pages.
|
22
|
-
* Can be used standalone (from the command-line) or from within Rake [http://rake.rubyforge.org]
|
23
|
-
as a custom task library.
|
24
|
-
* Supports any (text-based) format, while providing utilities and helpers for
|
25
|
-
common formats (HTML at present).
|
26
|
-
|
27
|
-
So, should you?
|
28
|
-
|
29
|
-
== Why 'Rote'
|
30
|
-
|
31
|
-
The name? I tried to come up with a combination of 'Ruby Site', but couldn't
|
32
|
-
get past 'Rite' (it's already taken ;)). So, I changed a letter. I'm short on
|
33
|
-
imagination you know. Oh, you mean why the system? Well, to make it easier
|
34
|
-
for me to manage roscopeco.co.uk now that I've dumped all the dynamic (JEE)
|
35
|
-
stuff and gone back to good old Apache sans CGI. I want something that lets
|
36
|
-
me do the disconnected page rendering and some of the 'dynamic' stuff,
|
37
|
-
without the dynamic stuff.
|
38
|
-
|
39
|
-
If you really need a better explanation for the name, I've come up with these
|
40
|
-
alternatives:
|
41
|
-
|
42
|
-
* Something about 'the docs I rote'
|
43
|
-
* 'Rake-Oriented Template Extensions'
|
44
|
-
* 'Rote Only Talks Erb'
|
45
|
-
* 'Really? Ordinary Template Enhancements?'
|
46
|
-
|
47
|
-
== What else do I need?
|
13
|
+
== Prerequisites
|
48
14
|
|
49
15
|
Rote uses the following (versions are as per my development environment,
|
50
16
|
you may find you can use older versions, you may not).
|
@@ -53,17 +19,21 @@ you may find you can use older versions, you may not).
|
|
53
19
|
* Rake 0.6.2 ('gem install rake')
|
54
20
|
* RedCloth 3.0.4 ('gem install RedCloth')
|
55
21
|
|
56
|
-
RubyGems
|
22
|
+
RubyGems [http://rubyforge.org/frs/?group_id=126] is *highly recommended*,
|
57
23
|
and makes for not only an easier install but a cleaner library path.
|
58
24
|
Rote is tested with Gems 0.8.11.
|
59
25
|
|
60
|
-
|
26
|
+
Please note that Rote is written and tested on Linux - I have no facilities
|
27
|
+
to test with, e.g. Windows, and would like to hear about any issues that affect
|
28
|
+
usage with other OSes.
|
29
|
+
|
30
|
+
== Installation ...
|
61
31
|
|
62
32
|
=== ... with RubyGems?
|
63
33
|
|
64
34
|
If you have RubyGems, you can install Rote by simply issuing the command:
|
65
35
|
|
66
|
-
gem install rote
|
36
|
+
gem install -r rote
|
67
37
|
|
68
38
|
Which should download the latest version and install it, including
|
69
39
|
the 'rote' wrapper script and man pages. If you experience problems,
|
@@ -71,7 +41,11 @@ or wish to perform an offline installation, then simply download the
|
|
71
41
|
.gem file from the FRS, and execute the gem command from within the same
|
72
42
|
directory.
|
73
43
|
|
74
|
-
|
44
|
+
*Note* that the gem install currently doesn't install the man pages.
|
45
|
+
You will need to copy them to the appropriate location manually if using
|
46
|
+
this method.
|
47
|
+
|
48
|
+
=== ... with install.rb?
|
75
49
|
|
76
50
|
If you don't have RubyGems, you can install from one of the tarball or zip
|
77
51
|
packages, using the following command:
|
@@ -79,7 +53,7 @@ packages, using the following command:
|
|
79
53
|
ruby install.rb
|
80
54
|
|
81
55
|
from the unpacked root directory. This will copy the libaries to the
|
82
|
-
appropriate place, and set up the rote wrapper script and so on.
|
56
|
+
appropriate place, and set up the rote wrapper script, manpages, and so on.
|
83
57
|
|
84
58
|
=== ... in my own way?
|
85
59
|
|
@@ -100,203 +74,40 @@ the version number of your Rote installation.
|
|
100
74
|
|
101
75
|
== How do I use it?
|
102
76
|
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
some wider build) then you don't need to worry about writing a +Rakefile+ -
|
107
|
-
you can use the built-in build via the +rote+ command. This works with
|
108
|
-
a standard directory layout, and wraps invocation of +rake+ to handle
|
109
|
-
setting up library dependencies and generation of appropriate tasks.
|
110
|
-
|
111
|
-
You'll need something like the following directory layout:
|
112
|
-
|
113
|
-
somesite ( <- root, this can be called whatever you like)
|
114
|
-
|--> [publish.rf]
|
115
|
-
|
|
116
|
-
|--> doc
|
117
|
-
| |--> [COMMON.rb]
|
118
|
-
| |
|
119
|
-
| |--> res
|
120
|
-
| | |--> (resources)
|
121
|
-
| |
|
122
|
-
| |--> layouts
|
123
|
-
| | |--> one.rhtml
|
124
|
-
| | |--> two.rhtml
|
125
|
-
| |
|
126
|
-
| |--> pages
|
127
|
-
| | |--> [COMMON.rb]
|
128
|
-
| | |--> apage.txt
|
129
|
-
| | |--> [apage.rb]
|
130
|
-
| | |--> adir
|
131
|
-
| | | |--> [COMMON.rb]
|
132
|
-
| | | |--> bpage.html
|
133
|
-
| | | |--> [bpage.rb]
|
134
|
-
|
135
|
-
Template sources under the 'pages' directory may have any extension (except
|
136
|
-
+rb+), and will be rendered to that same name under the output directory.
|
137
|
-
See the section on Layouts below for details on layout name resolution.
|
138
|
-
Set up a simple test site following the above layout, and then run:
|
139
|
-
|
140
|
-
rote
|
141
|
-
|
142
|
-
from the top-level directory (+somesite+), you should get a 'target' directory
|
143
|
-
created with the (transformed) templates.
|
144
|
-
|
145
|
-
Now try:
|
146
|
-
|
147
|
-
rote --tasks
|
148
|
-
|
149
|
-
to get a list of valid tasks, or:
|
150
|
-
|
151
|
-
rote --usage
|
152
|
-
|
153
|
-
for further option information.
|
154
|
-
|
155
|
-
=== From your +Rakefile+
|
156
|
-
|
157
|
-
If you are wanting to build documentation as part of a larger build process, or
|
158
|
-
commandline setup, then you'll want to get started on integrating Rote with
|
159
|
-
your own (existing) +Rakefile+. Fortunately, this is very easy to do. Try
|
160
|
-
something like:
|
161
|
-
|
162
|
-
# Rakefile
|
163
|
-
require 'rote'
|
164
|
-
|
165
|
-
ws = Rote::DocTask.new(:doc) { |site|
|
166
|
-
site.site_dir = 'html'
|
167
|
-
site.layout_dir = 'doc/layouts'
|
168
|
-
|
169
|
-
site.pages.dir = 'doc/pages'
|
170
|
-
site.pages.include('**/*')
|
171
|
-
|
172
|
-
site.res.dir = 'doc/res/'
|
173
|
-
site.res.include('**/*.png')
|
174
|
-
site.res.include('**/*.gif')
|
175
|
-
site.res.include('**/*.jpg')
|
176
|
-
site.res.include('**/*.css')
|
177
|
-
}
|
178
|
-
|
179
|
-
Save this as +Rakefile+, and fire up:
|
180
|
-
|
181
|
-
rake --libdir=$ROTE_HOME/lib doc
|
182
|
-
|
183
|
-
If all goes well, you should see each command and transformation output to your
|
184
|
-
console as Rote runs.
|
185
|
-
|
186
|
-
*Note* that it's safe to include '**/*' in the +pages+ list, since +rb+
|
187
|
-
files are implicitly excluded.
|
188
|
-
|
189
|
-
== Creating templates
|
190
|
-
|
191
|
-
As mentioned, templates are simply text files in the doc/pages directory. The
|
192
|
-
layout below that directory is retained when transforming pages, and is
|
193
|
-
also used to provide simple hierarchical structure to the common page code.
|
194
|
-
By default, any file with an extension other than +rb+ will be processed
|
195
|
-
as a page template (with it's associated ruby source). The output will have
|
196
|
-
the same filename and path, relative to the output directory.
|
77
|
+
Please see the user guide for usage information. The latest version can be
|
78
|
+
found online at http://rote.rubyforge.org/guide/ , and documentation source for
|
79
|
+
a specific release is included in the release package.
|
197
80
|
|
198
|
-
|
81
|
+
See above for instructions on building the documentation set.
|
199
82
|
|
200
|
-
|
201
|
-
<% ... %> (for executed code) and <%= ... %> (for output) tags. Any (valid)
|
202
|
-
Ruby code may be placed in the templates, and variables may be defined to
|
203
|
-
allow information to be passed into templates. There are four places where
|
204
|
-
you might define such variables. The following is in order of evaluation:
|
83
|
+
=== A note about version numbers
|
205
84
|
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
85
|
+
Rote uses odd/even numbers for development/release versions. When the final
|
86
|
+
version component is odd, the package is an 'unofficial' build - generally
|
87
|
+
this means built manually from source, during development. These will never
|
88
|
+
be distributed, and there's no guarantee that any two packages with the same
|
89
|
+
development version will actually be the same. These packages will have no
|
90
|
+
corresponding CVS tag.
|
211
91
|
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
instance variables to pass data around, or even helper methods if you wish.
|
92
|
+
Even numbers always denote 'official' releases, which are released on
|
93
|
+
RubyForge and tagged as such in CVS. These packages can be trusted to exhibit
|
94
|
+
version consistency.
|
216
95
|
|
217
|
-
|
96
|
+
If you are bundling Rote with your product, please ensure you use an official
|
97
|
+
release version whenever possible. If you must use a developmental version,
|
98
|
+
please modify the package version to reflect the fact that it is a custom
|
99
|
+
build (e.g. 0.1.3-mycompany-20051021) to prevent inconsistent development
|
100
|
+
packages from escaping into the wild.
|
218
101
|
|
219
|
-
|
220
|
-
formatting, supporting both Textile and Markdown. The formatting applied to a
|
221
|
-
given page is controlled by that page's +format_opts+ array. Both are disabled
|
222
|
-
by default - to enable formatting you must add something like the following
|
223
|
-
somewhere appropriate:
|
102
|
+
=== Further information
|
224
103
|
|
225
|
-
|
226
|
-
|
227
|
-
Although you can directly assign to +format_opts+, this isn't recommended since
|
228
|
-
Ruby often interprets it as a local variable set rather than method call,
|
229
|
-
resulting in much head scratching as to why your options are being ignored.
|
230
|
-
|
231
|
-
Formatting is applied _after_ any ERB has been evaluated.
|
232
|
-
|
233
|
-
*Note* that the options you supply are passed directly to RedCloth, so you can
|
234
|
-
exercise much more control over the formatting by using the feature-specific
|
235
|
-
symbols defined by RedCloth, rather than the blanket :textile and :markdown
|
236
|
-
symbols.
|
104
|
+
Rote is developed by Ross Bamford (ross <at> roscopeco.co.uk). Flame him if
|
105
|
+
it breaks your day ;P
|
237
106
|
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
the hierarchy in +pages+. To apply a layout to a page, simply call the
|
243
|
-
Rote::Page.layout method from code applied to that page, passing the
|
244
|
-
base-name (and path, relative to +layouts+, if used). If no extension is
|
245
|
-
specified, then the same extension as the page itself is assumed. Examples:
|
246
|
-
|
247
|
-
layout 'one'
|
248
|
-
layout 'main/wide'
|
249
|
-
layout 'dark.txt'
|
250
|
-
<% layout 'my' %>
|
251
|
-
|
252
|
-
With that done, Rote would first render the template text (including textile)
|
253
|
-
and set the Page instance variable @content_for_layout before rendering
|
254
|
-
the layout (in which textile is currently not supported). The layout is
|
255
|
-
responsible for inserting the rendered template where appropriate, with
|
256
|
-
e.g.:
|
107
|
+
* Homepage - http://rote.rubyforge.org/
|
108
|
+
* Project - http://rubyforge.org/projects/rote
|
109
|
+
* Issues - http://rubyforge.org/tracker/?group_id=1120
|
110
|
+
* List - rote-devel@rubyforge.org
|
257
111
|
|
258
|
-
|
259
|
-
|
260
|
-
This pattern shouldn't be unfamiliar. Again, note that Rote doesn't mandate
|
261
|
-
HTML, despite the appearance from the ERB tags - any (textual) format can
|
262
|
-
be templated and laid out.
|
263
|
-
|
264
|
-
== Resources
|
265
|
-
|
266
|
-
Of course, you're likely to have resources for your site (images, sounds, etc)
|
267
|
-
and you'll need to copy them over to the target too. Such resources should be
|
268
|
-
placed under 'res' (with the commandline setup) or in your specified +res+
|
269
|
-
directory, and will be copied directly to the output directory after page
|
270
|
-
rendering.
|
271
|
-
|
272
|
-
Of course, the directory layout beneath +res+ should mirror that of the
|
273
|
-
output, and will be preserved during the copy.
|
274
|
-
|
275
|
-
== Publishing
|
276
|
-
|
277
|
-
Rote does not provide any direct support for publishing your site at present,
|
278
|
-
relying on you to configure an appropriate publish task if required, using
|
279
|
-
the publishers supplied with Rake (in rake/contrib). This allows maximum
|
280
|
-
flexibility, and allows Rote to concentrate on creating your documents.
|
281
|
-
|
282
|
-
The command-line build will automatically look for a file in the top-level
|
283
|
-
directory (above +doc+) named publish.rf. If found, this file will be
|
284
|
-
evaluated by Rake, making any tasks defined within it available to your
|
285
|
-
build. The most likely use case is to define task that uses an SSH directory
|
286
|
-
publisher to publish via SCP.
|
287
|
-
|
288
|
-
== A final note about command-line mode
|
289
|
-
|
290
|
-
Currently, there isn't enough checking involved on source resources when
|
291
|
-
building pages from the command-line wrapper - Basically, only templates are
|
292
|
-
considered when Rake decides what to update. If you change layouts, code or
|
293
|
-
resources you'll need to run:
|
294
|
-
|
295
|
-
rote clean
|
296
|
-
|
297
|
-
to make sure everything gets updated. It's recommended to always run upload
|
298
|
-
as:
|
299
|
-
|
300
|
-
rote clean upload
|
301
|
-
|
302
|
-
Please note that this isn't Rake's limitation - it's mine.
|
112
|
+
As you may have guessed, Rote's hosting and development services are provided
|
113
|
+
by http://RubyForge.org .
|
data/Rakefile
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# This Rakefile is heavily based on Rake's own Rakefile.
|
7
7
|
# Portions copyright (c)2003, 2004 Jim Weirich (jim <AT> weirichhouse.org)
|
8
8
|
#
|
9
|
-
# $Id: Rakefile,v 1.
|
9
|
+
# $Id: Rakefile,v 1.6 2005/11/27 15:57:45 roscopeco Exp $
|
10
10
|
#
|
11
11
|
|
12
12
|
begin
|
@@ -20,7 +20,10 @@ require 'rake/clean'
|
|
20
20
|
require 'rake/testtask'
|
21
21
|
require 'rake/rdoctask'
|
22
22
|
|
23
|
-
|
23
|
+
# This needs to go at the front of the libpath
|
24
|
+
# Otherwise, any pre-installed rote gets found,
|
25
|
+
# and used from there.
|
26
|
+
$:[0,1] = 'lib'
|
24
27
|
require 'rote'
|
25
28
|
|
26
29
|
CLEAN.include('testdata')
|
@@ -172,9 +175,6 @@ else
|
|
172
175
|
|
173
176
|
s.files = PKG_FILES.to_a
|
174
177
|
|
175
|
-
#### Install Manpages (abuse C extension feature a bit)
|
176
|
-
#s.extensions << "post-install.rb"
|
177
|
-
|
178
178
|
#### Load-time details: library and application (you will need one or both).
|
179
179
|
|
180
180
|
s.require_path = 'lib' # Use these for libraries.
|
@@ -208,6 +208,15 @@ else
|
|
208
208
|
# s.cert_chain = [File.join(ENV['CERT_DIR'], 'gem-public_cert.pem')]
|
209
209
|
# end
|
210
210
|
end
|
211
|
+
|
212
|
+
# Quick fix for Ruby 1.8.3 / YAML bug
|
213
|
+
if (RUBY_VERSION == '1.8.3')
|
214
|
+
def spec.to_yaml
|
215
|
+
out = super
|
216
|
+
out = '--- ' + out unless out =~ /^---/
|
217
|
+
out
|
218
|
+
end
|
219
|
+
end
|
211
220
|
|
212
221
|
package_task = Rake::GemPackageTask.new(spec) do |pkg|
|
213
222
|
pkg.need_zip = true
|
data/TODO
CHANGED
@@ -6,7 +6,10 @@ Send any suggestions (or test-driven patches) to:
|
|
6
6
|
rosco <at> roscopeco <dot> co <dot> uk
|
7
7
|
|
8
8
|
* More flexible markup rendering
|
9
|
+
* Nested layouts
|
9
10
|
* Integration with test reports
|
10
11
|
* Automatic navigation / TOC
|
12
|
+
* Ability to have multiple views of a section, e.g. user guide (separate
|
13
|
+
pages) and user guide (one page) generated from same source.
|
11
14
|
* Index and glossary support
|
12
15
|
* statistics
|
data/doc/layouts/page.html
CHANGED
data/doc/man/rote.1.gz
ADDED
Binary file
|
data/doc/pages/COMMON.rb
CHANGED
@@ -1,3 +1,14 @@
|
|
1
|
+
# Common code for every page.
|
2
|
+
#
|
3
|
+
# Instead of being executed once (as you might expect), this is evaluated
|
4
|
+
# for each Page's binding as the instance is created.
|
5
|
+
#
|
6
|
+
# At the moment, COMMON.rb code isn't automatically inherited from
|
7
|
+
# parent directories - you have to use the 'inherit_common' hack provided
|
8
|
+
# by Page to inherit from the immediate parent directory ONLY (setting
|
9
|
+
# up chains of COMMONs if you have deep nesting - Ugh!). This limitation
|
10
|
+
# will be removed very soon.
|
11
|
+
|
1
12
|
@site_title = 'Rote'
|
2
13
|
@base_url = 'http://rote.rubyforge.org/'
|
3
14
|
|
@@ -5,16 +16,23 @@
|
|
5
16
|
layout 'page'
|
6
17
|
format_opts << :textile
|
7
18
|
|
8
|
-
# this is used to construct the navbar and frontpage.
|
19
|
+
# this is used to construct the navbar and frontpage. Note that we use absolute
|
20
|
+
# (root-relative) URLs here, and fix them from each page with 'link_rel'.
|
9
21
|
@navigation = [
|
10
22
|
{:title => 'Home',
|
11
23
|
:url => '/index.html'},
|
12
24
|
{:title => 'Download',
|
13
25
|
:url => 'http://rubyforge.org/frs/?group_id=1120'},
|
26
|
+
{:title => 'User guide',
|
27
|
+
:url => '/guide/'},
|
14
28
|
{:title => 'RDoc',
|
15
|
-
:url => 'rdoc/'},
|
29
|
+
:url => '/rdoc/'},
|
30
|
+
{:title => 'Issue tracker',
|
31
|
+
:url => 'http://rubyforge.org/tracker/?group_id=1120'},
|
16
32
|
{:title => 'Project home',
|
17
33
|
:url => 'http://rubyforge.org/projects/rote'},
|
18
34
|
{:title => 'Browse CVS',
|
19
|
-
:url => 'http://rubyforge.org/cgi-bin/viewcvs.cgi/?cvsroot=rote'}
|
35
|
+
:url => 'http://rubyforge.org/cgi-bin/viewcvs.cgi/?cvsroot=rote'},
|
36
|
+
{:title => 'License',
|
37
|
+
:url => '/license.html'}
|
20
38
|
]
|
@@ -0,0 +1,311 @@
|
|
1
|
+
<% @page_title = 'User guide' %>
|
2
|
+
|
3
|
+
*This guide is still very much under construction!*
|
4
|
+
|
5
|
+
It is assumed that you have installed Rote already. If not, please
|
6
|
+
consult the <a href="<%= link_rel '/rdoc/files/README.html' %>">README</a>
|
7
|
+
for installation instructions.
|
8
|
+
|
9
|
+
<a name='top'/>
|
10
|
+
h3. Contents
|
11
|
+
|
12
|
+
* "Getting started with Rote":#getting_started
|
13
|
+
** "From the command-line":#getting_started_command_line
|
14
|
+
** "From your Rakefile":#getting_started_rakefile
|
15
|
+
* "Creating templates":#create_templates
|
16
|
+
** "Basics":#create_templates_basics
|
17
|
+
** "Formatting":#create_templates_formatting
|
18
|
+
** "Template code & ERB":create_templates_erb
|
19
|
+
** "Applying layout":create_templates_layout
|
20
|
+
* "Resources":#resources
|
21
|
+
* "Publishing":#publishing
|
22
|
+
|
23
|
+
<a name='getting_started'/>
|
24
|
+
h3. Getting started with Rote
|
25
|
+
|
26
|
+
h4. Setting up a project
|
27
|
+
|
28
|
+
To get started quickly, we'll use the standard Rote directory layout, which
|
29
|
+
can be used immediately with the command-line wrapper, and fits well with
|
30
|
+
Rakefile usage too. Basically, Rote expects your documentation source to
|
31
|
+
be laid out as follows:
|
32
|
+
|
33
|
+
<code><pre>
|
34
|
+
project_root ( <- root, this can be called whatever you like)
|
35
|
+
|
|
36
|
+
|--> [publish.rf]
|
37
|
+
|
|
38
|
+
|--> doc
|
39
|
+
| |--> [COMMON.rb]
|
40
|
+
| |
|
41
|
+
| |--> res
|
42
|
+
| | |--> (resources)
|
43
|
+
| |
|
44
|
+
| |--> layouts
|
45
|
+
| | |--> one.txt
|
46
|
+
| | |--> two.html
|
47
|
+
| |
|
48
|
+
| |--> pages
|
49
|
+
| | |--> [COMMON.rb]
|
50
|
+
| | |--> apage.txt
|
51
|
+
| | |--> [apage.rb]
|
52
|
+
| | |--> adir
|
53
|
+
| | | |--> [COMMON.rb]
|
54
|
+
| | | |--> bpage.html
|
55
|
+
| | | |--> [bpage.rb]
|
56
|
+
|
57
|
+
</code></pre>
|
58
|
+
|
59
|
+
Template sources under the 'pages' directory may have any extension (except
|
60
|
+
=rb=), and will be rendered to that same name under the output directory.
|
61
|
+
See the section on Layouts below for details on layout name resolution.
|
62
|
+
|
63
|
+
Ruby source is optional, and allows you to define instance variables and
|
64
|
+
methods on a Page instance. COMMON.rb is applied to all pages in a given
|
65
|
+
directory. See "the section on templates":#create_templates for more
|
66
|
+
information on the specifics.
|
67
|
+
|
68
|
+
If you've downloaded Rote, then you can see the canonical example site by
|
69
|
+
looking in the =doc/= directory (where you'll find the source for this
|
70
|
+
site).
|
71
|
+
|
72
|
+
["top":#top]
|
73
|
+
|
74
|
+
<a name='getting_started_command_line'/>
|
75
|
+
h4. From the command-line
|
76
|
+
|
77
|
+
If you are generating a standalone documentation set (i.e. not as part of
|
78
|
+
some wider build) then you don't need to worry about writing a =Rakefile= -
|
79
|
+
you can use the built-in build via the +rote+ command. This works with
|
80
|
+
a standard directory layout, and wraps invocation of +rake+ to handle
|
81
|
+
setting up library dependencies and generation of appropriate tasks.
|
82
|
+
|
83
|
+
The command-line wrapper expects the above layout, and requires no direct
|
84
|
+
configuration. To generate an entire documentation set, simply run:
|
85
|
+
|
86
|
+
<pre><code> rote</code></pre>
|
87
|
+
|
88
|
+
from the top-level directory (=project= in the example above), you should get
|
89
|
+
a 'html' directory created with the (transformed) templates, and any
|
90
|
+
resources should be copied as necessary.
|
91
|
+
|
92
|
+
Being based on Rake, Rote supports last-modified checking, and provides an
|
93
|
+
individual file task for each page in your doc set. For example, running
|
94
|
+
the 'rote' command again with no options will cause it to exit almost
|
95
|
+
immediately, since all output is up to date. If you change a file, and run
|
96
|
+
rote again, then just that file will be updated. There are a few caveats
|
97
|
+
with this (see "the notes section":#final_notes).
|
98
|
+
|
99
|
+
The file tasks are named for the target files, so for example to generate
|
100
|
+
just the top-level index.html (regardless of whether it's been modified)
|
101
|
+
you'd run:
|
102
|
+
|
103
|
+
<pre><code> rote html/index.html</code></pre>
|
104
|
+
|
105
|
+
The =clean= task supports deleting all output files to start from scratch:
|
106
|
+
|
107
|
+
<pre><code> rote clean</code></pre>
|
108
|
+
|
109
|
+
Of course, multiple file or task names (or a mixture) can be specified.
|
110
|
+
You can get a list of valid tasks in the current context with:
|
111
|
+
|
112
|
+
<pre><code> rote --tasks</code></pre>
|
113
|
+
|
114
|
+
Further command-line usage information is available with:
|
115
|
+
|
116
|
+
<pre><code> rote --usage</code></pre>
|
117
|
+
|
118
|
+
and Unix installations performed with =install.rb= should also make a
|
119
|
+
manpage available for the =rote= command.
|
120
|
+
|
121
|
+
["top":#top]
|
122
|
+
|
123
|
+
<a name='getting_started_rakefile'/>
|
124
|
+
h4. From your +Rakefile+
|
125
|
+
|
126
|
+
If you are wanting to build documentation as part of a larger build process, or
|
127
|
+
commandline setup, then you'll want to get started on integrating Rote with
|
128
|
+
your own (existing) +Rakefile+. Fortunately, this is very easy to do. Try
|
129
|
+
something like:
|
130
|
+
|
131
|
+
<pre><code>
|
132
|
+
# Rakefile
|
133
|
+
require 'rote'
|
134
|
+
|
135
|
+
ws = Rote::DocTask.new(:doc) { |site|
|
136
|
+
site.site_dir = 'html'
|
137
|
+
site.layout_dir = 'doc/layouts'
|
138
|
+
|
139
|
+
site.pages.dir = 'doc/pages'
|
140
|
+
site.pages.include('**/*')
|
141
|
+
|
142
|
+
site.res.dir = 'doc/res/'
|
143
|
+
site.res.include('**/*.png')
|
144
|
+
site.res.include('**/*.gif')
|
145
|
+
site.res.include('**/*.jpg')
|
146
|
+
site.res.include('**/*.css')
|
147
|
+
}
|
148
|
+
|
149
|
+
</code></pre>
|
150
|
+
|
151
|
+
Save this as =Rakefile=, and fire up:
|
152
|
+
|
153
|
+
<pre><code> rake doc</code></pre>
|
154
|
+
|
155
|
+
If all goes well, you should see each command and transformation output to your
|
156
|
+
console as Rote runs.
|
157
|
+
|
158
|
+
*Note* that it's safe to include '**/*' in the +pages+ list, since +rb+
|
159
|
+
files are implicitly excluded.
|
160
|
+
|
161
|
+
["top":#top]
|
162
|
+
|
163
|
+
<a name='create_templates'/>
|
164
|
+
h3. Creating templates
|
165
|
+
|
166
|
+
<a name='create_templates_basics'/>
|
167
|
+
h4. The basics
|
168
|
+
|
169
|
+
As mentioned, templates are simply text files in the =doc/pages= directory. The
|
170
|
+
layout below that directory is retained when transforming pages, and is
|
171
|
+
also used to provide simple hierarchical structure to the common page code.
|
172
|
+
|
173
|
+
By default, any file with an extension other than =rb= will be processed
|
174
|
+
as a page template (with it's associated ruby source). The output will have
|
175
|
+
the same filename and path, relative to the output directory.
|
176
|
+
|
177
|
+
["top":#top]
|
178
|
+
|
179
|
+
<a name='create_templates_formatting'/>
|
180
|
+
h4. Applying formatting
|
181
|
+
|
182
|
+
If you're generating HTML, you'll probably want to use some plaintext
|
183
|
+
formatting, rather than writing HTML by hand. Rote uses
|
184
|
+
"RedCloth":http://redcloth.rubyforge.org to provide text to HTML formatting,
|
185
|
+
supporting both Textile and Markdown. The formatting applied to a given page is
|
186
|
+
controlled by that page's +format_opts+ array. Both are disabled by default - to
|
187
|
+
enable formatting you must add something like the following somewhere appropriate:
|
188
|
+
|
189
|
+
<pre><code> format_opts << :textile << :markdown</code></pre>
|
190
|
+
|
191
|
+
This can be done in page code, COMMON.rb, or even inside the template itself.
|
192
|
+
See "the section on template code":#create_templates_erb for more information
|
193
|
+
on adding code to your templates.
|
194
|
+
|
195
|
+
*Some additional notes on formatting*
|
196
|
+
|
197
|
+
* Although you can directly assign to +format_opts+, this isn't recommended
|
198
|
+
since Ruby often interprets it as a local variable set rather than method call,
|
199
|
+
resulting in much head scratching as to why your options are being ignored.
|
200
|
+
|
201
|
+
* Note that *Formatting is applied _after_ any ERB has been evaluated.*
|
202
|
+
|
203
|
+
* that the options you supply are passed directly to RedCloth, so you can
|
204
|
+
exercise much more control over the formatting by using the feature-specific
|
205
|
+
symbols defined by RedCloth, rather than the blanket :textile and :markdown
|
206
|
+
symbols.
|
207
|
+
|
208
|
+
["top":#top]
|
209
|
+
|
210
|
+
<a name='create_templates_erb'/>
|
211
|
+
h4. Template code and ERB
|
212
|
+
|
213
|
+
All templates may contain embedded Ruby code (ERB), delimited by the standard
|
214
|
+
<% ... %> (for executed code) and <%= ... %> (for output) tags. Any
|
215
|
+
(valid) Ruby code may be placed in the templates, and variables may be defined to
|
216
|
+
allow information to be passed into templates. There are four places where
|
217
|
+
you might define such variables. The following is in order of evaluation:
|
218
|
+
|
219
|
+
* This directory's COMMON.rb, or the parent directory's COMMON.rb if
|
220
|
+
=inherit_common= is used.
|
221
|
+
* This page's ruby code, _basename_.rb
|
222
|
+
* In a block passed to Page.new
|
223
|
+
* In the template itself
|
224
|
+
|
225
|
+
When a =Rote::Page= instance is created, Rote looks for these, and if found
|
226
|
+
evaluates them, in order, in the same binding as the template is later rendered
|
227
|
+
in (i.e. the =Page= instance binding). Therefore, you can define
|
228
|
+
instance variables to pass data around, or even helper methods if you wish.
|
229
|
+
|
230
|
+
["top":#top]
|
231
|
+
|
232
|
+
<a name='create_templates_layout'/>
|
233
|
+
h4. Layout
|
234
|
+
|
235
|
+
Layouts are stored under the =doc/layouts= directory (by default). They may
|
236
|
+
be organised into subdirectories, but this hierarchy is not connected to
|
237
|
+
the hierarchy in =pages=. To apply a layout to a page, simply call the
|
238
|
+
=Rote::Page.layout= method from code applied to that page, passing the
|
239
|
+
base-name (and path, relative to =layouts=, if used). If no extension is
|
240
|
+
specified, then the same extension as the page itself is assumed. Examples:
|
241
|
+
|
242
|
+
<code><pre>
|
243
|
+
layout 'one'
|
244
|
+
layout 'main/wide'
|
245
|
+
layout 'dark.txt'
|
246
|
+
<% layout 'my' %>
|
247
|
+
</code></pre>
|
248
|
+
|
249
|
+
With that done, Rote would first render the template text (including textile)
|
250
|
+
and set the Page instance variable =@content_for_layout= before rendering
|
251
|
+
the layout (in which textile is currently not supported). The layout is
|
252
|
+
responsible for inserting the rendered template where appropriate, with
|
253
|
+
e.g.:
|
254
|
+
|
255
|
+
<code><pre> <%= @content_for_layout %></code></pre>
|
256
|
+
|
257
|
+
This pattern shouldn't be unfamiliar. Again, note that Rote doesn't mandate
|
258
|
+
HTML, despite the appearance from the ERB tags - any (textual) format can
|
259
|
+
be templated and laid out.
|
260
|
+
|
261
|
+
["top":#top]
|
262
|
+
|
263
|
+
<a name='resources'/>
|
264
|
+
h3. Resources
|
265
|
+
|
266
|
+
Of course, you're likely to have resources for your site (images, sounds, etc)
|
267
|
+
and you'll need to copy them over to the target too. Such resources should be
|
268
|
+
placed under 'res' (with the commandline setup) or in your specified +res+
|
269
|
+
directory, and will be copied directly to the output directory after page
|
270
|
+
rendering.
|
271
|
+
|
272
|
+
As you'd expect, the directory layout beneath =res= should mirror that of the
|
273
|
+
output, and will be preserved during the copy.
|
274
|
+
|
275
|
+
["top":#top]
|
276
|
+
|
277
|
+
<a name='publishing'/>
|
278
|
+
h3. Publishing
|
279
|
+
|
280
|
+
Rote does not provide any direct support for publishing your site at present,
|
281
|
+
relying on you to configure an appropriate publish task if required, using
|
282
|
+
the publishers supplied with Rake (in =rake/contrib=), or your own. This
|
283
|
+
allows maximum flexibility, and allows Rote to concentrate on creating your
|
284
|
+
documents.
|
285
|
+
|
286
|
+
The command-line build will automatically look for a file in the top-level
|
287
|
+
directory (above =doc=) named =publish.rf=. If found, this file will be
|
288
|
+
evaluated by Rake, making any tasks defined within it available to your
|
289
|
+
build. The most likely use case is to define a task that uses an SSH directory
|
290
|
+
publisher to publish via SCP.
|
291
|
+
|
292
|
+
["top":#top]
|
293
|
+
|
294
|
+
<a name='final_notes'/>
|
295
|
+
h3. Final notes
|
296
|
+
|
297
|
+
Currently, there isn't enough checking involved on source resources when
|
298
|
+
building pages - Basically, only templates are considered when Rake decides
|
299
|
+
what to update. If you change layouts, code or resources you'll need to run:
|
300
|
+
|
301
|
+
<pre><code> rote clean</code></pre>
|
302
|
+
|
303
|
+
to make sure everything gets updated. It's recommended to always run upload
|
304
|
+
as:
|
305
|
+
|
306
|
+
<pre><code> rote clean upload</code></pre>
|
307
|
+
|
308
|
+
Please note that this isn't Rake's limitation - it's mine. It will be fixed
|
309
|
+
in a later version of Rote.
|
310
|
+
|
311
|
+
["top":#top]
|
data/doc/pages/index.html
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
h2. Rote - A static website build tool for Ruby
|
2
|
-
|
3
1
|
*Rote is a simple page-based template system that was written to make it
|
4
2
|
easier to author and maintain non-dynamic websites and
|
5
3
|
offline documentation.* Rote provides a simple commandline or
|
@@ -9,12 +7,6 @@ rendering (optionally supporting Textile and Markdown with
|
|
9
7
|
"ERB":http://www.ruby-doc.org/stdlib/libdoc/erb/rdoc/classes/ERB.html), layout,
|
10
8
|
and general documentation / website build tasks.
|
11
9
|
|
12
|
-
Rote is somewhat similar to (though simpler than)
|
13
|
-
"WebGen":http://webgen.rubyforge.org , which provides a richer environment
|
14
|
-
geared more toward websites and content publishing (whereas Rote's
|
15
|
-
implementation as an extension to Rake reflects a bias toward software
|
16
|
-
documentation).
|
17
|
-
|
18
10
|
h3. Features
|
19
11
|
|
20
12
|
Rote offers the following major features:
|
@@ -29,44 +21,31 @@ Rote offers the following major features:
|
|
29
21
|
* Supports any (text-based) format, while providing utilities and helpers for
|
30
22
|
common formats (HTML at present).
|
31
23
|
|
32
|
-
|
24
|
+
Rote is somewhat similar to (though simpler than)
|
25
|
+
"WebGen":http://webgen.rubyforge.org , which provides a richer environment
|
26
|
+
geared more toward websites and content publishing (whereas Rote's
|
27
|
+
implementation as an extension to Rake reflects a bias toward software
|
28
|
+
documentation).
|
29
|
+
|
30
|
+
See the "User guide":<%= link_rel '/guide' %> and "RDoc":<%= link_rel '/rdoc' %> for usage information.
|
33
31
|
|
34
|
-
|
35
|
-
It should be also available as a RubyGem (rote-0.1.0) in the usual way.
|
36
|
-
The "README":rdoc/files/README.html has the most comprehensive user guide at the moment. Obviously, this
|
37
|
-
site is still under construction too.
|
32
|
+
h3. Download?
|
38
33
|
|
39
|
-
You can
|
34
|
+
You can get Rote via "RubyGems":http://rubyforge.org/projects/rubygems if you have it:
|
40
35
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
for everything you need to get going with the CVS version.
|
36
|
+
* <strong><code>gem install -r rote</code></strong>
|
37
|
+
|
38
|
+
Alternatively, you can download tarball / zip packages from:
|
45
39
|
|
46
|
-
|
40
|
+
* <strong>"http://rubyforge.org/frs/?group_id=1120":http://rubyforge.org/frs/?group_id=1120</strong>
|
47
41
|
|
48
|
-
|
49
|
-
<pre>
|
50
|
-
<code>
|
51
|
-
Copyright (c) 2005 Ross Bamford (and contributors)
|
42
|
+
You can also grab the latest code from "CVS":http://rubyforge.org/cgi-bin/viewcvs.cgi/?cvsroot=rote.
|
52
43
|
|
53
|
-
|
54
|
-
this software and associated documentation files (the "Software"), to deal in
|
55
|
-
the Software without restriction, including without limitation the rights to
|
56
|
-
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
57
|
-
of the Software, and to permit persons to whom the Software is furnished to do
|
58
|
-
so, subject to the following conditions:
|
44
|
+
h4. From CVS
|
59
45
|
|
60
|
-
|
61
|
-
copies or substantial portions of the Software.
|
46
|
+
A link to the latest stable release can be found from the "project page":http://rubyforge.org/projects/rote .
|
62
47
|
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
68
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
69
|
-
SOFTWARE.
|
70
|
-
</code>
|
71
|
-
</pre>
|
72
|
-
</ul>
|
48
|
+
Please note that Rote is still pretty new, and while currently fairly functional, it's
|
49
|
+
also still shiny and new, and liable to break down, destroy data, and run away with your spouse if
|
50
|
+
given half a chance. Sound like fun? Then check out the "Project page on Rubyforge":http://rubyforge.org/projects/rote
|
51
|
+
for everything you need to get going with the CVS version!
|
data/doc/pages/index.rb
CHANGED
@@ -1,4 +1,8 @@
|
|
1
|
-
#
|
2
|
-
#
|
3
|
-
|
4
|
-
|
1
|
+
# Page code for 'index.html'
|
2
|
+
#
|
3
|
+
# In practice, for something this simple you'd usually go with setting
|
4
|
+
# the var directly in the template, e.g.
|
5
|
+
#
|
6
|
+
# <% @page_title = 'Welcome!' %>
|
7
|
+
#
|
8
|
+
@page_title = 'Welcome!'
|
@@ -0,0 +1,27 @@
|
|
1
|
+
<% @page_title = 'Licence' %>
|
2
|
+
|
3
|
+
<ul>
|
4
|
+
<pre>
|
5
|
+
<code>
|
6
|
+
Copyright (c) 2005 Ross Bamford (and contributors)
|
7
|
+
|
8
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
9
|
+
this software and associated documentation files (the "Software"), to deal in
|
10
|
+
the Software without restriction, including without limitation the rights to
|
11
|
+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
12
|
+
of the Software, and to permit persons to whom the Software is furnished to do
|
13
|
+
so, subject to the following conditions:
|
14
|
+
|
15
|
+
The above copyright notice and this permission notice shall be included in all
|
16
|
+
copies or substantial portions of the Software.
|
17
|
+
|
18
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
19
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
20
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
21
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
22
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
23
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
24
|
+
SOFTWARE.
|
25
|
+
</code>
|
26
|
+
</pre>
|
27
|
+
</ul>
|
data/install.rb
CHANGED
@@ -85,5 +85,27 @@ for fn in files
|
|
85
85
|
File::install(File.join('lib', fn), File.join($sitedir, fn), 0644, true)
|
86
86
|
end
|
87
87
|
|
88
|
+
$mandir = CONFIG['mandir']
|
89
|
+
unless (!$mandir || CONFIG["target_os"] =~ /mswin/i) # manpages not doable on windows?
|
90
|
+
files = Dir.chdir('doc/man') { Dir['*.gz'] }
|
91
|
+
for fn in files
|
92
|
+
# maybe in locale dir
|
93
|
+
fdn = File.dirname(fn)
|
94
|
+
target_dir = $mandir
|
95
|
+
target_dir = File.join(target_dir, fdn) unless fdn == '.'
|
96
|
+
|
97
|
+
fbn = File.basename(fn)
|
98
|
+
if (fbn =~ /\.([0-9]*)(\.gz)?$/)
|
99
|
+
target_dir = File.join(target_dir,"man#{$~[1]}")
|
100
|
+
end
|
101
|
+
|
102
|
+
if ! File.exist?(target_dir)
|
103
|
+
File.makedirs(target_dir)
|
104
|
+
end
|
105
|
+
|
106
|
+
File::install(File.join('doc/man', fn), File.join(target_dir, fbn), 0644, true)
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
88
110
|
# and the executable
|
89
111
|
installBIN("bin/rote", "rote")
|
data/lib/rote.rb
CHANGED
@@ -28,7 +28,7 @@ require_gem 'rake'
|
|
28
28
|
require 'rote/rotetasks'
|
29
29
|
|
30
30
|
# Master Rote version. Manage this from the Rake release support.
|
31
|
-
ROTEVERSION = '0.1.
|
31
|
+
ROTEVERSION = '0.1.6'
|
32
32
|
|
33
33
|
#####
|
34
34
|
## *Rote* is a Rake (http://rake.rubyforge.org) based build tool for page-based
|
data/lib/rote/dirfilelist.rb
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
module Rote
|
2
2
|
|
3
|
+
|
4
|
+
# TODO untested
|
5
|
+
|
6
|
+
|
3
7
|
# An extension to the Rake +FileList+ class that allows a root
|
4
8
|
# directory to be specified.
|
5
9
|
class DirectoryFileList < FileList
|
@@ -8,17 +12,17 @@ module Rote
|
|
8
12
|
# patterns. You may also pass a block to perform additional
|
9
13
|
# configuration (e.g. if you have a lot of includes/excludes
|
10
14
|
# or just don't like arguments for whatever reason).
|
11
|
-
def initialize(basedir = '.', *patterns)
|
12
|
-
dir=(basedir)
|
15
|
+
def initialize(basedir = '.', *patterns)
|
13
16
|
super(*patterns)
|
17
|
+
self.dir = basedir
|
14
18
|
end
|
15
19
|
|
16
20
|
# The root directory from which this filelist matches. All patterns
|
17
21
|
# are considered relative to this directory.
|
18
|
-
|
22
|
+
attr_reader :dir
|
19
23
|
def dir=(newdir)
|
20
24
|
newdir = newdir.sub(/\/$/,'')
|
21
|
-
sub!(/^#{@dir}/,newdir)
|
25
|
+
self.sub!(/^#{@dir}/,newdir) unless self.empty?
|
22
26
|
@dir = newdir
|
23
27
|
end
|
24
28
|
|
data/lib/rote/page.rb
CHANGED
@@ -33,7 +33,7 @@ module Rote
|
|
33
33
|
# The default is [], which means 'No formatting'. This setting
|
34
34
|
# does not affect ERB rendering (which is always performed, before
|
35
35
|
# any formatting).
|
36
|
-
|
36
|
+
attr_reader :format_opts
|
37
37
|
def format_opts=(opts)
|
38
38
|
if !opts.nil? && opts.respond_to?(:to_ary)
|
39
39
|
@format_opts = opts
|
data/lib/rote/rotetasks.rb
CHANGED
@@ -91,8 +91,10 @@ module Rote
|
|
91
91
|
def define_page_tasks
|
92
92
|
|
93
93
|
# define a task for each page
|
94
|
+
realpages = FileList[]
|
94
95
|
pages.each { |fn|
|
95
96
|
unless File.directory?(fn) # make dirs only as needed
|
97
|
+
realpages << fn
|
96
98
|
tfn = fn.sub(/#{pages.dir}/, output_dir)
|
97
99
|
|
98
100
|
desc "#{fn} => #{tfn}" if show_page_tasks?
|
@@ -109,7 +111,7 @@ module Rote
|
|
109
111
|
|
110
112
|
# this is pretty convenient ;]
|
111
113
|
desc "Render all documentation pages"
|
112
|
-
task "#{name}-pages" =>
|
114
|
+
task "#{name}-pages" => realpages.sub(/#{pages.dir}/, output_dir)
|
113
115
|
end
|
114
116
|
|
115
117
|
def define_main_tasks
|
metadata
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
!ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
rubygems_version: 0.8.11
|
3
3
|
specification_version: 1
|
4
4
|
name: rote
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.1.
|
7
|
-
date: 2005-11-
|
6
|
+
version: 0.1.6
|
7
|
+
date: 2005-11-28 00:00:00 +00:00
|
8
8
|
summary: Adds template-based doc support to Rake.
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -61,6 +61,7 @@ files:
|
|
61
61
|
- doc/res
|
62
62
|
- doc/jamis.rb
|
63
63
|
- doc/pages
|
64
|
+
- doc/man
|
64
65
|
- doc/layouts
|
65
66
|
- doc/res/images
|
66
67
|
- doc/res/stylesheets
|
@@ -78,7 +79,12 @@ files:
|
|
78
79
|
- doc/res/stylesheets/normal.css
|
79
80
|
- doc/pages/COMMON.rb
|
80
81
|
- doc/pages/index.html
|
82
|
+
- doc/pages/guide
|
83
|
+
- doc/pages/license.html
|
81
84
|
- doc/pages/index.rb
|
85
|
+
- doc/pages/guide/COMMON.rb
|
86
|
+
- doc/pages/guide/index.html
|
87
|
+
- doc/man/rote.1.gz
|
82
88
|
- doc/layouts/page.html
|
83
89
|
test_files: []
|
84
90
|
|