Make RDoc escape inner element strings


#1

Is there a way to make RDoc use the html entities of stuff like:

<=>
(ActiveSupport::TimeZone)

The xml parser im using is getting confused by the ‘<’ ‘>’ strings
inside elements… wondering if you can make Rdoc use their char
reference entity instead?


#2

On Thu, Nov 20, 2008 at 23:06, Jose F. removed_email_address@domain.invalid wrote:

Is there a way to make RDoc use the html entities of stuff like:

<=>
(ActiveSupport::TimeZone)

The xml parser im using is getting confused by the ‘<’ ‘>’ strings
inside elements… wondering if you can make Rdoc use their char
reference entity instead?

What version rdoc do you have? It seems that
http://api.rubyonrails.org/classes/ActiveSupport/TimeZone.html has it
correct.
Check with “rdoc --version”, update with “gem install rdoc”, latest is
2.2.1.


#3

Jano S. wrote:

On Thu, Nov 20, 2008 at 23:06, Jose F. removed_email_address@domain.invalid wrote:

Is there a way to make RDoc use the html entities of stuff like:

<=>
(ActiveSupport::TimeZone)

The xml parser im using is getting confused by the ‘<’ ‘>’ strings
inside elements… wondering if you can make Rdoc use their char
reference entity instead?

What version rdoc do you have? It seems that
http://api.rubyonrails.org/classes/ActiveSupport/TimeZone.html has it
correct.
Check with “rdoc --version”, update with “gem install rdoc”, latest is
2.2.1.

I updated to 2.2.1 but it still wont escape the < > characters in the
fr_method_index.html file (which I need to parse), only in the actual
documentation.


#4

On Tue, Nov 25, 2008 at 00:33, Jose F. removed_email_address@domain.invalid wrote:

I updated to 2.2.1 but it still wont escape the < > characters in the
fr_method_index.html file (which I need to parse), only in the actual
documentation.

Now I see. I’ve reported this to rdoc’s tracker [1] along with a patch:

Index: lib/rdoc/generator/html.rb

— lib/rdoc/generator/html.rb (revision 192)
+++ lib/rdoc/generator/html.rb (working copy)
@@ -253,7 +253,7 @@
res = []
collection.sort.each do |f|
if f.document_self

  •    res << { "href" => f.path, "name" => f.index_name }
    
  •    res << { "href" => f.path, "name" => 
    

CGI.escapeHTML(f.index_name) }
end
end

i.e.

  • open
    C:\ruby\lib\ruby\gems\1.8\gems\rdoc-2.2.1\lib\rdoc\generator\html.rb
  • go to line 256
  • add “CGI.escapeHTML(”
  • close the parenthesis

Jano

[1]
http://rubyforge.org/tracker/index.php?func=detail&aid=22968&group_id=627&atid=2472