Class | RI::HtmlFormatter |
In: |
ri/ri_formatter.rb
|
Parent: | AttributeFormatter |
This formatter uses HTML.
ATTR_MAP | = | { BOLD => "b>", ITALIC => "i>", CODE => "tt>" |
# File ri/ri_formatter.rb, line 506 506: def display_heading(text, level, indent) 507: level = 4 if level > 4 508: tag("h#{level}") { text } 509: puts 510: end
# File ri/ri_formatter.rb, line 514 514: def display_list(list) 515: 516: case list.type 517: when SM::ListBase::BULLET 518: list_type = "ul" 519: prefixer = proc { |ignored| "<li>" } 520: 521: when SM::ListBase::NUMBER, 522: SM::ListBase::UPPERALPHA, 523: SM::ListBase::LOWERALPHA 524: list_type = "ol" 525: prefixer = proc { |ignored| "<li>" } 526: 527: when SM::ListBase::LABELED 528: list_type = "dl" 529: prefixer = proc do |li| 530: "<dt><b>" + escape(li.label) + "</b><dd>" 531: end 532: 533: when SM::ListBase::NOTE 534: list_type = "table" 535: prefixer = proc do |li| 536: %{<tr valign="top"><td>#{li.label.gsub(/ /, ' ')}</td><td>} 537: end 538: else 539: fail "unknown list type" 540: end 541: 542: print "<#{list_type}>" 543: list.contents.each do |item| 544: if item.kind_of? SM::Flow::LI 545: prefix = prefixer.call(item) 546: print prefix 547: display_flow_item(item, prefix) 548: else 549: display_flow_item(item) 550: end 551: end 552: print "</#{list_type}>" 553: end
# File ri/ri_formatter.rb, line 555 555: def display_verbatim_flow_item(item, prefix=@indent) 556: print("<pre>") 557: item.body.split(/\n/).each do |line| 558: puts conv_html(line) 559: end 560: puts("</pre>") 561: end
# File ri/ri_formatter.rb, line 487 487: def draw_line(label=nil) 488: if label != nil 489: bold_print(label) 490: end 491: puts("<hr>") 492: end
# File ri/ri_formatter.rb, line 474 474: def write_attribute_text(prefix, line) 475: curr_attr = 0 476: line.each do |achar| 477: attr = achar.attr 478: if achar.attr != curr_attr 479: update_attributes(curr_attr, achar.attr) 480: curr_attr = achar.attr 481: end 482: print(escape(achar.char)) 483: end 484: update_attributes(curr_attr, 0) unless curr_attr.zero? 485: end