Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
594 lines (593 sloc) 13 KB
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>fileTypes</key>
<array>
<string>tpl</string>
<string>tml</string>
<string>tpl.css</string>
</array>
<key>name</key>
<string>Aria Templates</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>\{(Template)\s*</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.tpl</string>
</dict>
</dict>
<key>comment</key>
<string>matches : {Template {options}} ... {/Template}</string>
<key>end</key>
<string>\{/(Template)\}</string>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.tpl</string>
</dict>
</dict>
<key>name</key>
<string>source.template.tpl</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>$self</string>
</dict>
<dict>
<key>include</key>
<string>source.js</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>\{(CSSTemplate)\s*</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.tpl</string>
</dict>
</dict>
<key>comment</key>
<string>matches CSSTemplate : {CSSTemplate {options}} ... {/CSSTemplate} . Separate rule since css and js kept conflicting</string>
<key>end</key>
<string>\{/(CSSTemplate)\}</string>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.tpl</string>
</dict>
</dict>
<key>name</key>
<string>source.csstemplate.tpl</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>$self</string>
</dict>
<dict>
<key>include</key>
<string>source.css</string>
</dict>
<dict>
<key>include</key>
<string>source.js</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>&lt;/?\s*(\w+)</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.tag.tpl</string>
</dict>
</dict>
<key>comment</key>
<string>Simplified HTML tags</string>
<key>end</key>
<string>&gt;</string>
<key>name</key>
<string>source.tag.tpl</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-stuff</string>
</dict>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>\{/?\s*(@\w+)\:(\w+)\s*</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.tpl</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.tag.tpl</string>
</dict>
</dict>
<key>comment</key>
<string>matches any widget + content : {@lib:Widget {options}} ... {/@lib:Widget} or {@lib:Widget {options}/}</string>
<key>end</key>
<string>\}</string>
<key>name</key>
<string>source.widget.tpl</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>source.js</string>
</dict>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.tpl</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>variable.parameter.function.tpl</string>
</dict>
</dict>
<key>comment</key>
<string>match macro opening : {macro myMacro(args)}</string>
<key>match</key>
<string>\{(macro)\s+([a-zA-Z_$]\w*)\s*\((.*?)\)\s*\}</string>
<key>name</key>
<string>source.macro.begin.tpl</string>
</dict>
<dict>
<key>include</key>
<string>#tpl-statement</string>
</dict>
<dict>
<key>include</key>
<string>#tpl-expression</string>
</dict>
<dict>
<key>include</key>
<string>#tpl-keyword</string>
</dict>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>comment</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment-block-documentation</string>
</dict>
<dict>
<key>include</key>
<string>#comment-block</string>
</dict>
<dict>
<key>include</key>
<string>#comment-line-double-slash</string>
</dict>
<dict>
<key>include</key>
<string>#comment-block-html</string>
</dict>
</array>
</dict>
<key>comment-block</key>
<dict>
<key>begin</key>
<string>/\*</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.js</string>
</dict>
</dict>
<key>end</key>
<string>\*/</string>
<key>name</key>
<string>comment.block.tpl</string>
</dict>
<key>comment-block-documentation</key>
<dict>
<key>begin</key>
<string>/\*\*(?!/)</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.js</string>
</dict>
</dict>
<key>end</key>
<string>\*/</string>
<key>name</key>
<string>comment.block.documentation.tpl</string>
</dict>
<key>comment-block-html</key>
<dict>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.html.js</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.html.js</string>
</dict>
</dict>
<key>match</key>
<string>(&lt;!--|--&gt;)</string>
<key>name</key>
<string>comment.block.html.tpl</string>
</dict>
<key>comment-line-double-slash</key>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.js</string>
</dict>
</dict>
<key>match</key>
<string>(//).*$\n?</string>
<key>name</key>
<string>comment.line.double.slash.tpl</string>
</dict>
<key>tag-entities</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tpl-statement</string>
</dict>
<dict>
<key>include</key>
<string>#tpl-expression</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.entity.html</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.definition.entity.html</string>
</dict>
</dict>
<key>match</key>
<string>(&amp;)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)</string>
<key>name</key>
<string>constant.character.entity.html</string>
</dict>
<dict>
<key>match</key>
<string>&amp;</string>
<key>name</key>
<string>invalid.illegal.bad-ampersand.html</string>
</dict>
<dict>
<key>match</key>
<string>.</string>
<key>name</key>
<string>string.quoted.double.html</string>
</dict>
</array>
</dict>
<key>tag-generic-attribute</key>
<dict>
<key>match</key>
<string>\b([a-zA-Z\-:]+)</string>
<key>name</key>
<string>entity.other.attribute-name.html</string>
</dict>
<key>tag-id-attribute</key>
<dict>
<key>begin</key>
<string>\b(id)\b\s*(=)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.other.attribute-name.id.html</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.separator.key-value.html</string>
</dict>
</dict>
<key>end</key>
<string>(?&lt;='|")</string>
<key>name</key>
<string>meta.attribute-with-value.id.html</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>"</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.html</string>
</dict>
</dict>
<key>contentName</key>
<string>meta.toc-list.id.html</string>
<key>end</key>
<string>"</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.html</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.double.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-entities</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.html</string>
</dict>
</dict>
<key>contentName</key>
<string>meta.toc-list.id.html</string>
<key>end</key>
<string>'</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.html</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.single.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-entities</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>tag-string-double-quoted</key>
<dict>
<key>begin</key>
<string>"</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>string.quoted.double.html</string>
</dict>
</dict>
<key>end</key>
<string>"</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>string.quoted.double.html</string>
</dict>
</dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-entities</string>
</dict>
</array>
</dict>
<key>tag-string-single-quoted</key>
<dict>
<key>begin</key>
<string>'</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.html</string>
</dict>
</dict>
<key>end</key>
<string>'</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.html</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.single.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-entities</string>
</dict>
</array>
</dict>
<key>tag-stuff</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-id-attribute</string>
</dict>
<dict>
<key>include</key>
<string>#tag-generic-attribute</string>
</dict>
<dict>
<key>include</key>
<string>#tag-string-double-quoted</string>
</dict>
<dict>
<key>include</key>
<string>#tag-string-single-quoted</string>
</dict>
</array>
</dict>
<key>tpl-basic-keyword</key>
<dict>
<key>match</key>
<string>\b(data|bind|bindRefreshTo|bindProcessingTo|to|inside|inArray|inView|inSortedView)\b</string>
<key>name</key>
<string>storage.tag.tpl</string>
</dict>
<key>tpl-expression</key>
<dict>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>constant.other.tpl</string>
</dict>
</dict>
<key>comment</key>
<string>matches single line expressions : ${ ... }.Matches $ not preceded by \, followed by _{_ then _any_ until the first _}_ that precedes EOL or _{_ or // with no other _}_ ib between</string>
<key>match</key>
<string>(?&lt;!\\)\$\{.*?(\})(?=[^\}]*($|\{|//))</string>
</dict>
<key>tpl-fwk-keyword</key>
<dict>
<key>comment</key>
<string>matches all $ keywords</string>
<key>match</key>
<string>\$\w+</string>
<key>name</key>
<string>storage.tag.tpl</string>
</dict>
<key>tpl-keyword</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tpl-basic-keyword</string>
</dict>
<dict>
<key>include</key>
<string>#tpl-fwk-keyword</string>
</dict>
</array>
</dict>
<key>tpl-statement</key>
<dict>
<key>begin</key>
<string>\{/?\s*(\w+)\b</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.tpl</string>
</dict>
</dict>
<key>comment</key>
<string>match statement opening or ending: {xyz ...}, {/xyz} and short version {xyz/}</string>
<key>end</key>
<string>\}</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>source.js</string>
</dict>
<dict>
<key>include</key>
<string>#tpl-keyword</string>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>source.tpl</string>
<key>uuid</key>
<string>45dd46f3-4ff9-41c2-be21-662389784e9a</string>
</dict>
</plist>