summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--crates/typst-syntax/src/lexer.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/crates/typst-syntax/src/lexer.rs b/crates/typst-syntax/src/lexer.rs
index 341484c7..e1fb0026 100644
--- a/crates/typst-syntax/src/lexer.rs
+++ b/crates/typst-syntax/src/lexer.rs
@@ -193,8 +193,8 @@ impl Lexer<'_> {
}
fn decorator(&mut self) -> SyntaxKind {
- while !self.s.eat_newline() {
- let start = self.s.cursor();
+ let mut start = self.s.cursor();
+ while !self.s.peek().is_some_and(is_newline) {
let token = match self.s.eat() {
Some(c) if is_space(c, self.mode) => self.whitespace(start, c),
Some('/') if self.s.eat_if('/') => break,
@@ -216,6 +216,7 @@ impl Lexer<'_> {
let end = self.s.cursor();
self.subtree.push((token, end));
+ start = end;
}
SyntaxKind::Decorator