rdoc 5.1.0 → 6.13.1
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 +5 -5
- data/CONTRIBUTING.rdoc +5 -6
- data/ExampleMarkdown.md +2 -0
- data/ExampleRDoc.rdoc +2 -0
- data/History.rdoc +68 -66
- data/LEGAL.rdoc +1 -1
- data/LICENSE.rdoc +2 -0
- data/README.rdoc +18 -6
- data/RI.md +842 -0
- data/TODO.rdoc +8 -7
- data/exe/rdoc +0 -1
- data/lib/rdoc/{alias.rb → code_object/alias.rb} +4 -12
- data/lib/rdoc/{anon_class.rb → code_object/anon_class.rb} +1 -2
- data/lib/rdoc/{any_method.rb → code_object/any_method.rb} +83 -26
- data/lib/rdoc/{attr.rb → code_object/attr.rb} +5 -9
- data/lib/rdoc/{class_module.rb → code_object/class_module.rb} +112 -24
- data/lib/rdoc/{constant.rb → code_object/constant.rb} +4 -5
- data/lib/rdoc/{context → code_object/context}/section.rb +13 -83
- data/lib/rdoc/{context.rb → code_object/context.rb} +69 -70
- data/lib/rdoc/{extend.rb → code_object/extend.rb} +1 -2
- data/lib/rdoc/{ghost_method.rb → code_object/ghost_method.rb} +1 -2
- data/lib/rdoc/{include.rb → code_object/include.rb} +1 -2
- data/lib/rdoc/{meta_method.rb → code_object/meta_method.rb} +1 -2
- data/lib/rdoc/{method_attr.rb → code_object/method_attr.rb} +22 -31
- data/lib/rdoc/{mixin.rb → code_object/mixin.rb} +1 -2
- data/lib/rdoc/{normal_class.rb → code_object/normal_class.rb} +4 -5
- data/lib/rdoc/{normal_module.rb → code_object/normal_module.rb} +2 -3
- data/lib/rdoc/{require.rb → code_object/require.rb} +2 -3
- data/lib/rdoc/{single_class.rb → code_object/single_class.rb} +6 -2
- data/lib/rdoc/{top_level.rb → code_object/top_level.rb} +22 -32
- data/lib/rdoc/code_object.rb +8 -41
- data/lib/rdoc/code_objects.rb +2 -3
- data/lib/rdoc/comment.rb +48 -41
- data/lib/rdoc/cross_reference.rb +77 -33
- data/lib/rdoc/encoding.rb +50 -38
- data/lib/rdoc/erb_partial.rb +2 -3
- data/lib/rdoc/erbio.rb +4 -5
- data/lib/rdoc/generator/darkfish.rb +178 -125
- data/lib/rdoc/generator/json_index.rb +9 -22
- data/lib/rdoc/generator/markup.rb +6 -17
- data/lib/rdoc/generator/pot/message_extractor.rb +4 -4
- data/lib/rdoc/generator/pot/po.rb +3 -3
- data/lib/rdoc/generator/pot/po_entry.rb +12 -12
- data/lib/rdoc/generator/pot.rb +4 -8
- data/lib/rdoc/generator/ri.rb +1 -2
- data/lib/rdoc/generator/template/darkfish/_footer.rhtml +2 -2
- data/lib/rdoc/generator/template/darkfish/_head.rhtml +35 -12
- data/lib/rdoc/generator/template/darkfish/_sidebar_classes.rhtml +1 -5
- data/lib/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +7 -7
- data/lib/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +7 -7
- data/lib/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +6 -6
- data/lib/rdoc/generator/template/darkfish/_sidebar_methods.rhtml +19 -10
- data/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +26 -6
- data/lib/rdoc/generator/template/darkfish/_sidebar_parent.rhtml +4 -9
- data/lib/rdoc/generator/template/darkfish/_sidebar_search.rhtml +1 -1
- data/lib/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +4 -4
- data/lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +27 -6
- data/lib/rdoc/generator/template/darkfish/_sidebar_toggle.rhtml +3 -0
- data/lib/rdoc/generator/template/darkfish/class.rhtml +125 -78
- data/lib/rdoc/generator/template/darkfish/css/rdoc.css +430 -339
- data/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Bold.ttf +0 -0
- data/lib/rdoc/generator/template/darkfish/fonts/SourceCodePro-Regular.ttf +0 -0
- data/lib/rdoc/generator/template/darkfish/index.rhtml +13 -13
- data/lib/rdoc/generator/template/darkfish/js/darkfish.js +51 -92
- data/lib/rdoc/generator/template/darkfish/js/search.js +35 -34
- data/lib/rdoc/generator/template/darkfish/page.rhtml +5 -5
- data/lib/rdoc/generator/template/darkfish/servlet_not_found.rhtml +10 -8
- data/lib/rdoc/generator/template/darkfish/servlet_root.rhtml +20 -18
- data/lib/rdoc/generator/template/darkfish/table_of_contents.rhtml +32 -20
- data/lib/rdoc/generator/template/json_index/js/navigation.js +12 -49
- data/lib/rdoc/generator/template/json_index/js/searcher.js +6 -6
- data/lib/rdoc/generator.rb +6 -6
- data/lib/rdoc/i18n/locale.rb +1 -1
- data/lib/rdoc/i18n/text.rb +5 -5
- data/lib/rdoc/i18n.rb +4 -4
- data/lib/rdoc/known_classes.rb +6 -5
- data/lib/rdoc/markdown/entities.rb +1 -2
- data/lib/rdoc/markdown/literals.kpeg +1 -2
- data/lib/rdoc/markdown/literals.rb +99 -50
- data/lib/rdoc/markdown.kpeg +115 -58
- data/lib/rdoc/markdown.rb +1584 -902
- data/lib/rdoc/markup/attr_changer.rb +1 -2
- data/lib/rdoc/markup/attr_span.rb +9 -4
- data/lib/rdoc/markup/attribute_manager.rb +118 -57
- data/lib/rdoc/markup/attributes.rb +7 -8
- data/lib/rdoc/markup/blank_line.rb +1 -2
- data/lib/rdoc/markup/block_quote.rb +1 -2
- data/lib/rdoc/markup/document.rb +1 -2
- data/lib/rdoc/markup/formatter.rb +44 -37
- data/lib/rdoc/markup/hard_break.rb +1 -2
- data/lib/rdoc/markup/heading.rb +11 -6
- data/lib/rdoc/markup/include.rb +1 -2
- data/lib/rdoc/markup/indented_paragraph.rb +1 -2
- data/lib/rdoc/markup/list.rb +1 -2
- data/lib/rdoc/markup/list_item.rb +1 -2
- data/lib/rdoc/markup/paragraph.rb +1 -2
- data/lib/rdoc/markup/parser.rb +90 -48
- data/lib/rdoc/markup/pre_process.rb +38 -11
- data/lib/rdoc/markup/raw.rb +1 -2
- data/lib/rdoc/markup/regexp_handling.rb +40 -0
- data/lib/rdoc/markup/rule.rb +1 -2
- data/lib/rdoc/markup/table.rb +56 -0
- data/lib/rdoc/markup/to_ansi.rb +1 -2
- data/lib/rdoc/markup/to_bs.rb +30 -5
- data/lib/rdoc/markup/to_html.rb +95 -40
- data/lib/rdoc/markup/to_html_crossref.rb +108 -43
- data/lib/rdoc/markup/to_html_snippet.rb +13 -11
- data/lib/rdoc/markup/to_joined_paragraph.rb +6 -32
- data/lib/rdoc/markup/to_label.rb +11 -12
- data/lib/rdoc/markup/to_markdown.rb +13 -14
- data/lib/rdoc/markup/to_rdoc.rb +49 -31
- data/lib/rdoc/markup/to_table_of_contents.rb +2 -2
- data/lib/rdoc/markup/to_test.rb +1 -2
- data/lib/rdoc/markup/to_tt_only.rb +3 -4
- data/lib/rdoc/markup/verbatim.rb +1 -2
- data/lib/rdoc/markup.rb +64 -694
- data/lib/rdoc/options.rb +226 -44
- data/lib/rdoc/parser/c.rb +231 -246
- data/lib/rdoc/parser/changelog.rb +169 -23
- data/lib/rdoc/parser/markdown.rb +1 -3
- data/lib/rdoc/parser/prism_ruby.rb +1092 -0
- data/lib/rdoc/parser/rd.rb +1 -2
- data/lib/rdoc/parser/ripper_state_lex.rb +302 -0
- data/lib/rdoc/parser/ruby.rb +695 -478
- data/lib/rdoc/parser/ruby_tools.rb +33 -36
- data/lib/rdoc/parser/simple.rb +4 -4
- data/lib/rdoc/parser/text.rb +1 -2
- data/lib/rdoc/parser.rb +37 -42
- data/lib/rdoc/rd/block_parser.rb +708 -57
- data/lib/rdoc/rd/block_parser.ry +15 -11
- data/lib/rdoc/rd/inline.rb +5 -6
- data/lib/rdoc/rd/inline_parser.rb +787 -140
- data/lib/rdoc/rd/inline_parser.ry +1 -1
- data/lib/rdoc/rd.rb +4 -5
- data/lib/rdoc/rdoc.rb +72 -87
- data/lib/rdoc/ri/driver.rb +236 -152
- data/lib/rdoc/ri/formatter.rb +1 -1
- data/lib/rdoc/ri/paths.rb +4 -18
- data/lib/rdoc/ri/store.rb +1 -2
- data/lib/rdoc/ri/task.rb +2 -2
- data/lib/rdoc/ri.rb +5 -6
- data/lib/rdoc/rubygems_hook.rb +98 -20
- data/lib/rdoc/servlet.rb +30 -20
- data/lib/rdoc/stats/normal.rb +24 -18
- data/lib/rdoc/stats/quiet.rb +1 -2
- data/lib/rdoc/stats/verbose.rb +1 -3
- data/lib/rdoc/stats.rb +6 -7
- data/lib/rdoc/store.rb +84 -55
- data/lib/rdoc/task.rb +35 -10
- data/lib/rdoc/text.rb +40 -27
- data/lib/rdoc/token_stream.rb +56 -34
- data/lib/rdoc/tom_doc.rb +18 -19
- data/lib/rdoc/version.rb +10 -0
- data/lib/rdoc.rb +80 -56
- data/lib/rubygems_plugin.rb +23 -0
- data/man/ri.1 +247 -0
- metadata +45 -99
- data/.document +0 -5
- data/.gitignore +0 -13
- data/.travis.yml +0 -24
- data/Gemfile +0 -3
- data/RI.rdoc +0 -57
- data/Rakefile +0 -133
- data/bin/console +0 -7
- data/bin/setup +0 -6
- data/lib/gauntlet_rdoc.rb +0 -82
- data/lib/rdoc/generator/template/darkfish/.document +0 -0
- data/lib/rdoc/generator/template/darkfish/_sidebar_VCS_info.rhtml +0 -19
- data/lib/rdoc/generator/template/darkfish/_sidebar_in_files.rhtml +0 -9
- data/lib/rdoc/generator/template/darkfish/js/jquery.js +0 -4
- data/lib/rdoc/generator/template/json_index/.document +0 -1
- data/lib/rdoc/markup/formatter_test_case.rb +0 -764
- data/lib/rdoc/markup/inline.rb +0 -2
- data/lib/rdoc/markup/special.rb +0 -41
- data/lib/rdoc/markup/text_formatter_test_case.rb +0 -115
- data/lib/rdoc/ruby_lex.rb +0 -1367
- data/lib/rdoc/ruby_token.rb +0 -461
- data/lib/rdoc/test_case.rb +0 -204
- data/rdoc.gemspec +0 -57
@@ -1,12 +1,9 @@
|
|
1
|
-
# frozen_string_literal:
|
1
|
+
# frozen_string_literal: true
|
2
2
|
##
|
3
|
-
# Collection of methods for writing parsers
|
4
|
-
# RDoc::RubyToken
|
3
|
+
# Collection of methods for writing parsers
|
5
4
|
|
6
5
|
module RDoc::Parser::RubyTools
|
7
6
|
|
8
|
-
include RDoc::RubyToken
|
9
|
-
|
10
7
|
##
|
11
8
|
# Adds a token listener +obj+, but you should probably use token_listener
|
12
9
|
|
@@ -22,37 +19,24 @@ module RDoc::Parser::RubyTools
|
|
22
19
|
tk = nil
|
23
20
|
|
24
21
|
if @tokens.empty? then
|
25
|
-
|
26
|
-
|
27
|
-
|
22
|
+
if @scanner_point >= @scanner.size
|
23
|
+
return nil
|
24
|
+
else
|
25
|
+
tk = @scanner[@scanner_point]
|
26
|
+
@scanner_point += 1
|
27
|
+
@read.push tk[:text]
|
28
|
+
end
|
28
29
|
else
|
29
30
|
@read.push @unget_read.shift
|
30
31
|
tk = @tokens.shift
|
31
|
-
puts "get_tk2 => #{tk.inspect}" if $TOKEN_DEBUG
|
32
32
|
end
|
33
33
|
|
34
|
-
tk
|
35
|
-
|
36
|
-
if TkSYMBEG === tk then
|
37
|
-
set_token_position tk.line_no, tk.char_no
|
38
|
-
|
39
|
-
case tk1 = get_tk
|
40
|
-
when TkId, TkOp, TkSTRING, TkDSTRING, TkSTAR, TkAMPER then
|
41
|
-
if tk1.respond_to?(:name) then
|
42
|
-
tk = Token(TkSYMBOL).set_text(":" + tk1.name)
|
43
|
-
else
|
44
|
-
tk = Token(TkSYMBOL).set_text(":" + tk1.text)
|
45
|
-
end
|
46
|
-
|
47
|
-
# remove the identifier we just read to replace it with a symbol
|
48
|
-
@token_listeners.each do |obj|
|
49
|
-
obj.pop_token
|
50
|
-
end if @token_listeners
|
51
|
-
else
|
52
|
-
tk = tk1
|
53
|
-
end
|
34
|
+
if tk == nil || :on___end__ == tk[:kind]
|
35
|
+
tk = nil
|
54
36
|
end
|
55
37
|
|
38
|
+
return nil unless tk
|
39
|
+
|
56
40
|
# inform any listeners of our shiny new token
|
57
41
|
@token_listeners.each do |obj|
|
58
42
|
obj.add_token(tk)
|
@@ -122,19 +106,34 @@ module RDoc::Parser::RubyTools
|
|
122
106
|
@tokens = []
|
123
107
|
@unget_read = []
|
124
108
|
@nest = 0
|
109
|
+
@scanner_point = 0
|
110
|
+
end
|
111
|
+
|
112
|
+
##
|
113
|
+
# Skips whitespace tokens including newlines
|
114
|
+
|
115
|
+
def skip_tkspace
|
116
|
+
tokens = []
|
117
|
+
|
118
|
+
while (tk = get_tk) and (:on_sp == tk[:kind] or :on_nl == tk[:kind] or :on_ignored_nl == tk[:kind]) do
|
119
|
+
tokens.push(tk)
|
120
|
+
end
|
121
|
+
|
122
|
+
unget_tk(tk)
|
123
|
+
tokens
|
125
124
|
end
|
126
125
|
|
127
126
|
##
|
128
|
-
# Skips whitespace tokens
|
127
|
+
# Skips whitespace tokens excluding newlines
|
129
128
|
|
130
|
-
def
|
129
|
+
def skip_tkspace_without_nl
|
131
130
|
tokens = []
|
132
131
|
|
133
|
-
while
|
134
|
-
tokens.push
|
132
|
+
while (tk = get_tk) and :on_sp == tk[:kind] do
|
133
|
+
tokens.push(tk)
|
135
134
|
end
|
136
135
|
|
137
|
-
unget_tk
|
136
|
+
unget_tk(tk)
|
138
137
|
tokens
|
139
138
|
end
|
140
139
|
|
@@ -164,5 +163,3 @@ module RDoc::Parser::RubyTools
|
|
164
163
|
end
|
165
164
|
|
166
165
|
end
|
167
|
-
|
168
|
-
|
data/lib/rdoc/parser/simple.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# frozen_string_literal:
|
1
|
+
# frozen_string_literal: true
|
2
2
|
##
|
3
3
|
# Parse a non-source file. We basically take the whole thing as one big
|
4
4
|
# comment.
|
@@ -14,12 +14,12 @@ class RDoc::Parser::Simple < RDoc::Parser
|
|
14
14
|
##
|
15
15
|
# Prepare to parse a plain file
|
16
16
|
|
17
|
-
def initialize(top_level,
|
17
|
+
def initialize(top_level, content, options, stats)
|
18
18
|
super
|
19
19
|
|
20
20
|
preprocess = RDoc::Markup::PreProcess.new @file_name, @options.rdoc_include
|
21
21
|
|
22
|
-
preprocess.handle @content, @top_level
|
22
|
+
@content = preprocess.handle @content, @top_level
|
23
23
|
end
|
24
24
|
|
25
25
|
##
|
@@ -52,7 +52,7 @@ class RDoc::Parser::Simple < RDoc::Parser
|
|
52
52
|
def remove_private_comment comment
|
53
53
|
# Workaround for gsub encoding for Ruby 1.9.2 and earlier
|
54
54
|
empty = ''
|
55
|
-
empty.
|
55
|
+
empty = RDoc::Encoding.change_encoding empty, comment.encoding
|
56
56
|
|
57
57
|
comment = comment.gsub(%r%^--\n.*?^\+\+\n?%m, empty)
|
58
58
|
comment.sub(%r%^--\n.*%m, empty)
|
data/lib/rdoc/parser/text.rb
CHANGED
data/lib/rdoc/parser.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# -*- coding: us-ascii -*-
|
2
|
-
# frozen_string_literal:
|
2
|
+
# frozen_string_literal: true
|
3
3
|
|
4
4
|
##
|
5
5
|
# A parser is simple a class that subclasses RDoc::Parser and implements #scan
|
@@ -78,7 +78,7 @@ class RDoc::Parser
|
|
78
78
|
|
79
79
|
return true if s[0, 2] == Marshal.dump('')[0, 2] or s.index("\x00")
|
80
80
|
|
81
|
-
mode = 'r:utf-8' # default source encoding has been
|
81
|
+
mode = 'r:utf-8' # default source encoding has been changed to utf-8
|
82
82
|
s.sub!(/\A#!.*\n/, '') # assume shebang line isn't longer than 1024.
|
83
83
|
encoding = s[/^\s*\#\s*(?:-\*-\s*)?(?:en)?coding:\s*([^\s;]+?)(?:-\*-|[\s;])/, 1]
|
84
84
|
mode = "rb:#{encoding}" if encoding
|
@@ -87,31 +87,6 @@ class RDoc::Parser
|
|
87
87
|
not s.valid_encoding?
|
88
88
|
end
|
89
89
|
|
90
|
-
##
|
91
|
-
# Processes common directives for CodeObjects for the C and Ruby parsers.
|
92
|
-
#
|
93
|
-
# Applies +directive+'s +value+ to +code_object+, if appropriate
|
94
|
-
|
95
|
-
def self.process_directive code_object, directive, value
|
96
|
-
warn "RDoc::Parser::process_directive is deprecated and wil be removed in RDoc 4. Use RDoc::Markup::PreProcess#handle_directive instead" if $-w
|
97
|
-
|
98
|
-
case directive
|
99
|
-
when 'nodoc' then
|
100
|
-
code_object.document_self = nil # notify nodoc
|
101
|
-
code_object.document_children = value.downcase != 'all'
|
102
|
-
when 'doc' then
|
103
|
-
code_object.document_self = true
|
104
|
-
code_object.force_documentation = true
|
105
|
-
when 'yield', 'yields' then
|
106
|
-
# remove parameter &block
|
107
|
-
code_object.params.sub!(/,?\s*&\w+/, '') if code_object.params
|
108
|
-
|
109
|
-
code_object.block_params = value
|
110
|
-
when 'arg', 'args' then
|
111
|
-
code_object.params = value
|
112
|
-
end
|
113
|
-
end
|
114
|
-
|
115
90
|
##
|
116
91
|
# Checks if +file+ is a zip file in disguise. Signatures from
|
117
92
|
# http://www.garykessler.net/library/file_sigs.html
|
@@ -150,9 +125,11 @@ class RDoc::Parser
|
|
150
125
|
return parser if ext_name.empty?
|
151
126
|
|
152
127
|
if parser == RDoc::Parser::Simple and ext_name !~ /txt|rdoc/ then
|
153
|
-
case check_modeline
|
128
|
+
case mode = check_modeline(file_name)
|
154
129
|
when nil, 'rdoc' then # continue
|
155
|
-
else
|
130
|
+
else
|
131
|
+
RDoc::Parser.parsers.find { |_, p| return p if mode.casecmp?(p.name[/\w+\z/]) }
|
132
|
+
return nil
|
156
133
|
end
|
157
134
|
end
|
158
135
|
|
@@ -164,7 +141,7 @@ class RDoc::Parser
|
|
164
141
|
# Returns the file type from the modeline in +file_name+
|
165
142
|
|
166
143
|
def self.check_modeline file_name
|
167
|
-
line = open file_name do |io|
|
144
|
+
line = File.open file_name do |io|
|
168
145
|
io.gets
|
169
146
|
end
|
170
147
|
|
@@ -189,7 +166,8 @@ class RDoc::Parser
|
|
189
166
|
# Finds and instantiates the correct parser for the given +file_name+ and
|
190
167
|
# +content+.
|
191
168
|
|
192
|
-
def self.for top_level,
|
169
|
+
def self.for top_level, content, options, stats
|
170
|
+
file_name = top_level.absolute_name
|
193
171
|
return if binary? file_name
|
194
172
|
|
195
173
|
parser = use_markup content
|
@@ -213,7 +191,7 @@ class RDoc::Parser
|
|
213
191
|
|
214
192
|
content = remove_modeline content
|
215
193
|
|
216
|
-
parser.new top_level,
|
194
|
+
parser.new top_level, content, options, stats
|
217
195
|
rescue SystemCallError
|
218
196
|
nil
|
219
197
|
end
|
@@ -274,12 +252,12 @@ class RDoc::Parser
|
|
274
252
|
# RDoc::Markup::PreProcess object is created which allows processing of
|
275
253
|
# directives.
|
276
254
|
|
277
|
-
def initialize top_level,
|
255
|
+
def initialize top_level, content, options, stats
|
278
256
|
@top_level = top_level
|
279
257
|
@top_level.parser = self.class
|
280
258
|
@store = @top_level.store
|
281
259
|
|
282
|
-
@file_name =
|
260
|
+
@file_name = top_level.absolute_name
|
283
261
|
@content = content
|
284
262
|
@options = options
|
285
263
|
@stats = stats
|
@@ -288,15 +266,32 @@ class RDoc::Parser
|
|
288
266
|
@preprocess.options = @options
|
289
267
|
end
|
290
268
|
|
291
|
-
autoload :RubyTools,
|
292
|
-
autoload :Text,
|
269
|
+
autoload :RubyTools, "#{__dir__}/parser/ruby_tools"
|
270
|
+
autoload :Text, "#{__dir__}/parser/text"
|
293
271
|
|
272
|
+
##
|
273
|
+
# Normalizes tabs in +body+
|
274
|
+
|
275
|
+
def handle_tab_width(body)
|
276
|
+
if /\t/ =~ body
|
277
|
+
tab_width = @options.tab_width
|
278
|
+
body.split(/\n/).map do |line|
|
279
|
+
1 while line.gsub!(/\t+/) do
|
280
|
+
b, e = $~.offset(0)
|
281
|
+
' ' * (tab_width * (e-b) - b % tab_width)
|
282
|
+
end
|
283
|
+
line
|
284
|
+
end.join "\n"
|
285
|
+
else
|
286
|
+
body
|
287
|
+
end
|
288
|
+
end
|
294
289
|
end
|
295
290
|
|
296
291
|
# simple must come first in order to show up last in the parsers list
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
292
|
+
require_relative 'parser/simple'
|
293
|
+
require_relative 'parser/c'
|
294
|
+
require_relative 'parser/changelog'
|
295
|
+
require_relative 'parser/markdown'
|
296
|
+
require_relative 'parser/rd'
|
297
|
+
require_relative 'parser/ruby'
|