rdoc-babel 0.9.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2f7ec88ffbcd36a682da0814c2f89b107448be7e
4
+ data.tar.gz: 77ca385dee05d1d29333c848954e4c2049876403
5
+ SHA512:
6
+ metadata.gz: ec85494b8e8c08baae241cf95072ab0efbadd7746a52caacbb7db4880a486e75d73859131ef5065b53cd6f90f09ff378a58cd7daad94a2cc46dfc11d108c6b6c
7
+ data.tar.gz: d041bee6d46b9721f7aaba7d1d71e2b13dffc6896bbb9bbcd47363142fa05f2e1dfd608b7c6ecf9b1767f4154dc9bdadf6ffe502050de4e7ffe79e2dedeb565c
data/HISTORY.rdoc CHANGED
@@ -6,3 +6,7 @@ Initial version, developed along with {RDoc}[http://github.com/rdoc/rdoc] 3.0.
6
6
  === 0.9.1 / 2011-07-16
7
7
 
8
8
  First public release.
9
+
10
+ === 1.0.0 / 2014-07-20
11
+
12
+ Make it compatible with RDoc 4.1 and its bugs.
data/Rakefile CHANGED
@@ -1,9 +1,9 @@
1
- require 'rubygems'
2
1
  require 'hoe'
3
2
 
4
3
  Hoe.spec 'rdoc-babel' do
5
4
 
6
- developer('Thierry Lambert', 'thyresias@gmail.com')
5
+ developer 'Thierry Lambert', 'thyresias@gmail.com'
6
+ license 'MIT'
7
7
 
8
8
  self.summary = "An RDoc formatter producing HTML documentation."
9
9
  self.description = paragraphs_of('README.rdoc', 3, 6).join("\n\n")
@@ -14,20 +14,15 @@ Hoe.spec 'rdoc-babel' do
14
14
 
15
15
  self.remote_rdoc_dir = ''
16
16
  self.testlib = :minitest
17
+ # self.test_prelude = %(gem "minitest")
17
18
 
18
- self.extra_deps << ['rdoc', '~> 3.0']
19
+ self.extra_deps << ['rdoc', '~> 4.1']
19
20
 
20
- self.extra_dev_deps << ['minitest', '>= 1.7']
21
- self.extra_dev_deps << ['nokogiri', '~> 1.4']
21
+ self.extra_dev_deps << ['minitest', '~> 5.4']
22
+ self.extra_dev_deps << ['nokogiri', '~> 1.6']
22
23
 
23
- spec_extras[:homepage] = 'http://github.com/thyresias/babel'
24
- spec_extras[:rdoc_options] = [
25
- '--main', 'README.rdoc',
26
- ]
27
-
28
- #spec_extras[:post_install_message] = <<-EOS
29
- # the crash for creating Babel documentation is due to a RubyGem bug
30
- #EOS
24
+ spec_extras[:homepage] = 'http://github.com/thyresias/rdoc-babel'
25
+ spec_extras[:rdoc_options] = %w(--main README.rdoc)
31
26
 
32
27
  end
33
28
 
@@ -35,4 +30,4 @@ task :file_list do
35
30
  puts Dir['*'].reject { |f| File.directory? f }
36
31
  puts Dir['lib/**/*'].reject { |f| File.directory? f }
37
32
  puts Dir['test/**/*'].reject { |f| File.directory? f }
38
- end
33
+ end
data/lib/rdoc/discover.rb CHANGED
@@ -1 +1 @@
1
- require 'rdoc/generator/babel'
1
+ require_relative 'generator/babel'
@@ -1,11 +1,32 @@
1
- require 'rdoc'
2
- require 'rdoc/rdoc'
1
+ # require 'rdoc'
2
+ # require 'rdoc/rdoc'
3
3
  #require 'rdoc/generator'
4
4
  require 'pathname'
5
5
  require 'fileutils'
6
6
  require 'erb'
7
7
 
8
- require 'rdoc/generator/markup'
8
+ # require 'rdoc/generator/markup'
9
+
10
+ # remove junk <span> at the end
11
+ class RDoc::Markup::ToHtml
12
+
13
+ undef accept_heading
14
+
15
+ def accept_heading heading
16
+ level = [6, heading.level].min
17
+
18
+ label = heading.label @code_object
19
+
20
+ @res << if @options.output_decoration
21
+ "\n<h#{level} id=\"#{label}\">"
22
+ else
23
+ "\n<h#{level}>"
24
+ end
25
+ @res << to_html(heading.text)
26
+ @res << "</h#{level}>\n"
27
+ end
28
+
29
+ end
9
30
 
10
31
  ##
11
32
  # Babel RDoc HTML Generator.
@@ -105,7 +126,8 @@ class RDoc::Generator::Babel
105
126
 
106
127
  # Saves the options, makes sure the template is found.
107
128
 
108
- def initialize(options)
129
+ def initialize(store, options)
130
+ @store = store
109
131
  @options = options
110
132
  @babel_options = options.babel_options
111
133
  @see_standard_ancestors = @babel_options[:see_standard_ancestors]
@@ -132,19 +154,19 @@ class RDoc::Generator::Babel
132
154
 
133
155
  # Generates the documentation.
134
156
 
135
- def generate(top_levels)
157
+ def generate
136
158
 
137
159
  # set instance variables
138
160
 
139
161
  @output_dir = Pathname.new(@options.op_dir).expand_path(@source_dir)
140
- @all_classes_and_modules = RDoc::TopLevel.all_classes_and_modules.sort
141
- @unique_classes_and_modules = RDoc::TopLevel.unique_classes_and_modules.sort
162
+ @all_classes_and_modules = @store.all_classes_and_modules.sort
163
+ @unique_classes_and_modules = @store.unique_classes_and_modules.sort
142
164
 
143
165
  @all_methods = @unique_classes_and_modules.
144
166
  inject([]) { |a,m| a.concat m.method_list }.
145
167
  sort { |a,b| [a, a.parent_name] <=> [b, b.parent_name] }
146
168
 
147
- @all_files = top_levels # not sorted: keep command line order
169
+ @all_files = @store.all_files # not sorted: keep command line order
148
170
  @files_with_comment = @all_files.reject { |f| f.comment.empty? }
149
171
  @simple_files = @files_with_comment.select { |f| f.parser == RDoc::Parser::Simple }
150
172
 
@@ -374,6 +396,7 @@ protected
374
396
  # describing method +from+.
375
397
 
376
398
  def link(from, to)
399
+ to.parent = from.parent unless to.parent # HACK: to.parent may be nil
377
400
  href = from.parent.aref_to(to.path)
378
401
  to_parent = to.parent.full_name.dup
379
402
  if @options.show_hash
@@ -32,11 +32,7 @@
32
32
  <h3>Requires</h3>
33
33
  <ul>
34
34
  <% @file.requires.each do |r| %>
35
- <% if (tl = r.top_level) %>
36
- <li><a href="<%= @rel_prefix %>/<%= h tl.path %>"><%= r.name %></a></li>
37
- <% else %>
38
- <li><%= r.name %></li>
39
- <% end %>
35
+ <li><%= r.name %></li>
40
36
  <% end %>
41
37
  </ul>
42
38
  <% end %>
data/lib/rdoc_babel.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module RDocBabel
2
- VERSION = '0.9.1'
2
+ VERSION = '1.0.0'
3
3
  end
@@ -1,10 +1,10 @@
1
- require 'rubygems'
1
+ require 'rdoc'
2
2
  require 'rdoc/generator/babel'
3
3
  require 'minitest/autorun'
4
4
  require 'tmpdir'
5
5
  require 'nokogiri'
6
6
 
7
- class TestRDocGeneratorBabel < MiniTest::Unit::TestCase
7
+ class TestRDocGeneratorBabel < Minitest::Test
8
8
 
9
9
  def setup
10
10
 
@@ -97,7 +97,7 @@ class TestRDocGeneratorBabel < MiniTest::Unit::TestCase
97
97
 
98
98
  refs = classes.css('a')
99
99
  assert_equal 3, refs.length
100
- assert_equal "Mod2::Mod3 \342\206\222 Mod1", refs.last.content
100
+ assert_equal "Mod2::Mod3 \u2192 Mod1", refs.last.content
101
101
  assert_equal 'classes/Mod1.html', refs.last['href']
102
102
 
103
103
  methods = doc.at_css('#method-index')
@@ -230,10 +230,11 @@ private
230
230
 
231
231
  def babel_gen
232
232
  @babel_gen ||= begin
233
+ store = RDoc::Store.new
233
234
  options = Struct.new(:babel_options, :line_numbers, :template).new
234
235
  options.template = 'babel'
235
236
  options.babel_options = {}
236
- RDoc::Generator::Babel.new(options)
237
+ RDoc::Generator::Babel.new(store, options)
237
238
  end
238
239
  end
239
240
 
metadata CHANGED
@@ -1,86 +1,75 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: rdoc-babel
3
- version: !ruby/object:Gem::Version
4
- hash: 57
5
- prerelease:
6
- segments:
7
- - 0
8
- - 9
9
- - 1
10
- version: 0.9.1
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - Thierry Lambert
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2011-07-17 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
11
+ date: 2014-07-21 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
21
14
  name: rdoc
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- none: false
25
- requirements:
26
- - - ~>
27
- - !ruby/object:Gem::Version
28
- hash: 7
29
- segments:
30
- - 3
31
- - 0
32
- version: "3.0"
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.1'
33
20
  type: :runtime
34
- version_requirements: *id001
35
- - !ruby/object:Gem::Dependency
36
- name: minitest
37
21
  prerelease: false
38
- requirement: &id002 !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- hash: 1
44
- segments:
45
- - 1
46
- - 7
47
- version: "1.7"
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: minitest
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '5.4'
48
34
  type: :development
49
- version_requirements: *id002
50
- - !ruby/object:Gem::Dependency
51
- name: nokogiri
52
35
  prerelease: false
53
- requirement: &id003 !ruby/object:Gem::Requirement
54
- none: false
55
- requirements:
56
- - - ~>
57
- - !ruby/object:Gem::Version
58
- hash: 7
59
- segments:
60
- - 1
61
- - 4
62
- version: "1.4"
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '5.4'
41
+ - !ruby/object:Gem::Dependency
42
+ name: nokogiri
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.6'
63
48
  type: :development
64
- version_requirements: *id003
65
- - !ruby/object:Gem::Dependency
66
- name: hoe
67
49
  prerelease: false
68
- requirement: &id004 !ruby/object:Gem::Requirement
69
- none: false
70
- requirements:
71
- - - ~>
72
- - !ruby/object:Gem::Version
73
- hash: 23
74
- segments:
75
- - 2
76
- - 10
77
- version: "2.10"
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.6'
55
+ - !ruby/object:Gem::Dependency
56
+ name: hoe
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.12'
78
62
  type: :development
79
- version_requirements: *id004
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.12'
80
69
  description: |-
81
70
  Babel is an RDoc formatter producing HTML documentation.
82
71
  The default template is +ruby-lang+.
83
-
72
+
84
73
  - Look and feel inspired from ruby-lang.org[http://www.ruby-lang.org/].
85
74
  - Dual-frame output, with indexes on the left.
86
75
  - Search boxes for classes and methods.
@@ -89,22 +78,21 @@ description: |-
89
78
  - Adds links to ancestor methods/attributes.
90
79
  - Borrows some ideas (and one icon) from Darkfish.
91
80
  - Tested on Firefox 3.5 & 5, Chrome 9 & 12, Safari 4 & 5.
92
- email:
81
+ email:
93
82
  - thyresias@gmail.com
94
83
  executables: []
95
-
96
84
  extensions: []
97
-
98
- extra_rdoc_files:
85
+ extra_rdoc_files:
86
+ - HISTORY.rdoc
99
87
  - Manifest.txt
100
88
  - README.rdoc
101
- - HISTORY.rdoc
102
- files:
103
- - .autotest
89
+ files:
90
+ - ".autotest"
91
+ - ".gemtest"
104
92
  - HISTORY.rdoc
105
93
  - Manifest.txt
106
- - Rakefile
107
94
  - README.rdoc
95
+ - Rakefile
108
96
  - lib/rdoc/discover.rb
109
97
  - lib/rdoc/generator/babel.rb
110
98
  - lib/rdoc/generator/ruby-lang/class-page.html.erb
@@ -118,50 +106,41 @@ files:
118
106
  - lib/rdoc/generator/ruby-lang/scripts/jquery.quicksearch.js
119
107
  - lib/rdoc/generator/ruby-lang/scripts/mainFrame.js
120
108
  - lib/rdoc_babel.rb
109
+ - test/data/HISTORY.rdoc
110
+ - test/data/README.rdoc
121
111
  - test/data/ancestors.rb
122
112
  - test/data/commented.rb
123
113
  - test/data/context_alias.rb
124
- - test/data/HISTORY.rdoc
125
114
  - test/data/main_file.rb
126
- - test/data/not_commented.rb
127
115
  - test/data/no_class_nor_module.rb
128
116
  - test/data/no_content.rb
129
- - test/data/README.rdoc
117
+ - test/data/not_commented.rb
130
118
  - test/test_rdoc_generator_babel.rb
131
- - .gemtest
132
- homepage: http://github.com/thyresias/babel
133
- licenses: []
134
-
119
+ homepage: http://github.com/thyresias/rdoc-babel
120
+ licenses:
121
+ - MIT
122
+ metadata: {}
135
123
  post_install_message:
136
- rdoc_options:
137
- - --main
124
+ rdoc_options:
125
+ - "--main"
138
126
  - README.rdoc
139
- require_paths:
127
+ require_paths:
140
128
  - lib
141
- required_ruby_version: !ruby/object:Gem::Requirement
142
- none: false
143
- requirements:
129
+ required_ruby_version: !ruby/object:Gem::Requirement
130
+ requirements:
144
131
  - - ">="
145
- - !ruby/object:Gem::Version
146
- hash: 3
147
- segments:
148
- - 0
149
- version: "0"
150
- required_rubygems_version: !ruby/object:Gem::Requirement
151
- none: false
152
- requirements:
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ required_rubygems_version: !ruby/object:Gem::Requirement
135
+ requirements:
153
136
  - - ">="
154
- - !ruby/object:Gem::Version
155
- hash: 3
156
- segments:
157
- - 0
158
- version: "0"
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
159
139
  requirements: []
160
-
161
- rubyforge_project: rdoc-babel
162
- rubygems_version: 1.8.5
140
+ rubyforge_project:
141
+ rubygems_version: 2.4.1
163
142
  signing_key:
164
- specification_version: 3
143
+ specification_version: 4
165
144
  summary: An RDoc formatter producing HTML documentation.
166
- test_files:
145
+ test_files:
167
146
  - test/test_rdoc_generator_babel.rb