def say(msg, *args)
output = if Hash[*args][:stderr]
$stderr
else
separate_blocks
$terminal.instance_variable_get(:@output)
end
Array(msg).each do |statement|
statement = statement.to_str
next unless statement.present?
template = ERB.new(statement, nil, "%")
statement = template.result(binding)
statement = wrap(statement) unless @wrap_at.nil?
statement = page_print(statement) unless @page_at.nil?
output.print(' ' * @@indent * INDENT) unless @@last_line_open
@@last_line_open =
if statement[-1, 1] == " " or statement[-1, 1] == "\t"
output.print(statement)
output.flush
else
output.puts(statement)
end
end
msg
end