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

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

[Source]

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

Public Instance methods

[Source]

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

[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

[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]