Files
ChocolateyPackages/Sublime/Puppet/Syntaxes/Puppet.tmLanguage
2013-06-07 14:03:33 -04:00

654 lines
14 KiB
Plaintext

<?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>fileTypes</key>
<array>
<string>pp</string>
</array>
<key>foldingStartMarker</key>
<string>(^\s*/\*|(\{|\[|\()\s*$)</string>
<key>foldingStopMarker</key>
<string>(\*/|^\s*(\}|\]|\)))</string>
<key>keyEquivalent</key>
<string>^~P</string>
<key>name</key>
<string>Puppet</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#line_comment</string>
</dict>
<dict>
<key>begin</key>
<string>^\s*/\*</string>
<key>end</key>
<string>\*/</string>
<key>name</key>
<string>comment.block.puppet</string>
</dict>
<dict>
<key>begin</key>
<string>(?x)^\s*
(node|class)\s+
((?:[-_A-Za-z0-9".]+::)*[-_A-Za-z0-9".]+)\s* # identifier</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>storage.type.puppet</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.type.class.puppet</string>
</dict>
</dict>
<key>end</key>
<string>(?={)</string>
<key>name</key>
<string>meta.definition.class.puppet</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>\b(inherits)\b\s+</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>storage.modifier.puppet</string>
</dict>
</dict>
<key>end</key>
<string>(?={)</string>
<key>name</key>
<string>meta.definition.class.inherits.puppet</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\b((?:[-_A-Za-z0-9".]+::)*[-_A-Za-z0-9".]+)\b</string>
<key>name</key>
<string>support.type.puppet</string>
</dict>
</array>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^\s*(define)\s+([a-zA-Z0-9_:]+)\s*(\()</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>storage.type.function.puppet</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.function.puppet</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.definition.parameters.begin.puppet</string>
</dict>
</dict>
<key>contentName</key>
<string>meta.function.arguments.puppet</string>
<key>end</key>
<string>\)</string>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.parameters.end.puppet</string>
</dict>
</dict>
<key>name</key>
<string>meta.function.puppet</string>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>variable.other.puppet</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.puppet</string>
</dict>
</dict>
<key>match</key>
<string>((\$+)[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*)\s*(?=,|\))</string>
<key>name</key>
<string>meta.function.argument.no-default.puppet</string>
</dict>
<dict>
<key>begin</key>
<string>((\$+)[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*)(?:\s*(=)\s*)\s*</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>variable.other.puppet</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.puppet</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>keyword.operator.assignment.puppet</string>
</dict>
</dict>
<key>end</key>
<string>(?=,|\))</string>
<key>name</key>
<string>meta.function.argument.default.puppet</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#parameter-default-types</string>
</dict>
</array>
</dict>
</array>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>storage.type.puppet</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.section.puppet</string>
</dict>
</dict>
<key>match</key>
<string>^\s*(\w+)\s*{\s*(['"].+['"]):</string>
<key>name</key>
<string>meta.definition.resource.puppet</string>
</dict>
<dict>
<key>match</key>
<string>\b(case|if|unless|else)(?!::)</string>
<key>name</key>
<string>keyword.control.puppet</string>
</dict>
<dict>
<key>match</key>
<string>((\$?)"?[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*"?):(?=\s+|$)</string>
<key>name</key>
<string>entity.name.section.puppet</string>
</dict>
<dict>
<key>include</key>
<string>#strings</string>
</dict>
<dict>
<key>include</key>
<string>#variable</string>
</dict>
<dict>
<key>begin</key>
<string>(?i)\b(import|include)\b\s*</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.import.include.puppet</string>
</dict>
</dict>
<key>end</key>
<string>(?=\s|$)</string>
<key>name</key>
<string>meta.include.puppet</string>
</dict>
<dict>
<key>match</key>
<string>\b\w+\s*(?==&gt;)\s*</string>
<key>name</key>
<string>constant.other.key.puppet</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;={)\s*\w+\s*(?=})</string>
<key>name</key>
<string>constant.other.bareword.puppet</string>
</dict>
<dict>
<key>match</key>
<string>\b(escape|gsub|alert|crit|debug|notice|defined|emerg|err|failed|file|generate|include|info|realize|search|tag|tagged|template|warning)\b</string>
<key>name</key>
<string>support.function.puppet</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>constants</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>(?i)\b(false|true|running|present|absent|file|directory)\b</string>
<key>name</key>
<string>constant.language.php</string>
</dict>
</array>
</dict>
<key>double-quoted-string</key>
<dict>
<key>begin</key>
<string>"</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.puppet</string>
</dict>
</dict>
<key>end</key>
<string>"</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.puppet</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.double.puppet</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#variable</string>
</dict>
</array>
</dict>
<key>escaped_char</key>
<dict>
<key>match</key>
<string>\\.</string>
<key>name</key>
<string>constant.character.escape.puppet</string>
</dict>
<key>line_comment</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>comment.line.number-sign.puppet</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.puppet</string>
</dict>
</dict>
<key>match</key>
<string>^((#).*$\n?)</string>
<key>name</key>
<string>meta.comment.full-line.puppet</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.puppet</string>
</dict>
</dict>
<key>match</key>
<string>(#).*$\n?</string>
<key>name</key>
<string>comment.line.number-sign.puppet</string>
</dict>
</array>
</dict>
<key>nested_braces</key>
<dict>
<key>begin</key>
<string>\{</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.puppet</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#nested_braces</string>
</dict>
</array>
</dict>
<key>nested_braces_interpolated</key>
<dict>
<key>begin</key>
<string>\{</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.puppet</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#variable</string>
</dict>
<dict>
<key>include</key>
<string>#nested_braces_interpolated</string>
</dict>
</array>
</dict>
<key>nested_brackets</key>
<dict>
<key>begin</key>
<string>\[</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.puppet</string>
</dict>
</dict>
<key>end</key>
<string>\]</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#nested_brackets</string>
</dict>
</array>
</dict>
<key>nested_brackets_interpolated</key>
<dict>
<key>begin</key>
<string>\[</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.puppet</string>
</dict>
</dict>
<key>end</key>
<string>\]</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#variable</string>
</dict>
<dict>
<key>include</key>
<string>#nested_brackets_interpolated</string>
</dict>
</array>
</dict>
<key>nested_parens</key>
<dict>
<key>begin</key>
<string>\(</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.puppet</string>
</dict>
</dict>
<key>end</key>
<string>\)</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#nested_parens</string>
</dict>
</array>
</dict>
<key>nested_parens_interpolated</key>
<dict>
<key>begin</key>
<string>\(</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.section.scope.puppet</string>
</dict>
</dict>
<key>end</key>
<string>\)</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
<dict>
<key>include</key>
<string>#variable</string>
</dict>
<dict>
<key>include</key>
<string>#nested_parens_interpolated</string>
</dict>
</array>
</dict>
<key>parameter-default-types</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#strings</string>
</dict>
<dict>
<key>match</key>
<string>=</string>
<key>name</key>
<string>keyword.operator.assignment.php</string>
</dict>
<dict>
<key>begin</key>
<string>(\[)</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.array.begin.puppet</string>
</dict>
</dict>
<key>end</key>
<string>\]</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.array.end.puppet</string>
</dict>
</dict>
<key>name</key>
<string>meta.array.php</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#parameter-default-types</string>
</dict>
</array>
</dict>
<dict>
<key>include</key>
<string>#constants</string>
</dict>
</array>
</dict>
<key>single-quoted-string</key>
<dict>
<key>begin</key>
<string>'</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.puppet</string>
</dict>
</dict>
<key>end</key>
<string>'</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.puppet</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.single.puppet</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#escaped_char</string>
</dict>
</array>
</dict>
<key>strings</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#double-quoted-string</string>
</dict>
<dict>
<key>include</key>
<string>#single-quoted-string</string>
</dict>
</array>
</dict>
<key>variable</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.puppet</string>
</dict>
</dict>
<key>match</key>
<string>(\$)([a-zA-Zx7f-xff\$]|::)([a-zA-Z0-9_x7f-xff\$]|::)*\b</string>
<key>name</key>
<string>variable.other.readwrite.global.puppet</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.puppet</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.puppet</string>
</dict>
</dict>
<key>match</key>
<string>(\$\{)(?:[a-zA-Zx7f-xff\$]|::)(?:[a-zA-Z0-9_x7f-xff\$]|::)*(\})</string>
<key>name</key>
<string>variable.other.readwrite.global.puppet</string>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>source.puppet</string>
<key>uuid</key>
<string>AAF4E089-E3C9-4FB9-B099-FD2CCBD4E786</string>
</dict>
</plist>