mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
6b3719b757
The current code base is not uniform. After some discussion, we have chosen to go with double quotes by default.
79 lines
2.2 KiB
Ruby
79 lines
2.2 KiB
Ruby
namespace :guides do
|
|
|
|
desc 'Generate guides (for authors), use ONLY=foo to process just "foo.md"'
|
|
task :generate => "generate:html"
|
|
|
|
namespace :generate do
|
|
|
|
desc "Generate HTML guides"
|
|
task :html do
|
|
ENV["WARNINGS"] = "1" # authors can't disable this
|
|
ruby "rails_guides.rb"
|
|
end
|
|
|
|
desc "Generate .mobi file. The kindlegen executable must be in your PATH. You can get it for free from http://www.amazon.com/gp/feature.html?docId=1000765211"
|
|
task :kindle do
|
|
unless `kindlerb -v 2> /dev/null` =~ /kindlerb 0.1.1/
|
|
abort "Please `gem install kindlerb` and make sure you have `kindlegen` in your PATH"
|
|
end
|
|
unless `convert` =~ /convert/
|
|
abort "Please install ImageMagick`"
|
|
end
|
|
ENV["KINDLE"] = "1"
|
|
Rake::Task["guides:generate:html"].invoke
|
|
end
|
|
end
|
|
|
|
# Validate guides -------------------------------------------------------------------------
|
|
desc 'Validate guides, use ONLY=foo to process just "foo.html"'
|
|
task :validate do
|
|
ruby "w3c_validator.rb"
|
|
end
|
|
|
|
desc "Show help"
|
|
task :help do
|
|
puts <<-help
|
|
|
|
Guides are taken from the source directory, and the result goes into the
|
|
output directory. Assets are stored under files, and copied to output/files as
|
|
part of the generation process.
|
|
|
|
You can generate HTML, Kindle or both formats using the `guides:generate` task.
|
|
|
|
All of these processes are handled via rake tasks, here's a full list of them:
|
|
|
|
#{%x[rake -T]}
|
|
Some arguments may be passed via environment variables:
|
|
|
|
WARNINGS=1
|
|
Internal links (anchors) are checked, also detects duplicated IDs.
|
|
|
|
ALL=1
|
|
Force generation of all guides.
|
|
|
|
ONLY=name
|
|
Useful if you want to generate only one or a set of guides.
|
|
|
|
Generate only association_basics.html:
|
|
ONLY=assoc
|
|
|
|
Separate many using commas:
|
|
ONLY=assoc,migrations
|
|
|
|
GUIDES_LANGUAGE
|
|
Use it when you want to generate translated guides in
|
|
source/<GUIDES_LANGUAGE> folder (such as source/es)
|
|
|
|
EDGE=1
|
|
Indicate generated guides should be marked as edge.
|
|
|
|
Examples:
|
|
$ rake guides:generate ALL=1
|
|
$ rake guides:generate EDGE=1
|
|
$ rake guides:generate:kindle EDGE=1
|
|
$ rake guides:generate GUIDES_LANGUAGE=es
|
|
help
|
|
end
|
|
end
|
|
|
|
task :default => "guides:help"
|