aboutsummaryrefslogtreecommitdiff
path: root/grammar.js
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2023-11-09 23:32:39 +0100
committerThomas Voss <mail@thomasvoss.com> 2023-11-09 23:32:39 +0100
commitb168a6fb6d771e4efd99762767a32a80ef8fb6d7 (patch)
tree67986d3de922b18d5b208892bfdf3434987ea604 /grammar.js
parent88fae5dda7d15936a5372cc738f5b70fb2a96550 (diff)
Modify the grammar a bit
Diffstat (limited to 'grammar.js')
-rw-r--r--grammar.js15
1 files changed, 6 insertions, 9 deletions
diff --git a/grammar.js b/grammar.js
index 6d309b2..d0df113 100644
--- a/grammar.js
+++ b/grammar.js
@@ -15,22 +15,19 @@ module.exports = grammar({
node_body: $ => choice(
repeat1($.node),
- $.text_node,
+ seq(choice('-', '='), optional($.text)),
),
node_name: $ => /[a-zA-Z:_\u{000C0}-\u{000D6}\u{000D8}-\u{000F6}\u{000F8}-\u{002FF}\u{00370}-\u{0037D}\u{0037F}-\u{01FFF}\u{0200C}-\u{0200D}\u{02070}-\u{0218F}\u{02C00}-\u{02FEF}\u{03001}-\u{0D7FF}\u{0F900}-\u{0FDCF}\u{0FDF0}-\u{0FFFD}\u{10000}-\u{EFFFF}][a-zA-Z0-9:_\-.ยท\u{00300}-\u{0036F}\u{0203F}-\u{02040}\u{000C0}-\u{000D6}\u{000D8}-\u{000F6}\u{000F8}-\u{002FF}\u{00370}-\u{0037D}\u{0037F}-\u{01FFF}\u{0200C}-\u{0200D}\u{02070}-\u{0218F}\u{02C00}-\u{02FEF}\u{03001}-\u{0D7FF}\u{0F900}-\u{0FDCF}\u{0FDF0}-\u{0FFFD}\u{10000}-\u{EFFFF}]*/u,
- text_node: $ => seq(
- choice('-', '='),
- repeat(
- choice(
- $.literal_text,
- seq('@', $.node),
- ),
+ text: $ => repeat1(
+ choice(
+ $.literal_text,
+ seq('@', $.node),
),
),
- literal_text: $ => /(\\[@}\\]|[^@}])+/,
+ literal_text: $ => /(\\[@}\\]|[^@}\\])+/,
attribute_list: $ => repeat1($.attribute),