Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

1525 lines (1517 sloc) 34.894 kb
<?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>comment</key>
<string>Textmate bundle for Elixir Programming Language.</string>
<key>fileTypes</key>
<array>
<string>ex</string>
<string>exs</string>
</array>
<key>firstLineMatch</key>
<string>^#!/.*\belixir</string>
<key>foldingStartMarker</key>
<string>(after|else|catch|rescue|\-\&gt;|\{|\[|do)\s*$</string>
<key>foldingStopMarker</key>
<string>^\s*((\}|\]|after|else|catch|rescue)\s*$|end\b)</string>
<key>keyEquivalent</key>
<string>^~E</string>
<key>name</key>
<string>Elixir</string>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.module.elixir</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.type.module.elixir</string>
</dict>
</dict>
<key>match</key>
<string>^\s*(defmodule)\s+(([A-Z]\w*\s*(\.)\s*)*[A-Z]\w*)</string>
<key>name</key>
<string>meta.module.elixir</string>
</dict>
<dict>
<key>begin</key>
<string>@(module)?doc (%[a-z])?"""</string>
<key>comment</key>
<string>@doc with heredocs is treated as documentation</string>
<key>end</key>
<string>\s*"""$</string>
<key>name</key>
<string>comment.documentation.heredoc</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>@(module)?doc %[A-B]"""</string>
<key>comment</key>
<string>@doc with heredocs is treated as documentation</string>
<key>end</key>
<string>\s*"""$</string>
<key>name</key>
<string>comment.documentation.heredoc</string>
</dict>
<dict>
<key>comment</key>
<string>@doc false is treated as documentation</string>
<key>match</key>
<string>@(module)?doc false</string>
<key>name</key>
<string>comment.documentation.false</string>
</dict>
<dict>
<key>begin</key>
<string>@(module)?doc "</string>
<key>comment</key>
<string>@doc with string is treated as documentation</string>
<key>end</key>
<string>"</string>
<key>name</key>
<string>comment.documentation.string</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>match</key>
<string>(?&lt;!\.)\b(do|end|case|bc|lc|if|cond|unless|try|loop|receive|fn|defmodule|defp?|defprotocol|defimpl|defrecord|defmacrop?|defdelegate|defexception|exit|after|rescue|catch|else|raise|throw)\b(?![?!])</string>
<key>name</key>
<string>keyword.control.elixir</string>
</dict>
<dict>
<key>comment</key>
<string> as above, just doesn't need a 'end' and does a logic operation</string>
<key>match</key>
<string>(?&lt;!\.)\b(and|not|or|when|xor|in|inlist|inbits)\b</string>
<key>name</key>
<string>keyword.operator.logical.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\b(nil|true|false)\b(?![?!])</string>
<key>name</key>
<string>constant.language.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\b(__(FILE|CALLER|ENV|MODULE|MAIN)__)\b(?![?!])</string>
<key>name</key>
<string>variable.language.elixir</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.elixir</string>
</dict>
</dict>
<key>match</key>
<string>(@)[a-zA-Z_]\w*</string>
<key>name</key>
<string>variable.other.readwrite.module.elixir</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.elixir</string>
</dict>
</dict>
<key>match</key>
<string>(@)[a-zA-Z_]\w*</string>
<key>name</key>
<string>variable.other.readwrite.module.elixir</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.elixir</string>
</dict>
</dict>
<key>match</key>
<string>(&amp;)\d</string>
<key>name</key>
<string>variable.other.anonymous.elixir</string>
</dict>
<dict>
<key>comment</key>
<string> everything being a special function is a..</string>
<key>match</key>
<string>\b(import|require|alias|use|recur|quote|unquote|super)\b(?![?!])</string>
<key>name</key>
<string>keyword.other.special.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\b[A-Z]\w*\b</string>
<key>name</key>
<string>variable.other.constant.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\b(0[xX]\h(?&gt;_?\h)*|\d(?&gt;_?\d)*(\.(?![^[:space:][:digit:]])(?&gt;_?\d)*)?([eE][-+]?\d(?&gt;_?\d)*)?|0[bB][01]+)\b</string>
<key>name</key>
<string>constant.numeric.elixir</string>
</dict>
<dict>
<key>begin</key>
<string>:'</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.constant.elixir</string>
</dict>
</dict>
<key>end</key>
<string>'</string>
<key>name</key>
<string>constant.other.symbol.single-quoted.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>:"</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.constant.elixir</string>
</dict>
</dict>
<key>end</key>
<string>"</string>
<key>name</key>
<string>constant.other.symbol.double-quoted.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>(?&gt;''')</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>Single-quoted heredocs</string>
<key>end</key>
<string>^\s*'''$</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>support.function.variable.quoted.single.heredoc.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>'</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>single quoted string (allows for interpolation)</string>
<key>end</key>
<string>'</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>support.function.variable.quoted.single.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>(?&gt;""")</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>Double-quoted heredocs</string>
<key>end</key>
<string>^\s*"""$</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.double.heredoc.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>"</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>double quoted string (allows for interpolation)</string>
<key>end</key>
<string>"</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.double.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[a-z](?&gt;""")</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>Double-quoted heredocs sigils</string>
<key>end</key>
<string>^\s*"""$</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.double.heredoc.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[a-z]\{</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (allow for interpolation)</string>
<key>end</key>
<string>\}[a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.interpolated.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#nest_curly_i</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[a-z]\[</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (allow for interpolation)</string>
<key>end</key>
<string>\][a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.interpolated.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#nest_brackets_i</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[a-z]\&lt;</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (allow for interpolation)</string>
<key>end</key>
<string>\&gt;[a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.interpolated.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#nest_ltgt_i</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[a-z]\(</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (allow for interpolation)</string>
<key>end</key>
<string>\)[a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.interpolated.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#nest_parens_i</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[a-z]([^\w])</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (allow for interpolation)</string>
<key>end</key>
<string>\1[a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.interpolated.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[A-Z](?&gt;""")</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>Double-quoted heredocs sigils</string>
<key>end</key>
<string>^\s*"""$</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.other.literal.upper.elixir</string>
</dict>
<dict>
<key>begin</key>
<string>%[A-Z]\{</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (without interpolation)</string>
<key>end</key>
<string>\}[a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.other.literal.upper.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_curly_i</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[A-Z]\[</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (without interpolation)</string>
<key>end</key>
<string>\][a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.other.literal.upper.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_brackets_i</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[A-Z]\&lt;</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (without interpolation)</string>
<key>end</key>
<string>\&gt;[a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.other.literal.upper.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_ltgt_i</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[A-Z]\(</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (without interpolation)</string>
<key>end</key>
<string>\)[a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.other.literal.upper.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_parens_i</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>%[A-Z]([^\w])</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>sigil (without interpolation)</string>
<key>end</key>
<string>\1[a-z]*</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.elixir</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.other.literal.upper.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.constant.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>symbols</string>
<key>match</key>
<string>(?&lt;!:)(:)(?&gt;[a-zA-Z_]\w*(?&gt;[?!]|=(?![&gt;=]))?|\&lt;\&gt;|===?|\&lt;\&lt;\&gt;\&gt;|&gt;=?|&lt;=?|&lt;=&gt;|&amp;&amp;?|%\(\)|%\[\]|%\{\}|\+\+?|\-\-?|\|\|?|\!|\.|//|[%&amp;`/\|]|\*\*?|=?~|&lt;\-)</string>
<key>name</key>
<string>constant.other.symbol.elixir</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.constant.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>symbols</string>
<key>match</key>
<string>(?&gt;[a-zA-Z_]\w*(?&gt;[?!])?)(:)(?!:)</string>
<key>name</key>
<string>constant.other.symbol.elixir.19syntax</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.elixir</string>
</dict>
</dict>
<key>match</key>
<string>(?:^[ \t]+)?(#).*$\n?</string>
<key>name</key>
<string>comment.line.number-sign.elixir</string>
</dict>
<dict>
<key>comment</key>
<string>
matches questionmark-letters.
examples (1st alternation = hex):
?\x1 ?\x61
examples (2nd alternation = octal):
?\0 ?\07 ?\017
examples (3rd alternation = escaped):
?\n ?\b
examples (4th alternation = meta-ctrl):
?\C-a ?\M-a ?\C-\M-\C-\M-a
examples (4th alternation = normal):
?a ?A ?0
?* ?" ?(
?. ?#
the negative lookbehind prevents against matching
p(42.tainted?)
</string>
<key>match</key>
<string>(?&lt;!\w)\?(\\(x\h{1,2}(?!\h)\b|0[0-7]{0,2}(?![0-7])\b|[^x0MC])|(\\[MC]-)+\w|[^\s\\])</string>
<key>name</key>
<string>constant.numeric.elixir</string>
</dict>
<dict>
<key>begin</key>
<string>^__END__\n</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>string.unquoted.program-block.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>__END__ marker</string>
<key>contentName</key>
<string>text.plain</string>
<key>end</key>
<string>(?=not)impossible</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>(?=&lt;?xml|&lt;(?i:html\b)|!DOCTYPE (?i:html\b))</string>
<key>end</key>
<string>(?=not)impossible</string>
<key>name</key>
<string>text.html.embedded.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>text.html.basic</string>
</dict>
</array>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>(?&lt;=\{|do|\{\s|do\s)(\|)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.separator.variable.elixir</string>
</dict>
</dict>
<key>end</key>
<string>(\|)</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>[_a-zA-Z][_a-zA-Z0-9]*</string>
<key>name</key>
<string>variable.other.block.elixir</string>
</dict>
<dict>
<key>match</key>
<string>,</string>
<key>name</key>
<string>punctuation.separator.variable.elixir</string>
</dict>
</array>
</dict>
<dict>
<key>match</key>
<string>%=|\*=|\*\*=|\+=|\-=|\^=|\|\|=</string>
<key>name</key>
<string>keyword.operator.assignment.augmented.elixir</string>
</dict>
<dict>
<key>match</key>
<string>&lt;=&gt;|&lt;(?!&lt;|=)|&gt;(?!&lt;|=|&gt;)|&lt;=|&gt;=|===|==|=~|!=|!~|(?&lt;=[ \t])\?</string>
<key>name</key>
<string>keyword.operator.comparison.elixir</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;=[ \t])!+|\bnot\b|&amp;&amp;|\band\b|\|\||\bor\b|\^</string>
<key>name</key>
<string>keyword.operator.logical.elixir</string>
</dict>
<dict>
<key>match</key>
<string>(\*|\+|\-|/)</string>
<key>name</key>
<string>keyword.operator.arithmetic.elixir</string>
</dict>
<dict>
<key>match</key>
<string>=</string>
<key>name</key>
<string>keyword.operator.assignment.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\||\+\+|\-\-|\*\*|\/\/|\&lt;\-|\&lt;\&gt;|&lt;&lt;|&gt;&gt;</string>
<key>name</key>
<string>keyword.operator.other.elixir</string>
</dict>
<dict>
<key>match</key>
<string>:</string>
<key>name</key>
<string>punctuation.separator.other.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\;</string>
<key>name</key>
<string>punctuation.separator.statement.elixir</string>
</dict>
<dict>
<key>match</key>
<string>,</string>
<key>name</key>
<string>punctuation.separator.object.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\.</string>
<key>name</key>
<string>punctuation.separator.method.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\{|\}</string>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\[|\]</string>
<key>name</key>
<string>punctuation.section.array.elixir</string>
</dict>
<dict>
<key>match</key>
<string>\(|\)</string>
<key>name</key>
<string>punctuation.section.function.elixir</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>escaped_char</key>
<dict>
<key>match</key>
<string>\\(?:[0-7]{1,3}|x[\da-fA-F]{1,2}|.)</string>
<key>name</key>
<string>constant.character.escape.elixir</string>
</dict>
<key>interpolated_elixir</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.embedded.elixir</string>
</dict>
<key>1</key>
<dict>
<key>name</key>
<string>source.elixir.embedded.source.empty</string>
</dict>
</dict>
<key>match</key>
<string>#\{(\})</string>
<key>name</key>
<string>source.elixir.embedded.source</string>
</dict>
<dict>
<key>begin</key>
<string>#\{</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.embedded.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>name</key>
<string>source.elixir.embedded.source</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_curly_and_self</string>
</dict>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>nest_brackets</key>
<dict>
<key>begin</key>
<string>\[</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\]</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_brackets</string>
</dict>
</array>
</dict>
<key>nest_brackets_i</key>
<dict>
<key>begin</key>
<string>\[</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\]</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#nest_brackets_i</string>
</dict>
</array>
</dict>
<key>nest_brackets_r</key>
<dict>
<key>begin</key>
<string>\[</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\]</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regex_sub</string>
</dict>
<dict>
<key>include</key>
<string>#nest_brackets_r</string>
</dict>
</array>
</dict>
<key>nest_curly</key>
<dict>
<key>begin</key>
<string>\{</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_curly</string>
</dict>
</array>
</dict>
<key>nest_curly_and_self</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>\{</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_curly_and_self</string>
</dict>
</array>
</dict>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
<key>nest_curly_i</key>
<dict>
<key>begin</key>
<string>\{</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#nest_curly_i</string>
</dict>
</array>
</dict>
<key>nest_curly_r</key>
<dict>
<key>begin</key>
<string>\{</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regex_sub</string>
</dict>
<dict>
<key>include</key>
<string>#nest_curly_r</string>
</dict>
</array>
</dict>
<key>nest_ltgt</key>
<dict>
<key>begin</key>
<string>\&lt;</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\&gt;</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_ltgt</string>
</dict>
</array>
</dict>
<key>nest_ltgt_i</key>
<dict>
<key>begin</key>
<string>\&lt;</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\&gt;</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#nest_ltgt_i</string>
</dict>
</array>
</dict>
<key>nest_ltgt_r</key>
<dict>
<key>begin</key>
<string>\&lt;</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\&gt;</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regex_sub</string>
</dict>
<dict>
<key>include</key>
<string>#nest_ltgt_r</string>
</dict>
</array>
</dict>
<key>nest_parens</key>
<dict>
<key>begin</key>
<string>\(</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\)</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#nest_parens</string>
</dict>
</array>
</dict>
<key>nest_parens_i</key>
<dict>
<key>begin</key>
<string>\(</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\)</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#nest_parens_i</string>
</dict>
</array>
</dict>
<key>nest_parens_r</key>
<dict>
<key>begin</key>
<string>\(</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\)</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regex_sub</string>
</dict>
<dict>
<key>include</key>
<string>#nest_parens_r</string>
</dict>
</array>
</dict>
<key>regex_sub</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#interpolated_elixir</string>
</dict>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.arbitrary-repitition.elixir</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.definition.arbitrary-repitition.elixir</string>
</dict>
</dict>
<key>match</key>
<string>(\{)\d+(,\d+)?(\})</string>
<key>name</key>
<string>string.regexp.arbitrary-repitition.elixir</string>
</dict>
<dict>
<key>begin</key>
<string>\[(?:\^?\])?</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.character-class.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\]</string>
<key>name</key>
<string>string.regexp.character-class.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>\(</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.group.elixir</string>
</dict>
</dict>
<key>end</key>
<string>\)</string>
<key>name</key>
<string>string.regexp.group.elixir</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#regex_sub</string>
</dict>
</array>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.elixir</string>
</dict>
</dict>
<key>comment</key>
<string>We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.</string>
<key>match</key>
<string>(?&lt;=^|\s)(#)\s[[a-zA-Z0-9,. \t?!-][^\x{00}-\x{7F}]]*$</string>
<key>name</key>
<string>comment.line.number-sign.elixir</string>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>source.elixir</string>
<key>uuid</key>
<string>D00C06B9-71B2-4FEB-A0E3-37237F579456</string>
</dict>
</plist>
Jump to Line
Something went wrong with that request. Please try again.