diff --git a/linkcheck/strformat.py b/linkcheck/strformat.py index 6adf4713..5d989076 100644 --- a/linkcheck/strformat.py +++ b/linkcheck/strformat.py @@ -37,7 +37,11 @@ def unquote (s): return s -_para_ro = re.compile(r"(?:\r\n|\r|\n)(?:(?:\r\n|\r|\n)\s*)+") +_para_mac = r"(?:%(sep)s)(?:(?:%(sep)s)\s*)+" % {'sep': '\r'} +_para_posix = r"(?:%(sep)s)(?:(?:%(sep)s)\s*)+" % {'sep': '\n'} +_para_win = r"(?:%(sep)s)(?:(?:%(sep)s)\s*)+" % {'sep': '\r\n'} +_para_ro = re.compile("%s|%s|%s" % (_para_mac, _para_posix, _para_win)) + def get_paragraphs (text): """A new paragraph is considered to start at a line which follows one or more blank lines (lines containing nothing or just spaces). diff --git a/linkcheck/tests/test_strformat.py b/linkcheck/tests/test_strformat.py index 12ad0e32..f7afb68d 100644 --- a/linkcheck/tests/test_strformat.py +++ b/linkcheck/tests/test_strformat.py @@ -48,11 +48,14 @@ class TestStrFormat (unittest.TestCase): # testing width <= 0 self.assertEquals(linkcheck.strformat.wrap(s, -1), s) self.assertEquals(linkcheck.strformat.wrap(s, 0), s) - s2 = "11 22%(sep)s33 44%(sep)s55" % {'sep': os.linesep} + l = len(os.linesep) + gap = " "*l + s2 = "11%(gap)s22%(sep)s33%(gap)s44%(sep)s55" % \ + {'sep': os.linesep, 'gap': gap} # splitting lines self.assertEquals(linkcheck.strformat.wrap(s2, 2), s) # combining lines - self.assertEquals(linkcheck.strformat.wrap(s, 5), s2) + self.assertEquals(linkcheck.strformat.wrap(s, 4+l), s2) def test_remove_markup (self): """test markup removing"""