diff options
| -rw-r--r-- | md_tw.py | 8 | ||||
| -rw-r--r-- | tests/data/blexer-lheading.md | 13 | ||||
| -rw-r--r-- | tests/test_md_tw.py | 11 | 
3 files changed, 32 insertions, 0 deletions
| @@ -59,6 +59,14 @@ class TWBlockLexer(mistune.BlockLexer):              'text': m.group(0),          }) +    def parse_lheading(self, m): +        """Parse setext heading.""" +        self.tokens.append({ +            'type': 'heading', +            'level': 1 if m.group(2) == '=' else 2, +            'text': m.group(0), +        }) +  class TWInlineLexer(mistune.InlineLexer):      """Text Wrap Inline level lexer for inline gramars.""" diff --git a/tests/data/blexer-lheading.md b/tests/data/blexer-lheading.md new file mode 100644 index 0000000..13a5160 --- /dev/null +++ b/tests/data/blexer-lheading.md @@ -0,0 +1,13 @@ +Milky Chance +============ + +Clemens, Phillipp, Antonio + +Flashed +------- + +Lost our mind. + +### Junk Mind + +In the junkyard. diff --git a/tests/test_md_tw.py b/tests/test_md_tw.py index af2ce45..a71c191 100644 --- a/tests/test_md_tw.py +++ b/tests/test_md_tw.py @@ -79,6 +79,17 @@ class TestTWBlockLexer(object):          self._validate(tokens, 'heading', expected_hs) +    def test_parse_lheading(self): +        tokens = self._parse('blexer-lheading.md') + +        expected_lhs = [ +            'Milky Chance\n============\n\n', +            'Flashed\n-------\n\n', +            '### Junk Mind\n\n', +            ] + +        self._validate(tokens, 'heading', expected_lhs) +      def teardown(self):          pass | 
