summaryrefslogtreecommitdiff
path: root/src/syntax
diff options
context:
space:
mode:
Diffstat (limited to 'src/syntax')
-rw-r--r--src/syntax/parser.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/syntax/parser.rs b/src/syntax/parser.rs
index d8eeed24..f6ed2f5d 100644
--- a/src/syntax/parser.rs
+++ b/src/syntax/parser.rs
@@ -308,7 +308,12 @@ fn math_delimited(p: &mut Parser, stop: MathClass) {
p.eat();
let m2 = p.marker();
while !p.eof() && !p.at(SyntaxKind::Dollar) {
- if math_class(p.current_text()) == Some(stop) {
+ let class = math_class(p.current_text());
+ if stop == MathClass::Fence && class == Some(MathClass::Closing) {
+ break;
+ }
+
+ if class == Some(stop) {
p.wrap(m2, SyntaxKind::Math);
p.eat();
p.wrap(m, SyntaxKind::MathDelimited);