Skip to content

Commit d64ab0e

Browse files
ValdezFOmaramaanq
authored andcommitted
feat: support inline flags
1 parent 6d3703b commit d64ab0e

File tree

6 files changed

+1811
-1170
lines changed

6 files changed

+1811
-1170
lines changed

grammar.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ module.exports = grammar({
6868
$.anonymous_capturing_group,
6969
$.named_capturing_group,
7070
$.non_capturing_group,
71+
$.inline_flags_group,
7172
),
7273
optional(choice(
7374
$.zero_or_more,
@@ -153,6 +154,19 @@ module.exports = grammar({
153154

154155
non_capturing_group: $ => seq('(?:', $.pattern, ')'),
155156

157+
inline_flags_group: $ => seq(
158+
'(?',
159+
choice(
160+
$.flags,
161+
seq($.flags, '-', $.flags),
162+
seq('-', $.flags),
163+
),
164+
optional(seq(':', $.pattern)),
165+
')',
166+
),
167+
168+
flags: _ => /[a-zA-Z]+/,
169+
156170
zero_or_more: quantifierRule(_ => '*'),
157171
one_or_more: quantifierRule(_ => '+'),
158172
optional: quantifierRule(_ => '?'),

queries/highlights.scm

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,12 @@
4141
"," @punctuation.delimiter
4242
])
4343

44+
(inline_flags_group
45+
"-"? @operator
46+
":"? @punctuation.delimiter)
47+
48+
(flags) @character.special
49+
4450
(character_class
4551
[
4652
"^" @operator

src/grammar.json

Lines changed: 81 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/node-types.json

Lines changed: 37 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)