def wrap(wrap_at = DEFAULT_WIDTH)
      if text.length < wrap_at.to_i || wrap_at.to_i.zero?
        return text
      end
      ansi_stack = []
      text.split(NEWLINE, -1).map do |paragraph|
        format_paragraph(paragraph, wrap_at, ansi_stack)
      end * NEWLINE
    end
def wrap(wrap_at = DEFAULT_WIDTH)
      if text.length < wrap_at.to_i || wrap_at.to_i.zero?
        return text
      end
      ansi_stack = []
      text.split(NEWLINE, -1).map do |paragraph|
        format_paragraph(paragraph, wrap_at, ansi_stack)
      end * NEWLINE
    end
Wrap a text into lines no longer than wrap_at length.
 Preserves existing lines and existing word boundaries.

 @example
   wrapping = Verse::Wrapping.new "Some longish text"

   wrapping.wrap(8)
   # => >Some
        >longish
        >text

 @api public