diff options
| author | Laurenz <laurmaedje@gmail.com> | 2023-02-02 14:27:31 +0100 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2023-02-02 14:27:31 +0100 |
| commit | bb12624e8e970915e41363809139f168d4c545c6 (patch) | |
| tree | 33787a13e8c1e03377d7044d9b5d703d791fc6a0 /src/syntax/parser.rs | |
| parent | 5f5c65927982447133b625edea3f5c9bab4f9e3d (diff) | |
Fix heading and list markers
Diffstat (limited to 'src/syntax/parser.rs')
| -rw-r--r-- | src/syntax/parser.rs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/syntax/parser.rs b/src/syntax/parser.rs index afb207b6..5933d481 100644 --- a/src/syntax/parser.rs +++ b/src/syntax/parser.rs @@ -157,7 +157,7 @@ fn emph(p: &mut Parser) { fn heading(p: &mut Parser) { let m = p.marker(); p.assert(SyntaxKind::HeadingMarker); - whitespace(p); + whitespace_line(p); markup(p, false, usize::MAX, |kind| { kind == SyntaxKind::Label || kind == SyntaxKind::RightBracket }); @@ -168,7 +168,7 @@ fn list_item(p: &mut Parser) { let m = p.marker(); p.assert(SyntaxKind::ListMarker); let min_indent = p.column(p.prev_end()); - whitespace(p); + whitespace_line(p); markup(p, false, min_indent, |kind| kind == SyntaxKind::RightBracket); p.wrap(m, SyntaxKind::ListItem); } @@ -177,7 +177,7 @@ fn enum_item(p: &mut Parser) { let m = p.marker(); p.assert(SyntaxKind::EnumMarker); let min_indent = p.column(p.prev_end()); - whitespace(p); + whitespace_line(p); markup(p, false, min_indent, |kind| kind == SyntaxKind::RightBracket); p.wrap(m, SyntaxKind::EnumItem); } @@ -186,18 +186,18 @@ fn term_item(p: &mut Parser) { let m = p.marker(); p.assert(SyntaxKind::TermMarker); let min_indent = p.column(p.prev_end()); - whitespace(p); + whitespace_line(p); markup(p, false, usize::MAX, |kind| { kind == SyntaxKind::Colon || kind == SyntaxKind::RightBracket }); p.expect(SyntaxKind::Colon); - whitespace(p); + whitespace_line(p); markup(p, false, min_indent, |kind| kind == SyntaxKind::RightBracket); p.wrap(m, SyntaxKind::TermItem); } -fn whitespace(p: &mut Parser) { - while p.current().is_trivia() { +fn whitespace_line(p: &mut Parser) { + while !p.newline() && p.current().is_trivia() { p.eat(); } } |
