Когда я работаю rake doc:app
в моем корневом каталоге приложения направляющих документы API сгенерированы с помощью /doc/README_FOR_APP
как домашняя страница. Я хотел бы добавить a .rdoc
расширение того файла, таким образом, это правильно представляется на GitHub. Еще лучше я хотел бы переместить его в корень приложения (/README.rdoc
). Есть ли способ выполнить в этом мой Rakefile
путем изменения включенного rake/rdoctask
задача? Есть ли некоторое место, оно ищет название файла домашней страницы, который может быть изменен? Или я должен записать новую задачу Граблей?
Вопрос о премии: что является логикой позади двух отдельных файлов /README
и /doc/README_FOR_APP
для приложений направляющих? Почему не всего один?
Задача RDOC RDOC находится в
, чтобы делать то, что вы хотите, возьмите задачу: приложение и измените его, помещая его в файл. Ваше приложение / lib / tasks
#clear the doc:app task et al
Rake::Task["doc:app"].clear
Rake::Task["doc/app"].clear
Rake::Task["doc/app/index.html"].clear
namespace :doc do
desc "Generate documentation for the application. Set custom template with TEMPLATE=/path/to/rdoc/template.rb or title with TITLE=\"Custom Title\""
Rake::RDocTask.new("app") { |rdoc|
rdoc.rdoc_dir = 'doc/app'
rdoc.template = ENV['template'] if ENV['template']
rdoc.title = ENV['title'] || "Rails Application Documentation"
rdoc.options << '--line-numbers' << '--inline-source'
rdoc.options << '--charset' << 'utf-8'
rdoc.rdoc_files.include('app/**/*.rb')
rdoc.rdoc_files.include('lib/**/*.rb')
rdoc.rdoc_files.include('README')
rdoc.main = 'README'
}
end
Я не уверен, что именно именно это именно, но играйте с ним и посмотрите на задача Docks rdoc для получения дополнительной информации.
Если вы создаете же задачу в вашей локальной папке приложения, скажите, lib / Tasks / doc.Rake
и определите такую же задачу, как это:
namespace :doc do
task :app do
# some code that adds rdoc extension
end
end
, тогда эта задача будет запущена сразу после Rails ' Встроенная задача. Следовательно, вам не придется беспорядок с источниками рельсов и все же добиться своей цели.
файл Readme_for_app
создается при создании новых приложений Rails. Этот код находится в рельсов - #. #. #. #. #. #. # \ Lib \ rails_generator \ generators \ application \ app \ app_generator.rb
.
Чтобы добавить суффикс и изменить местоположение для всех ваших приложений Rails, вы можете изменить метод:
def create_documentation_file(m)
# was m.file "doc/README_FOR_APP", "doc/README_FOR_APP"
m.file "doc/README_FOR_APP", "README_FOR_APP.rdoc"
end
, то вам нужно изменить задачу документации Rake, чтобы включить этот файл, а не старый, в Rails - #. #. # \ Lib \ Tasks \ Documentation.Rake
:
Rake::RDocTask.new("app") { |rdoc|
...
rdoc.rdoc_files.include('README_FOR_APP.rdoc') # was 'doc/README_FOR_APP'
}
README_FOR_APP
, как имя подразумевает документацию для
Ваш специфические применение рельсов, это касается
классы и методы, которые вы будете
написал. README
Общие Документальные средства для всех приложений Rails, описывающие структуру
приложения Rails и некоторых настроек веб-сервера. Это на более высоком уровне, чем readme_for_app
.
Как совет, я бы посоветовал вам сохранить оба файла, так и не переименовывать их (не забывайте о конфиденциации Rail по сравнению с конфигурацией . Любые рельсы будут ожидать, что эти файлы будут там, и переименовать их, может сделать все сложнее.
Эта конвенция может также использоваться вашим IDE. Например, я использую NetBeans, а представление проекта Rails предварительно сконфигурировано для отображения определенных файлов. Если вы переместите файл readme_for_app
в корневой каталог, NetBeans не будет отображать его в представлении проекта, вам придется использовать представление файла или изменять представление проекта (не знаю, если это даже возможно).