addons/isl/public/generated/textmate/source_shell_TextMateGrammar.jsonblame
View source
b69ab311{"generated":"@generated","information_for_contributors":["This file has been converted from https://github.com/atom/language-shellscript/blob/master/grammars/shell-unix-bash.cson","If you want to provide a fix or improvement, please create a pull request against the original repository.","Once accepted there, we are happy to receive an update request."],"version":"https://github.com/atom/language-shellscript/commit/4c3711edbe8eac6f501976893976b1ac6a043d50","name":"Shell Script","scopeName":"source.shell","patterns":[{"include":"#comment"},{"include":"#pipeline"},{"include":"#list"},{"include":"#compound-command"},{"include":"#loop"},{"include":"#string"},{"include":"#function-definition"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#keyword"},{"include":"#support"}],"repository":{"case-clause":{"patterns":[{"begin":"(?=\\S)","end":";;","endCaptures":{"0":{"name":"punctuation.terminator.case-clause.shell"}},"name":"meta.scope.case-clause.shell","patterns":[{"begin":"\\(|(?=\\S)","beginCaptures":{"0":{"name":"punctuation.definition.case-pattern.shell"}},"end":"\\)","endCaptures":{"0":{"name":"punctuation.definition.case-pattern.shell"}},"name":"meta.scope.case-pattern.shell","patterns":[{"match":"\\|","name":"punctuation.separator.pipe-sign.shell"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#pathname"}]},{"begin":"(?<=\\))","end":"(?=;;)","name":"meta.scope.case-clause-body.shell","patterns":[{"include":"$self"}]}]}]},"comment":{"begin":"(^\\s+)?(?<=^|\\W)(?<!-)(?=#)(?!#{)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.shell"}},"end":"(?!\\G)","patterns":[{"begin":"#!","beginCaptures":{"0":{"name":"punctuation.definition.comment.shebang.shell"}},"end":"$","name":"comment.line.number-sign.shebang.shell"},{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.shell"}},"end":"$","name":"comment.line.number-sign.shell"}]},"compound-command":{"patterns":[{"begin":"\\[{1,2}","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"\\]{1,2}","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical-expression"},{"include":"$self"}]},{"begin":"\\({2}","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\){2}","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.other.math.shell","patterns":[{"include":"#math"}]},{"begin":"\\(","beginCaptures":{"0":{"name":"punctuation.definition.subshell.shell"}},"end":"\\)","endCaptures":{"0":{"name":"punctuation.definition.subshell.shell"}},"name":"meta.scope.subshell.shell","patterns":[{"include":"$self"}]},{"begin":"(?<=\\s|^){(?=\\s|$)","beginCaptures":{"0":{"name":"punctuation.definition.group.shell"}},"end":"(?<=^|;)\\s*(})","endCaptures":{"1":{"name":"punctuation.definition.group.shell"}},"name":"meta.scope.group.shell","patterns":[{"include":"$self"}]}]},"function-definition":{"patterns":[{"begin":"(?<=^|;|&|\\s)(function)\\s+([^\\s\\\\]+)(?:\\s*(\\(\\)))?","beginCaptures":{"1":{"name":"storage.type.function.shell"},"2":{"name":"entity.name.function.shell"},"3":{"name":"punctuation.definition.arguments.shell"}},"end":";|&|$","endCaptures":{"0":{"name":"punctuation.definition.function.shell"}},"name":"meta.function.shell","patterns":[{"include":"$self"}]},{"begin":"(?<=^|;|&|\\s)([^\\s\\\\=]+)\\s*(\\(\\))","beginCaptures":{"1":{"name":"entity.name.function.shell"},"2":{"name":"punctuation.definition.arguments.shell"}},"end":";|&|$","endCaptures":{"0":{"name":"punctuation.definition.function.shell"}},"name":"meta.function.shell","patterns":[{"include":"$self"}]}]},"heredoc":{"patterns":[{"begin":"(<<)-\\s*(\"|'|)\\s*(RUBY)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^\\t*(RUBY)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.no-indent.ruby.shell","contentName":"source.ruby.embedded.shell","patterns":[{"include":"source.ruby"}]},{"begin":"(<<)\\s*(\"|'|)\\s*(RUBY)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^(RUBY)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.ruby.shell","contentName":"source.ruby.embedded.shell","patterns":[{"include":"source.ruby"}]},{"begin":"(<<)-\\s*(\"|'|)\\s*(PYTHON)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^\\t*(PYTHON)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.no-indent.python.shell","contentName":"source.python.embedded.shell","patterns":[{"include":"source.python"}]},{"begin":"(<<)\\s*(\"|'|)\\s*(PYTHON)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^(PYTHON)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.python.shell","contentName":"source.python.embedded.shell","patterns":[{"include":"source.python"}]},{"begin":"(<<)-\\s*(\"|'|)\\s*(APPLESCRIPT)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^\\t*(APPLESCRIPT)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.no-indent.applescript.shell","contentName":"source.applescript.embedded.shell","patterns":[{"include":"source.applescript"}]},{"begin":"(<<)\\s*(\"|'|)\\s*(APPLESCRIPT)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^(APPLESCRIPT)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.applescript.shell","contentName":"source.applescript.embedded.shell","patterns":[{"include":"source.applescript"}]},{"begin":"(<<)-\\s*(\"|'|)\\s*(HTML)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^\\t*(HTML)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.no-indent.html.shell","contentName":"text.html.embedded.shell","patterns":[{"include":"text.html.basic"}]},{"begin":"(<<)\\s*(\"|'|)\\s*(HTML)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^(HTML)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.html.shell","contentName":"text.html.embedded.shell","patterns":[{"include":"text.html.basic"}]},{"begin":"(<<)-\\s*(\"|'|)\\s*(MARKDOWN)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^\\t*(MARKDOWN)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.no-indent.markdown.shell","contentName":"text.html.markdown.embedded.shell","patterns":[{"include":"text.html.markdown"}]},{"begin":"(<<)\\s*(\"|'|)\\s*(MARKDOWN)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^(MARKDOWN)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.markdown.shell","contentName":"text.html.markdown.embedded.shell","patterns":[{"include":"text.html.markdown"}]},{"begin":"(<<)-\\s*(\"|'|)\\s*(TEXTILE)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^\\t*(TEXTILE)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.no-indent.textile.shell","contentName":"text.html.textile.embedded.shell","patterns":[{"include":"text.html.textile"}]},{"begin":"(<<)\\s*(\"|'|)\\s*(TEXTILE)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^(TEXTILE)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.textile.shell","contentName":"text.html.textile.embedded.shell","patterns":[{"include":"text.html.textile"}]},{"begin":"(<<)-\\s*(\"|'|)\\s*(SHELL)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^\\t*(\\3)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"contentName":"source.shell.embedded.shell","name":"string.unquoted.heredoc.no-indent.shell.shell","patterns":[{"include":"source.shell"}]},{"begin":"(<<)\\s*(\"|'|)\\s*(SHELL)(?=\\s|;|&|<|\"|')\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^(\\3)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.shell.shell","contentName":"source.shell.embedded.shell","patterns":[{"include":"source.shell"}]},{"begin":"(<<)-\\s*(\"|'|)\\s*\\\\?([^;&<\\s]+)\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^\\t*(\\3)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.no-indent.shell"},{"begin":"(<<)\\s*(\"|'|)\\s*\\\\?([^;&<\\s]+)\\2","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"3":{"name":"keyword.control.heredoc-token.shell"}},"end":"^(\\3)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.heredoc-token.shell"}},"name":"string.unquoted.heredoc.shell"}]},"herestring":{"patterns":[{"begin":"(<<<)\\s*(('))","beginCaptures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.quoted.single.shell"},"3":{"name":"punctuation.definition.string.begin.shell"}},"end":"(')","endCaptures":{"0":{"name":"string.quoted.single.shell"},"1":{"name":"punctuation.definition.string.end.shell"}},"name":"meta.herestring.shell","contentName":"string.quoted.single.shell"},{"begin":"(<<<)\\s*((\"))","beginCaptures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.quoted.double.shell"},"3":{"name":"punctuation.definition.string.begin.shell"}},"end":"(\")","endCaptures":{"0":{"name":"string.quoted.double.shell"},"1":{"name":"punctuation.definition.string.end.shell"}},"name":"meta.herestring.shell","contentName":"string.quoted.double.shell"},{"captures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.unquoted.herestring.shell","patterns":[{"include":"$self"}]}},"match":"(<<<)\\s*(([^\\s)\\\\]|\\\\.)+)","name":"meta.herestring.shell"}]},"interpolation":{"patterns":[{"begin":"\\$\\({2}","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\){2}","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.other.math.shell","patterns":[{"include":"#math"}]},{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.interpolated.backtick.shell","patterns":[{"match":"\\\\[`\\\\$]","name":"constant.character.escape.shell"},{"begin":"(?<=\\W)(?=#)(?!#{)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.shell"}},"end":"(?!\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.shell"}},"end":"(?=`)","name":"comment.line.number-sign.shell"}]},{"include":"$self"}]},{"begin":"\\$\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.interpolated.dollar.shell","patterns":[{"include":"$self"}]}]},"keyword":{"patterns":[{"match":"(?<=^|;|&|\\s)(then|else|elif|fi|for|in|do|done|select|case|continue|esac|while|until|return)(?=\\s|;|&|$)","name":"keyword.control.shell"},{"match":"(?<=^|;|&|\\s)(?:export|declare|typeset|local|readonly)(?=\\s|;|&|$)","name":"storage.modifier.shell"}]},"list":{"patterns":[{"match":";|&&|&|\\|\\|","name":"keyword.operator.list.shell"}]},"logical-expression":{"patterns":[{"comment":"do we want a special rule for ( expr )?","match":"=[=~]?|!=?|<|>|&&|\\|\\|","name":"keyword.operator.logical.shell"},{"match":"(?<!\\S)-(nt|ot|ef|eq|ne|l[te]|g[te]|[a-hknoprstuwxzOGLSN])","name":"keyword.operator.logical.shell"}]},"loop":{"patterns":[{"begin":"(?<=^|;|&|\\s)(for)\\s+(?=\\({2})","beginCaptures":{"1":{"name":"keyword.control.shell"}},"end":"(?<=^|;|&|\\s)done(?=\\s|;|&|$)","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.for-loop.shell","patterns":[{"include":"$self"}]},{"begin":"(?<=^|;|&|\\s)(for)\\s+(.+?)\\s+(in)(?=\\s|;|&|$)","beginCaptures":{"1":{"name":"keyword.control.shell"},"2":{"name":"variable.other.loop.shell","patterns":[{"include":"#string"}]},"3":{"name":"keyword.control.shell"}},"end":"(?<=^|;|&|\\s)done(?=\\s|;|&|$)","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.for-in-loop.shell","patterns":[{"include":"$self"}]},{"begin":"(?<=^|;|&|\\s)(while|until)(?=\\s|;|&|$)","beginCaptures":{"1":{"name":"keyword.control.shell"}},"end":"(?<=^|;|&|\\s)done(?=\\s|;|&|$)","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.while-loop.shell","patterns":[{"include":"$self"}]},{"begin":"(?<=^|;|&|\\s)(select)\\s+((?:[^\\s\\\\]|\\\\.)+)(?=\\s|;|&|$)","beginCaptures":{"1":{"name":"keyword.control.shell"},"2":{"name":"variable.other.loop.shell"}},"end":"(?<=^|;|&|\\s)(done)(?=\\s|;|&|$)","endCaptures":{"1":{"name":"keyword.control.shell"}},"name":"meta.scope.select-block.shell","patterns":[{"include":"$self"}]},{"begin":"(?<=^|;|&|\\s)case(?=\\s|;|&|$)","beginCaptures":{"0":{"name":"keyword.control.shell"}},"end":"(?<=^|;|&|\\s)esac(?=\\s|;|&|$)","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.case-block.shell","patterns":[{"begin":"(?<=^|;|&|\\s)in(?=\\s|;|&|$)","beginCaptures":{"0":{"name":"keyword.control.shell"}},"end":"(?<=^|;|&|\\s)(?=esac(\\s|;|&|$))","name":"meta.scope.case-body.shell","patterns":[{"include":"#comment"},{"include":"#case-clause"},{"include":"$self"}]},{"include":"$self"}]},{"begin":"(?<=^|;|&|\\s)if(?=\\s|;|&|$)","beginCaptures":{"0":{"name":"keyword.control.shell"}},"end":"(?<=^|;|&|\\s)fi(?=\\s|;|&|$)","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.if-block.shell","patterns":[{"include":"$self"}]}]},"math":{"patterns":[{"include":"#variable"},{"match":"\\+{1,2}|-{1,2}|!|~|\\*{1,2}|/|%|<[<=]?|>[>=]?|==|!=|^|\\|{1,2}|&{1,2}|\\?|\\:|,|=|[*/%+\\-&^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[xX][0-9A-Fa-f]+","name":"constant.numeric.hex.shell"},{"match":"0\\d+","name":"constant.numeric.octal.shell"},{"match":"\\d{1,2}#[0-9a-zA-Z@_]+","name":"constant.numeric.other.shell"},{"match":"\\d+","name":"constant.numeric.integer.shell"}]},"pathname":{"patterns":[{"match":"(?<=\\s|:|=|^)~","name":"keyword.operator.tilde.shell"},{"match":"\\*|\\?","name":"keyword.operator.glob.shell"},{"begin":"([?*+@!])(\\()","beginCaptures":{"1":{"name":"keyword.operator.extglob.shell"},"2":{"name":"punctuation.definition.extglob.shell"}},"end":"\\)","endCaptures":{"0":{"name":"punctuation.definition.extglob.shell"}},"name":"meta.structure.extglob.shell","patterns":[{"include":"$self"}]}]},"pipeline":{"patterns":[{"match":"(?<=^|;|&|\\s)(time)(?=\\s|;|&|$)","name":"keyword.other.shell"},{"match":"[|!]","name":"keyword.operator.pipe.shell"}]},"redirection":{"patterns":[{"begin":"[><]\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.interpolated.process-substitution.shell","patterns":[{"include":"$self"}]},{"match":"(?<![<>])(&>|\\d*>&\\d*|\\d*(>>|>|<)|\\d*<&|\\d*<>)(?![<>])","name":"keyword.operator.redirect.shell"}]},"string":{"patterns":[{"match":"\\\\.","name":"constant.character.escape.shell"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.shell"},{"begin":"\\$?\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.double.shell","patterns":[{"match":"\\\\[\\$`\"\\\\\\n]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},{"begin":"\\$'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.dollar.shell","patterns":[{"match":"\\\\(a|b|e|f|n|r|t|v|\\\\|')","name":"constant.character.escape.ansi-c.shell"},{"match":"\\\\[0-9]{3}","name":"constant.character.escape.octal.shell"},{"match":"\\\\x[0-9a-fA-F]{2}","name":"constant.character.escape.hex.shell"},{"match":"\\\\c.","name":"constant.character.escape.control-char.shell"}]}]},"support":{"patterns":[{"match":"(?<=^|;|&|\\s)(?::|\\.)(?=\\s|;|&|$)","name":"support.function.builtin.shell"},{"match":"(?<=^|;|&|\\s)(?:alias|bg|bind|break|builtin|caller|cd|command|compgen|complete|dirs|disown|echo|enable|eval|exec|exit|false|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|popd|printf|pushd|pwd|read|readonly|set|shift|shopt|source|suspend|test|times|trap|true|type|ulimit|umask|unalias|unset|wait)(?=\\s|;|&|$)","name":"support.function.builtin.shell"}]},"variable":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.shell"}},"match":"(\\$)[a-zA-Z_][a-zA-Z0-9_]*","name":"variable.other.normal.shell"},{"captures":{"1":{"name":"punctuation.definition.variable.shell"}},"match":"(\\$)[-*@#?$!0_]","name":"variable.other.special.shell"},{"captures":{"1":{"name":"punctuation.definition.variable.shell"}},"match":"(\\$)[1-9]","name":"variable.other.positional.shell"},{"begin":"\\${","beginCaptures":{"0":{"name":"punctuation.definition.variable.shell"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.shell"}},"name":"variable.other.bracket.shell","patterns":[{"match":"!|:[-=?]?|\\*|@|#{1,2}|%{1,2}|/","name":"keyword.operator.expansion.shell"},{"captures":{"1":{"name":"punctuation.section.array.shell"},"3":{"name":"punctuation.section.array.shell"}},"match":"(\\[)([^\\]]+)(\\])"},{"include":"#variable"},{"include":"#string"}]}]}}}