(すべての)RailsのRDOCを生成するにはどうすればよいですか?
-
05-07-2019 - |
質問
できること
sudo gem rdoc activerecord --no-ri
and
sudo gem rdoc actionpack --no-ri
どちらも良いドキュメントを提供してくれます。
しかし
sudo gem rdoc rails --no-ri
Rails gem自体は実際には他の人の単なるホルダーであるため、ほとんど何もしません。 http://api.rubyonrails.org/ に相当するものを生成するにはどうすればよいですか?
解決 2
私が見つけた最も簡単な方法は、 railsapi.com からダウンロードして、ファイルを / Libraryに展開することです。 /Ruby/Gems/1.8/doc/rails-2.3.3/rdoc /
他のヒント
sudo gem rdoc --all --overwrite
rdocでレールをインストールした場合(sudo gem install rails)
からアクセスできますgem server
以下は、 http:/に相当する、ローカルにマシンにダウンロードされたrails 3.1ドキュメントを取得する方法の手順を少し明確にする試みです。 /api.rubyonrails.org/
- https://github.com/voloko/sdoc のsdocプロジェクトに移動して、プロジェクトを取得します(または単に実行します) gem install sdoc)
- でRailsプロジェクトにアクセスし、https://github.com/rails/rails でローカルマシンにgit clone
- railsクローンに移動して、sdoc -N railsを実行します
- これにはしばらく時間がかかります。完了すると、docという新しいディレクトリが作成されます
- docディレクトリを好きな場所に移動して、ブラウザでindex.htmlファイルを開くことができます。これが機能するためにWebサーバーは必要ないことに注意してください。
補足として、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
RDocはdoc / apiディレクトリに配置する必要があります。 rake rails:freeze:edge
を使用して、Edge Railsのドキュメントを取得できます。
または、 Rails Brain などのサイトからドキュメントをダウンロードして、検索可能なテンプレートを取得できます。まあ。
ドキュメントを gemサーバー
に表示する場合、最も簡単な方法は、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
エッジドキュメントを生成する必要がある場合は、次のようなことを実行できます
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