私は、適切な形式で自分のRDocに私README.textileを得ることができますか?
質問
私は私のプロジェクトのためのreadmeファイルを書き込むために織物や記法を使用したいが、私はRDocとを生成するときreadmeファイルはRDocとし、ルックスは本当に恐ろしいと解釈されます。 RDocは独自のフォーマッタの代わりにRedClothまたはBlueClothを通じてファイルを実行する方法はありますか?ファイル拡張子から書式設定を自動検出するように構成することができますか? (例えばREADME.textileはRedClothを介して実行されますが、README.mdownはBlueClothを介して実行されます)
解決
あなたは繊維や値下げは長い間そのファイルの拡張子が合理的であるなどのファイルが含まようになる直接のRDocのの代わりに YARDを使用します。私は、多くの場合、以下のrakeタスクのようなものを使用します:
desc "Generate RDoc"
task :doc => ['doc:generate']
namespace :doc do
project_root = File.expand_path(File.join(File.dirname(__FILE__), '..'))
doc_destination = File.join(project_root, 'doc', 'rdoc')
begin
require 'yard'
require 'yard/rake/yardoc_task'
YARD::Rake::YardocTask.new(:generate) do |yt|
yt.files = Dir.glob(File.join(project_root, 'lib', '**', '*.rb')) +
[ File.join(project_root, 'README.md') ]
yt.options = ['--output-dir', doc_destination, '--readme', 'README.md']
end
rescue LoadError
desc "Generate YARD Documentation"
task :generate do
abort "Please install the YARD gem to generate rdoc."
end
end
desc "Remove generated documenation"
task :clean do
rm_r doc_dir if File.exists?(doc_destination)
end
end
他のヒント
あなたはgithubの上でプロジェクトをホストしている場合、あなたはまた、自動的に http://rdoc.info に使用し構築し、公開することができますYARDを使用してrdocs。
私は「何か」が先行したの 26819のコードを実現するが、私はに走った問題があります。
:答えに私の編集はので、ここでの固定バージョンが(編集がコメントされている)で、拒否されましたdesc "Generate RDoc"
task :doc => ['doc:generate']
namespace :doc do
# edit: typically (for gems, at least), Rakefile is in the root, so ".", not ".."
project_root = File.expand_path(File.join(File.dirname(__FILE__), '.'))
doc_destination = File.join(project_root, 'doc', 'rdoc')
begin
require 'yard'
require 'yard/rake/yardoc_task'
YARD::Rake::YardocTask.new(:generate) do |yt|
# edit: README.md is not a ruby source file - see
# https://stackoverflow.com/questions/7907698/yard-0-7-3-fails-to-build-my-readme-in-both-markdown-and-textile
# remove README.md from yt.files
yt.files = Dir.glob(File.join(project_root, 'lib', '**', '*.rb'))
yt.options = ['--output-dir', doc_destination, '--readme', 'README.md']
end
rescue LoadError
desc "Generate YARD Documentation"
task :generate do
abort "Please install the YARD gem to generate rdoc."
end
end
desc "Remove generated documenation"
task :clean do
#edit: doc_dir was undefined; replaced by doc_destination
rm_r doc_destination if File.exists?(doc_destination)
end
end
所属していません StackOverflow