[Python-Dev] textwrap.py wordsep_re (original) (raw)

Greg Ward gward at python.net
Thu Feb 24 14:04:32 CET 2005


On 21 February 2005, Karl Chen said:

Except when the string to wrap contains dates -- which I would like not to be filled. In general I think wordsepre can be smarter about what it decides are hyphenated words.

For example, this code: print textwrap.fill('aaaaaaaaaa 2005-02-21', 18) produces: aaaaaaaaaa 2005- 02-21

Oops!

A slightly tweaked wordsepre: _textwrap.TextWrapper.wordsepre =_ re.compile(r'(\s+|' # any whitespace r'[^\s\w]*\w+[a-zA-Z]-(?=[a-zA-Z]\w+)|' # hyphenated words r'(?<=[\w!"'&.,?])-{2,}(?=\w))') # em-dash print textwrap.fill('aaaaaaaaaa 2005-02-21', 18) behaves better: aaaaaaaaaa 2005-02-21

Post a patch to SF and assign it to me. Make sure the unit tests still pass, and add a new one that doesn't pass without your fix. Pester me mercilessly until I act on it. (I think your change is probably fine, but I need more time to examine it than I have right now.)

    Greg

-- Greg Ward <gward at python.net> http://www.gerg.ca/ Cheops' Law: Nothing ever gets built on schedule or within budget.



More information about the Python-Dev mailing list