[英]How do I generate RDOC for (all of) Rails?
我可以
sudo gem rdoc activerecord --no-ri
和
sudo gem rdoc actionpack --no-ri
两者都给我很好的文档。
但
sudo gem rdoc rails --no-ri
给我几乎没有任何东西,因为Rails宝石本身实际上只是其他宝石的持有者。 如何生成等效的http://api.rubyonrails.org/ ?
sudo gem rdoc --all --overwrite
我发现最简单的方法是从railsapi.com下载它们,然后将文件解压缩到/Library/Ruby/Gems/1.8/doc/rails-2.3.3/rdoc/
如果您使用rdoc(sudo gem install rails)安装了rails,则可以通过以下方式访问它
gem server
以下是我的尝试,以澄清一些步骤,以了解如何获取与本地http://api.rubyonrails.org/等效的Rails 3.1文档下载到您的计算机。
附带说明一下,看来sdoc已正式成为Ruby on Rails API的文档(请参阅http://weblog.rubyonrails.org/2011/8/29/the-rails-api-switches-to-sdoc )
您可以在应用程序中冻结Rails并运行rake doc:rails
来获取文档。
rails doc_project
cd doc_project
rake rails:freeze
rake doc:rails
RDocs应该位于doc / api目录中。 您可以使用rake rails:freeze:edge
获取Edge Rails的文档。
另外,您也可以从Rails Brain这样的网站下载文档,以获取可搜索的模板。
如果您希望文档显示在gem server
那么最简单的方法可能是使用rdoc选项重新安装rails gem。
sudo gem install rails --rdoc
在命令行上运行命令bundle exec rdoc
。
它将生成代码的所有文档。
desc "Generate documentation for the Rails framework"
Rake::RDocTask.new do |rdoc|
rdoc.rdoc_dir = 'doc/rdoc'
rdoc.title = "Ruby on Rails Documentation"
rdoc.options << '--line-numbers' << '--inline-source'
rdoc.options << '-A cattr_accessor=object'
rdoc.options << '--charset' << 'utf-8'
rdoc.template = ENV['template'] ? "#{ENV['template']}.rb" : './doc/template/horo'
rdoc.rdoc_files.include('railties/CHANGELOG')
rdoc.rdoc_files.include('railties/MIT-LICENSE')
rdoc.rdoc_files.include('railties/README')
rdoc.rdoc_files.include('railties/lib/{*.rb,commands/*.rb,rails/*.rb,rails_generator/*.rb}')
rdoc.rdoc_files.include('activerecord/README')
rdoc.rdoc_files.include('activerecord/CHANGELOG')
rdoc.rdoc_files.include('activerecord/lib/active_record/**/*.rb')
rdoc.rdoc_files.exclude('activerecord/lib/active_record/vendor/*')
rdoc.rdoc_files.include('activeresource/README')
rdoc.rdoc_files.include('activeresource/CHANGELOG')
rdoc.rdoc_files.include('activeresource/lib/active_resource.rb')
rdoc.rdoc_files.include('activeresource/lib/active_resource/*')
rdoc.rdoc_files.include('actionpack/README')
rdoc.rdoc_files.include('actionpack/CHANGELOG')
rdoc.rdoc_files.include('actionpack/lib/action_controller/**/*.rb')
rdoc.rdoc_files.include('actionpack/lib/action_view/**/*.rb')
rdoc.rdoc_files.exclude('actionpack/lib/action_controller/vendor/*')
rdoc.rdoc_files.include('actionmailer/README')
rdoc.rdoc_files.include('actionmailer/CHANGELOG')
rdoc.rdoc_files.include('actionmailer/lib/action_mailer/base.rb')
rdoc.rdoc_files.exclude('actionmailer/lib/action_mailer/vendor/*')
rdoc.rdoc_files.include('activesupport/README')
rdoc.rdoc_files.include('activesupport/CHANGELOG')
rdoc.rdoc_files.include('activesupport/lib/active_support/**/*.rb')
rdoc.rdoc_files.exclude('activesupport/lib/active_support/vendor/*')
end
# Enhance rdoc task to copy referenced images also
task :rdoc do
FileUtils.mkdir_p "doc/rdoc/files/examples/"
FileUtils.copy "activerecord/examples/associations.png", "doc/rdoc/files/examples/associations.png"
end
如果您需要生成Edge文档,则可以执行以下操作
git clone git://github.com/rails/rails.git ~/rails
# or if you have repo, just checkout interested branch
cd ~
ruby ~/rails/railties/bin/rails docapp
cd docapp
ln -s ~/rails vendor/rails
rake doc:rerails
rake doc:guides
$ rake rails:freeze:gems
$ rake doc:rails
$ rake rails:unfreeze
$ sudo mv doc/api/* /Library/Ruby/Gems/1.8/doc/rails-2.3.5/rdoc
$ gem server
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.