# HG changeset patch # User Gregory Szorc # Date 2017-02-16 00:42:17 # Node ID 6582b3716ae083e6b06af2d3d2ddb837d7b8453d # Parent 71f692f1f678d86ffb4f95a3621aacfdaeb96b05 minirst: detect bullet lists using asterisks Previously, the "bullet" regular expression excluded the asterisk ('*') as a character denoting a bulleted list. Why I'm not sure because the asterisk seems to be the canonical bullet character in reST these days. This patch makes asterisk-prefixed lines parse as bulleted lists. diff --git a/mercurial/minirst.py b/mercurial/minirst.py --- a/mercurial/minirst.py +++ b/mercurial/minirst.py @@ -138,7 +138,7 @@ def findliteralblocks(blocks): i += 1 return blocks -_bulletre = re.compile(r'(-|[0-9A-Za-z]+\.|\(?[0-9A-Za-z]+\)|\|) ') +_bulletre = re.compile(r'(\*|-|[0-9A-Za-z]+\.|\(?[0-9A-Za-z]+\)|\|) ') _optionre = re.compile(r'^(-([a-zA-Z0-9]), )?(--[a-z0-9-]+)' r'((.*) +)(.*)$') _fieldre = re.compile(r':(?![: ])([^:]*)(?%s\n
%s\n' % (term, text)) elif btype == 'bullet': bullet, head = lines[0].split(' ', 1) - if bullet == '-': + if bullet in ('*', '-'): openlist('ul', level) else: openlist('ol', level) diff --git a/tests/test-minirst.py b/tests/test-minirst.py --- a/tests/test-minirst.py +++ b/tests/test-minirst.py @@ -118,6 +118,13 @@ Line blocks are also a form of list: | This is the first line. The line continues here. | This is the second line. + +Bullet lists are also detected: + +* This is the first bullet +* This is the second bullet + It has 2 lines +* This is the third bullet """ debugformats('lists', lists) diff --git a/tests/test-minirst.py.out b/tests/test-minirst.py.out --- a/tests/test-minirst.py.out +++ b/tests/test-minirst.py.out @@ -187,6 +187,12 @@ Line blocks are also a form of list: This is the first line. The line continues here. This is the second line. + +Bullet lists are also detected: + +* This is the first bullet +* This is the second bullet It has 2 lines +* This is the third bullet ---------------------------------------------------------------------- 30 column format: @@ -231,6 +237,14 @@ list: This is the first line. The line continues here. This is the second line. + +Bullet lists are also +detected: + +* This is the first bullet +* This is the second bullet It + has 2 lines +* This is the third bullet ---------------------------------------------------------------------- html format: @@ -276,6 +290,14 @@ Line blocks are also a form of list:
  • This is the first line. The line continues here.
  • This is the second line. +

    +Bullet lists are also detected: +

    +
      +
    • This is the first bullet +
    • This is the second bullet It has 2 lines +
    • This is the third bullet +
    ---------------------------------------------------------------------- == options ==