[前][次][番号順一覧][スレッド一覧]

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/

[前][次][番号順一覧][スレッド一覧]