diff --git a/Syntaxes/ABNF.tmLanguage b/Syntaxes/ABNF.tmLanguage index 1aa952e..42206c8 100644 --- a/Syntaxes/ABNF.tmLanguage +++ b/Syntaxes/ABNF.tmLanguage @@ -548,6 +548,35 @@ + rule-name-core + + captures + + rule + + name + support.constant.core-rule.$1.abnf + + + match + (?x)\b(?<rule> + ALPHA | + BIT | + CHAR | + CR(?:LF)? | + CTL | + DIGIT | + DQUOTE | + HEXDIG | + HTAB | + LF | + LWSP | + OCTECT | + SP | + VCHAR | + WSP + )\b + rule-name-plain captures @@ -623,6 +652,10 @@ include #string-double-quoted + + include + #rule-name-core + include #rule-name diff --git a/Tests/Example.abnf b/Tests/Example.abnf index 29bf6fc..45c05c4 100644 --- a/Tests/Example.abnf +++ b/Tests/Example.abnf @@ -1,7 +1,7 @@ ; In ABNF comments start with a single semicolon. ; An ABNF rule can contain multiple sub-rules. -rule = subrule1 subrule2 subrule3 +rule = WSP subrule2 DIGIT ; We can also use optional angle brackets around a rule name. = "[]"; To specify a sequence of characters we use