Class: RI::AnsiFormatter

Class | RI::AnsiFormatter
In: | rdoc/ri/ri_formatter.rb
Parent: | AttributeFormatter

This formatter uses ANSI escape sequences to colorize stuff works with pages such as man and less.

### Methods

bold_print display_heading new write_attribute_text

### Constants

HEADINGS | = | { 1 => [ "\033[1;32m", "\033[m" ] , 2 => ["\033[4;32m", "\033[m" ], 3 => ["\033[32m", "\033[m" ]
ATTR_MAP | = | { BOLD => "1", ITALIC => "33", CODE => "36"

### Public Class methods

new(*args)

[Source]

    # File rdoc/ri/ri_formatter.rb, line 405
        def initialize(*args)
          print "\033[0m"
          super
        end

### Public Instance methods

bold_print(txt)

[Source]

    # File rdoc/ri/ri_formatter.rb, line 426
        def bold_print(txt)
          print "\033[1m#{txt}\033[m"
        end

display_heading(text, level, indent)

[Source]

    # File rdoc/ri/ri_formatter.rb, line 436
        def display_heading(text, level, indent)
          level = 3 if level > 3
          heading = HEADINGS[level]
          print indent
          print heading[0]
          print strip_attributes(text)
          puts heading[1]
        end

write_attribute_text(prefix, line)

[Source]

    # File rdoc/ri/ri_formatter.rb, line 410
        def write_attribute_text(prefix, line)
          print prefix
          curr_attr = 0
          line.each do |achar|
            attr = achar.attr
            if achar.attr != curr_attr
              update_attributes(achar.attr)
              curr_attr = achar.attr
            end
            print achar.char
          end
          update_attributes(0) unless curr_attr.zero?
          puts
        end

[Validate]