solorice/vscodium/extensions/magicstack.magicpython-1.1.1/grammars/MagicRegExp.tmLanguage
2022-04-28 21:17:01 +03:00

796 lines
22 KiB
Plaintext

<!-- AUTOGENERATED FROM grammars/src/MagicRegExp.syntax.yaml -->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>name</key>
<string>MagicRegExp</string>
<key>scopeName</key>
<string>source.regexp.python</string>
<key>fileTypes</key>
<array>
<string>re</string>
</array>
<key>uuid</key>
<string>39e15186-71e6-11e5-b82c-7c6d62900c7c</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>regexp-base-expression</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-quantifier</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-base-common</string>
</dict>
</array>
</dict>
<key>fregexp-base-expression</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#fregexp-quantifier</string>
</dict>
<dict>
<key>include</key>
<string>#fstring-formatting-braces</string>
</dict>
<dict>
<key>match</key>
<string>\{.*?\}</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-base-common</string>
</dict>
</array>
</dict>
<key>fstring-formatting-braces</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>comment</key>
<string>empty braces are illegal</string>
<key>match</key>
<string>({)(\s*?)(})</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>constant.character.format.placeholder.other.python</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.brace.python</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>constant.character.format.placeholder.other.python</string>
</dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>constant.character.escape.python</string>
<key>match</key>
<string>({{|}})</string>
</dict>
</array>
</dict>
<key>regexp-base-common</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>name</key>
<string>support.other.match.any.regexp</string>
<key>match</key>
<string>\.</string>
</dict>
<dict>
<key>name</key>
<string>support.other.match.begin.regexp</string>
<key>match</key>
<string>\^</string>
</dict>
<dict>
<key>name</key>
<string>support.other.match.end.regexp</string>
<key>match</key>
<string>\$</string>
</dict>
<dict>
<key>name</key>
<string>keyword.operator.quantifier.regexp</string>
<key>match</key>
<string>[+*?]\??</string>
</dict>
<dict>
<key>name</key>
<string>keyword.operator.disjunction.regexp</string>
<key>match</key>
<string>\|</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-escape-sequence</string>
</dict>
</array>
</dict>
<key>regexp-quantifier</key>
<dict>
<key>name</key>
<string>keyword.operator.quantifier.regexp</string>
<key>match</key>
<string>(?x)
\{(
\d+ | \d+,(\d+)? | ,\d+
)\}
</string>
</dict>
<key>fregexp-quantifier</key>
<dict>
<key>name</key>
<string>keyword.operator.quantifier.regexp</string>
<key>match</key>
<string>(?x)
\{\{(
\d+ | \d+,(\d+)? | ,\d+
)\}\}
</string>
</dict>
<key>regexp-backreference-number</key>
<dict>
<key>name</key>
<string>meta.backreference.regexp</string>
<key>match</key>
<string>(\\[1-9]\d?)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.tag.backreference.regexp</string>
</dict>
</dict>
</dict>
<key>regexp-backreference</key>
<dict>
<key>name</key>
<string>meta.backreference.named.regexp</string>
<key>match</key>
<string>(?x)
(\() (\?P= \w+(?:\s+[[:alnum:]]+)?) (\))
</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.tag.named.backreference.regexp</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp</string>
</dict>
</dict>
</dict>
<key>regexp-flags</key>
<dict>
<key>name</key>
<string>storage.modifier.flag.regexp</string>
<key>match</key>
<string>\(\?[aiLmsux]+\)</string>
</dict>
<key>regexp-escape-special</key>
<dict>
<key>name</key>
<string>support.other.escape.special.regexp</string>
<key>match</key>
<string>\\([AbBdDsSwWZ])</string>
</dict>
<key>regexp-escape-character</key>
<dict>
<key>name</key>
<string>constant.character.escape.regexp</string>
<key>match</key>
<string>(?x)
\\ (
x[0-9A-Fa-f]{2}
| 0[0-7]{1,2}
| [0-7]{3}
)
</string>
</dict>
<key>regexp-escape-unicode</key>
<dict>
<key>name</key>
<string>constant.character.unicode.regexp</string>
<key>match</key>
<string>(?x)
\\ (
u[0-9A-Fa-f]{4}
| U[0-9A-Fa-f]{8}
)
</string>
</dict>
<key>regexp-escape-catchall</key>
<dict>
<key>name</key>
<string>constant.character.escape.regexp</string>
<key>match</key>
<string>\\(.|\n)</string>
</dict>
<key>regexp-escape-sequence</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-escape-special</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-escape-character</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-escape-unicode</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-backreference-number</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-escape-catchall</string>
</dict>
</array>
</dict>
<key>regexp-charecter-set-escapes</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>name</key>
<string>constant.character.escape.regexp</string>
<key>match</key>
<string>\\[abfnrtv\\]</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-escape-special</string>
</dict>
<dict>
<key>name</key>
<string>constant.character.escape.regexp</string>
<key>match</key>
<string>\\([0-7]{1,3})</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-escape-character</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-escape-unicode</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-escape-catchall</string>
</dict>
</array>
</dict>
<key>codetags</key>
<dict>
<key>match</key>
<string>(?:\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\b)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.codetag.notation.python</string>
</dict>
</dict>
</dict>
<key>regexp-expression</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-base-expression</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-character-set</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-comments</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-flags</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-named-group</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-backreference</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-lookahead</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-lookahead-negative</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-lookbehind</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-lookbehind-negative</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-conditional</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-parentheses-non-capturing</string>
</dict>
<dict>
<key>include</key>
<string>#regexp-parentheses</string>
</dict>
</array>
</dict>
<key>regexp-character-set</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>(?x)
\[ \^? \] (?! .*?\])
</string>
</dict>
<dict>
<key>name</key>
<string>meta.character.set.regexp</string>
<key>begin</key>
<string>(\[)(\^)?(\])?</string>
<key>end</key>
<string>(\])</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.character.set.begin.regexp constant.other.set.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.operator.negation.regexp</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>constant.character.set.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.character.set.end.regexp constant.other.set.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-charecter-set-escapes</string>
</dict>
<dict>
<key>name</key>
<string>constant.character.set.regexp</string>
<key>match</key>
<string>[^\n]</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>regexp-named-group</key>
<dict>
<key>name</key>
<string>meta.named.regexp</string>
<key>begin</key>
<string>(?x)
(\() (\?P &lt;\w+(?:\s+[[:alnum:]]+)?&gt;)
</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.tag.named.group.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
</dict>
<key>regexp-comments</key>
<dict>
<key>name</key>
<string>comment.regexp</string>
<key>begin</key>
<string>\(\?#</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.comment.begin.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.comment.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#codetags</string>
</dict>
</array>
</dict>
<key>regexp-lookahead</key>
<dict>
<key>begin</key>
<string>(\()\?=</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>keyword.operator.lookahead.regexp</string>
</dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.parenthesis.lookahead.begin.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
</dict>
<key>regexp-lookahead-negative</key>
<dict>
<key>begin</key>
<string>(\()\?!</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>keyword.operator.lookahead.negative.regexp</string>
</dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.parenthesis.lookahead.begin.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
</dict>
<key>regexp-lookbehind</key>
<dict>
<key>begin</key>
<string>(\()\?&lt;=</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>keyword.operator.lookbehind.regexp</string>
</dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.parenthesis.lookbehind.begin.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
</dict>
<key>regexp-lookbehind-negative</key>
<dict>
<key>begin</key>
<string>(\()\?&lt;!</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>keyword.operator.lookbehind.negative.regexp</string>
</dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.parenthesis.lookbehind.begin.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
</dict>
<key>regexp-conditional</key>
<dict>
<key>begin</key>
<string>(\()\?\((\w+(?:\s+[[:alnum:]]+)?|\d+)\)</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>keyword.operator.conditional.regexp</string>
</dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.parenthesis.conditional.begin.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
</dict>
<key>regexp-parentheses-non-capturing</key>
<dict>
<key>begin</key>
<string>\(\?:</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
</dict>
<key>regexp-parentheses</key>
<dict>
<key>begin</key>
<string>\(</string>
<key>end</key>
<string>(\))</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp</string>
</dict>
</dict>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.other.parenthesis.regexp punctuation.parenthesis.end.regexp</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>invalid.illegal.newline.python</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regexp-expression</string>
</dict>
</array>
</dict>
</dict>
</dict>
</plist>