Advertisement
ijontichy

textwrapper.py

Apr 24th, 2012
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.74 KB | None | 0 0
  1. #!/usr/bin/env python3
  2.  
  3. def wrap(base, maxLen):
  4.    
  5.     ret = []
  6.     i = -1
  7.     lastSpace = 0
  8.     nextSpace = 0
  9.  
  10.     while 1:
  11.         i += 1
  12.  
  13.         if len(base) <= i:
  14.             ret.append(base)
  15.             break
  16.  
  17.         if base[i] == " ":
  18.             lastSpace = i
  19.  
  20.         if base[i] == "\n":
  21.             ret.append(base[:i])
  22.             base = base[i+1:]
  23.  
  24.             lastSpace = 0
  25.             i = -1
  26.        
  27.         if i >= maxLen:
  28.             if lastSpace == 0:
  29.                 i -= 1
  30.                 ret.append(base[:i] + "-")
  31.                 base = base[i:]
  32.  
  33.             else:
  34.                 ret.append(base[:lastSpace])
  35.                 base = base[lastSpace+1:]
  36.            
  37.             lastSpace = 0
  38.             i = -1
  39.  
  40.     return "\n".join(ret)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement