# File lib/highline.rb, line 615
  def say( statement )
    statement = statement.to_str
    return unless statement.length > 0

    template  = ERB.new(statement, nil, "%")
    statement = template.result(binding)

    statement = wrap(statement) unless @wrap_at.nil?
    statement = page_print(statement) unless @page_at.nil?

    statement = statement.gsub(/\n(?!$)/,"\n#{indentation}") if @multi_indent

    # Don't add a newline if statement ends with whitespace, OR
    # if statement ends with whitespace before a color escape code.
    if /[ \t](\e\[\d+(;\d+)*m)?\Z/ =~ statement
      @output.print(indentation+statement)
      @output.flush
    else
      @output.puts(indentation+statement)
    end
  end