RI::AnsiFormatter (Class)

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.

Constants

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

Public Class methods

[Source]

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

Public Instance methods

[Source]

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

[Source]

# File rdoc/ri/ri_formatter.rb, line 430
    def display_heading(text, level, indent)
      level = 3 if level > 3
      print indent
      printf(HEADINGS[level], text)
      puts
    end

[Source]

# File rdoc/ri/ri_formatter.rb, line 404
    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]