ruby-changes:20994
From: drbrain <ko1@a...>
Date: Wed, 24 Aug 2011 08:53:59 +0900 (JST)
Subject: [ruby-changes:20994] drbrain:r33043 (trunk): * lib/rdoc: Update to RDoc 3.9.3. Fixes RDoc with `ruby -Ku`. Allows
drbrain 2011-08-24 08:53:49 +0900 (Wed, 24 Aug 2011) New Revision: 33043 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=33043 Log: * lib/rdoc: Update to RDoc 3.9.3. Fixes RDoc with `ruby -Ku`. Allows HTTPS image paths to be turned into <img> tags. Prevents special markup inside <tt> from being processed. Added files: trunk/test/rdoc/test_rdoc_markup_formatter.rb Modified files: trunk/ChangeLog trunk/lib/rdoc/encoding.rb trunk/lib/rdoc/markup/formatter.rb trunk/lib/rdoc/markup/to_html.rb trunk/lib/rdoc/markup.rb trunk/lib/rdoc/ruby_lex.rb trunk/lib/rdoc.rb trunk/test/rdoc/test_rdoc_code_object.rb trunk/test/rdoc/test_rdoc_encoding.rb trunk/test/rdoc/test_rdoc_markup_to_html.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 33042) +++ ChangeLog (revision 33043) @@ -1,3 +1,9 @@ +Wed Aug 24 08:53:06 2011 Eric Hodel <drbrain@s...> + + * lib/rdoc: Update to RDoc 3.9.3. Fixes RDoc with `ruby -Ku`. Allows + HTTPS image paths to be turned into <img> tags. Prevents special + markup inside <tt> from being processed. + Wed Aug 24 07:57:43 2011 Eric Hodel <drbrain@s...> * lib/rubygems: Update to RubyGems 1.8.9. Fixes uninstalling multiple Index: lib/rdoc.rb =================================================================== --- lib/rdoc.rb (revision 33042) +++ lib/rdoc.rb (revision 33043) @@ -104,7 +104,7 @@ ## # RDoc version you are using - VERSION = '3.9.2' + VERSION = '3.9.3' ## # Method visibilities Index: lib/rdoc/markup/formatter.rb =================================================================== --- lib/rdoc/markup/formatter.rb (revision 33042) +++ lib/rdoc/markup/formatter.rb (revision 33043) @@ -88,7 +88,9 @@ ## # Converts added specials. See RDoc::Markup#add_special - def convert_special(special) + def convert_special special + return special.text if in_tt? + handled = false RDoc::Markup::Attribute.each_name_of special.type do |name| Index: lib/rdoc/markup/to_html.rb =================================================================== --- lib/rdoc/markup/to_html.rb (revision 33042) +++ lib/rdoc/markup/to_html.rb (revision 33043) @@ -254,7 +254,7 @@ end end - if (type == "http" or type == "link") and + if (type == "http" or type == "https" or type == "link") and url =~ /\.(gif|png|jpg|jpeg|bmp)$/ then "<img src=\"#{url}\" />" else Index: lib/rdoc/markup.rb =================================================================== --- lib/rdoc/markup.rb (revision 33042) +++ lib/rdoc/markup.rb (revision 33043) @@ -284,8 +284,20 @@ # # Links can also be of the form <tt>label[url]</tt>, in which case +label+ is # used in the displayed text, and +url+ is used as the target. If +label+ -# contains multiple words, put it in braces: <tt>{multi word label}[url]<tt>. +# contains multiple words, put it in braces: <tt>{multi word label}[url]</tt>. +# The +url+ may be an +http:+-type link or a cross-reference to a class, +# module or method with a label. # +# Links with the <tt>rdoc-ref:</tt> scheme will link to the referenced class, +# module, method, file, etc. If the referenced item is does not exist +# no link will be generated and <tt>rdoc-ref:</tt> will be removed from the +# resulting text. +# +# Links starting with +link:+ refer to local files whose path is relative to +# the <tt>--op</tt> directory. Use <tt>rdoc-ref:</tt> instead of +# <tt>link:</tt> to link to files generated by RDoc as the link target may +# be different across RDoc generators. +# # Example links: # # https://github.com/rdoc/rdoc Index: lib/rdoc/encoding.rb =================================================================== --- lib/rdoc/encoding.rb (revision 33042) +++ lib/rdoc/encoding.rb (revision 33043) @@ -1,3 +1,5 @@ +# coding: US-ASCII + require 'rdoc' ## Index: lib/rdoc/ruby_lex.rb =================================================================== --- lib/rdoc/ruby_lex.rb (revision 33042) +++ lib/rdoc/ruby_lex.rb (revision 33043) @@ -1,3 +1,5 @@ +# coding: US-ASCII + #-- # irb/ruby-lex.rb - ruby lexcal analyzer # $Release Version: 0.9.5$ Index: test/rdoc/test_rdoc_markup_to_html.rb =================================================================== --- test/rdoc/test_rdoc_markup_to_html.rb (revision 33042) +++ test/rdoc/test_rdoc_markup_to_html.rb (revision 33043) @@ -306,6 +306,14 @@ @to.gen_url('link:example', 'example') end + def test_gem_url_image_url + assert_equal '<img src="http://example.com/image.png" />', @to.gen_url('http://example.com/image.png', 'ignored') + end + + def test_gem_url_ssl_image_url + assert_equal '<img src="https://example.com/image.png" />', @to.gen_url('https://example.com/image.png', 'ignored') + end + def test_handle_special_HYPERLINK_link special = RDoc::Markup::Special.new 0, 'link:README.txt' Index: test/rdoc/test_rdoc_code_object.rb =================================================================== --- test/rdoc/test_rdoc_code_object.rb (revision 33042) +++ test/rdoc/test_rdoc_code_object.rb (revision 33043) @@ -1,3 +1,5 @@ +# coding: US-ASCII + require 'rubygems' require 'minitest/autorun' require File.expand_path '../xref_test_case', __FILE__ Index: test/rdoc/test_rdoc_markup_formatter.rb =================================================================== --- test/rdoc/test_rdoc_markup_formatter.rb (revision 0) +++ test/rdoc/test_rdoc_markup_formatter.rb (revision 33043) @@ -0,0 +1,57 @@ +require 'rubygems' +require 'minitest/autorun' +require 'rdoc' +require 'rdoc/markup' +require 'rdoc/markup/formatter' + +class TestRDocMarkupFormatter < MiniTest::Unit::TestCase + + class ToTest < RDoc::Markup::Formatter + + def initialize markup + super + + add_tag :TT, '<tt>', '</tt>' + end + + def accept_paragraph paragraph + @res << attributes(paragraph.text) + end + + def attributes text + convert_flow @am.flow text.dup + end + + def handle_special_CAPS special + "handled #{special.text}" + end + + def start_accepting + @res = "" + end + + def end_accepting + @res + end + + end + + def setup + @markup = RDoc::Markup.new + @markup.add_special(/[A-Z]+/, :CAPS) + + @to = ToTest.new @markup + + @caps = RDoc::Markup::Attribute.bitmap_for :CAPS + @special = RDoc::Markup::Attribute.bitmap_for :_SPECIAL_ + @tt = RDoc::Markup::Attribute.bitmap_for :TT + end + + def test_convert_tt_special + converted = @to.convert '<tt>AAA</tt>' + + assert_equal '<tt>AAA</tt>', converted + end + +end + Index: test/rdoc/test_rdoc_encoding.rb =================================================================== --- test/rdoc/test_rdoc_encoding.rb (revision 33042) +++ test/rdoc/test_rdoc_encoding.rb (revision 33043) @@ -1,3 +1,5 @@ +# coding: US-ASCII + require 'rubygems' require 'minitest/autorun' require 'rdoc' -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/