code: def _LineWrap(text, width):
      
      return reduce(lambda line, word, width=width: '%s%s%s' %
                    (line,
                     ' \n'[(len(line) - line.rfind('\n') - 1 +
                           len(word.split('\n', 1)[0]) >= width)],
                     word),
                    text.split(' ')
                   )
docs: A word-wrap function that preserves existing line breaks
      and most spaces in the text. Expects that existing line
      breaks are posix newlines (\n).
  
      Taken from:
      http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/148061