mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
[ruby/rdoc] Links to document texts without "rdoc-ref:" prefix
While links to generated HTML from RDoc file needs to be prefixed by "rdoc-ref:" currently, in case of explicit references this seems just redundant. Also GitHub RDoc support does not work with this prefix. This patch lets links to such document texts (".rb", ".rdoc" and ".md" now) refer URLs generated by `RDoc::TopLevel#http_url` without the prefix. https://github.com/ruby/rdoc/commit/f18b27b69d
This commit is contained in:
parent
a6948329f8
commit
64b991b0cd
2 changed files with 25 additions and 0 deletions
|
@ -357,6 +357,10 @@ class RDoc::Markup::ToHtml < RDoc::Markup::Formatter
|
|||
url =~ /\.(gif|png|jpg|jpeg|bmp)$/ then
|
||||
"<img src=\"#{url}\" />"
|
||||
else
|
||||
if scheme != 'link' and /\.(?:rb|rdoc|md)\z/i =~ url
|
||||
url = url.sub(%r%\A([./]*)(.*)\z%) { "#$1#{$2.tr('.', '_')}.html" }
|
||||
end
|
||||
|
||||
text = text.sub %r%^#{scheme}:/*%i, ''
|
||||
text = text.sub %r%^[*\^](\d+)$%, '\1'
|
||||
|
||||
|
|
|
@ -738,6 +738,27 @@ EXPECTED
|
|||
assert_equal '<img src="https://example.com/image.png" />', @to.gen_url('https://example.com/image.png', 'ignored')
|
||||
end
|
||||
|
||||
def test_gen_url_rdoc_file
|
||||
assert_equal '<a href="doc/example_rdoc.html">example</a>',
|
||||
@to.gen_url('doc/example.rdoc', 'example')
|
||||
assert_equal '<a href="../ex_doc/example_rdoc.html">example</a>',
|
||||
@to.gen_url('../ex.doc/example.rdoc', 'example')
|
||||
end
|
||||
|
||||
def test_gen_url_md_file
|
||||
assert_equal '<a href="doc/example_md.html">example</a>',
|
||||
@to.gen_url('doc/example.md', 'example')
|
||||
assert_equal '<a href="../ex_doc/example_md.html">example</a>',
|
||||
@to.gen_url('../ex.doc/example.md', 'example')
|
||||
end
|
||||
|
||||
def test_gen_url_rb_file
|
||||
assert_equal '<a href="doc/example_rb.html">example</a>',
|
||||
@to.gen_url('doc/example.rb', 'example')
|
||||
assert_equal '<a href="../ex_doc/example_rb.html">example</a>',
|
||||
@to.gen_url('../ex.doc/example.rb', 'example')
|
||||
end
|
||||
|
||||
def test_handle_regexp_HYPERLINK_link
|
||||
target = RDoc::Markup::RegexpHandling.new 0, 'link:README.txt'
|
||||
|
||||
|
|
Loading…
Reference in a new issue