Class | RI::AttributeFormatter |
In: |
rdoc/ri/ri_formatter.rb
|
Parent: | TextFormatter |
Handle text with attributes. We‘re a base class: there are different presentation classes (one, for example, uses overstrikes to handle bold and underlining, while another using ANSI escape sequences
BOLD | = | 1 |
ITALIC | = | 2 |
CODE | = | 4 |
ATTR_MAP | = | { "b" => BOLD, "code" => CODE, "em" => ITALIC, "i" => ITALIC, "tt" => CODE |
overrides base class. Looks for … etc sequences and generates an array of AttrChars. This array is then used as the basis for the split
# File rdoc/ri/ri_formatter.rb, line 305 def wrap(txt, prefix=@indent, linelen=@width) return unless txt && !txt.empty? txt = add_attributes_to(txt) next_prefix = prefix.tr("^ ", " ") linelen -= prefix.size line = [] until txt.empty? word = txt.next_word if word.size + line.size > linelen write_attribute_text(prefix, line) prefix = next_prefix line = [] end line.concat(word) end write_attribute_text(prefix, line) if line.length > 0 end