# File lib/ansi/code.rb, line 143
    def method_missing(code, *args, &blk)
      esc = nil

      if CHART.key?(code)
        esc = "\e[#{CHART[code]}m"
      elsif SPECIAL_CHART.key?(code)
        esc = SPECIAL_CHART[code]
      end

      if esc
        if string = args.first
          return string unless $ansi
          #warn "use ANSI block notation for future versions"
          return "#{esc}#{string}#{ENDCODE}"
        end
        if block_given?
          return yield unless $ansi
          return "#{esc}#{yield}#{ENDCODE}"
        end
        esc
      else
        super(code, *args, &blk)
      end
    end