rake task for generating rdoc with hanna template

This uses the hanna command shipped with the hanna gem. The
preferred method of using is to require 'hanna/rdoctask' in
your Rakefile but this caused various gem depency errors (blame
Hoe, rdoc 2.0, Echoe, and rubyforge).

You have to install mislav's hanna gem from github:

  $ sudo gem install mislav-hanna --source=http://gems.github.com

Run the doc task to generate rdoc under doc/api:

  $ rake doc

See mislav's repo for more info on template usage:

  http://github.com/mislav/hanna

See the HAML docs for an example of the hanna template in action:

  http://haml.hamptoncatlin.com/docs/rdoc
This commit is contained in:
Ryan Tomayko 2008-05-27 09:18:56 -04:00
parent e31941dd92
commit 0e367a5241
1 changed files with 23 additions and 0 deletions

View File

@ -44,3 +44,26 @@ end
file package('.tar.gz') => %w[dist/] + spec.files do |f|
sh "git archive --format=tar HEAD | gzip > #{f.name}"
end
# Hanna RDoc =========================================================
#
# Building docs requires the hanna gem:
# gem install mislav-hanna --source=http://gems.github.com
desc 'Generate Hanna RDoc under doc/api'
task :doc => ['doc/api/index.html']
file 'doc/api/index.html' => FileList['lib/**/*.rb','README.rdoc'] do |f|
rb_files = f.prerequisites
sh((<<-end).gsub(/\s+/, ' '))
hanna --charset utf8 \
--fmt html \
--inline-source \
--line-numbers \
--main README.rdoc \
--op doc/api \
--title 'Sinatra API Documentation' \
#{rb_files.join(' ')}
end
end
CLEAN.include 'doc/api'