Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,6 @@
# Ignore bundler artifacts
bin
bundle

source/documentation/**/**/css
source/documentation/**/**/js
11 changes: 11 additions & 0 deletions config.rb
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
activate :syntax
activate :directory_indexes

page "documentation/**/*.html", directory_index: false

set :css_dir, 'stylesheets'
set :js_dir, 'javascripts'
set :images_dir, 'images'
Expand Down Expand Up @@ -68,4 +70,13 @@ def asciinema_video(id, speed: 1)
|</div>
HTML
end

def rspec_documentation
hash = Hash.new { |h,k| h[k] = [] }
Dir["#{root}/source/documentation/*/*"].each do |dir|
version, gem = dir.scan(%r{/source/documentation/([^/]+)/([^/]+)}).first.flatten
hash[gem] << version
end
hash
end
end
14 changes: 14 additions & 0 deletions docs-template/default/layout/html/headers.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<meta http-equiv="Content-Type" content="text/html; charset=<%= charset %>" />
<title>
<%= h @page_title %>
<% if options.title && @page_title != options.title %>
&mdash; <%= h options.title %>
<% end %>
</title>
<% stylesheets.each do |stylesheet| %>
<link rel="stylesheet" href="<%= url_for(stylesheet) %>" type="text/css" charset="utf-8" />
<% end %>
<%= erb :script_setup %>
<% javascripts.each do |javascript| %>
<script type="text/javascript" charset="utf-8" src="<%= url_for(javascript)%>"></script>
<% end %>
27 changes: 27 additions & 0 deletions docs-template/plugin.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
module TagsTemplateHelper

def url_for(*args)
super
.gsub(/^[\.\/]*/,'/') # Makes paths absolute
.gsub(/^[\.\/]*css/, '/stylesheets/docs') # Links to our css
.gsub(/^[\.\/]*js/, '/javascripts/docs') # Links to our js
end

def url_for_file(*args)
super.gsub(/^[\.\/]*/,'/')
end

end

module YARD
module Templates::Helpers

module HtmlHelper

def url_for_list(*args)
super.gsub(/^[\.\/]*/,'/')
end

end
end
end
1 change: 1 addition & 0 deletions lib/yard-rspec-docs-template.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
YARD::Templates::Engine.register_template_path Pathname.new(File.dirname(__FILE__)).join('..', 'docs-template')
13 changes: 8 additions & 5 deletions source/documentation.html.slim
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,13 @@ section
h2 API Documentation

p
| You can find detailed API documentation on the Rubydoc.info site:
| You can find detailed API documentation for versions below

ul
li= link_to 'http://rubydoc.info/gems/rspec-core', 'http://rubydoc.info/gems/rspec-core'
li= link_to 'http://rubydoc.info/gems/rspec-expectations', 'http://rubydoc.info/gems/rspec-expectations'
li= link_to 'http://rubydoc.info/gems/rspec-mocks', 'http://rubydoc.info/gems/rspec-mocks'
li= link_to 'http://rubydoc.info/gems/rspec-rails', 'http://rubydoc.info/gems/rspec-rails'
- rspec_documentation.each do |gem, versions|
li
b
| #{gem}:&nbsp;
- versions.sort.reverse.each do |version|
= link_to version, "/documentation/#{version}/#{gem}/"
| &nbsp;
Loading