diff --git a/boards/models/post.py b/boards/models/post.py --- a/boards/models/post.py +++ b/boards/models/post.py @@ -62,7 +62,7 @@ DIFF_TYPE_JSON = 'json' PREPARSE_PATTERNS = { r'>>(\d+)': r'[post]\1[/post]', # Reflink ">>123" - r'^(?)>(.+)': r'[quote]\1[/quote]', # Quote ">text" + r'^>([^>].+)': r'[quote]\1[/quote]', # Quote ">text" r'^//(.+)': r'[comment]\1[/comment]', # Comment "//text" } diff --git a/boards/tests/test_parser.py b/boards/tests/test_parser.py --- a/boards/tests/test_parser.py +++ b/boards/tests/test_parser.py @@ -16,4 +16,12 @@ class ParserTest(TestCase): preparsed_text = Post.objects._preparse_text(raw_text) self.assertEqual('[comment]comment[/comment]', preparsed_text, - 'Comment not preparsed.') + 'Comment not preparsed.') + + def test_preparse_reflink(self): + raw_text = '>>12\nText' + preparsed_text = Post.objects._preparse_text(raw_text) + + self.assertEqual('[post]12[/post]\nText', + preparsed_text, 'Reflink not preparsed.') +