supercollider-tmbundle/Syntaxes/SuperCollider.tmLanguage

160 lines
3.8 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>sc</string>
</array>
<key>foldingStartMarker</key>
<string>\{|\/\*</string>
<key>foldingStopMarker</key>
<string>\}|\*\/</string>
<key>keyEquivalent</key>
<string>^~S</string>
<key>name</key>
<string>SuperCollider</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\b(arg|var|classvar|this|thisThread|thisMethod|thisFunction|thisProcess|true|false|inf|nil)\b</string>
<key>name</key>
<string>keyword.control.supercollider</string>
</dict>
<dict>
<key>begin</key>
<string>"</string>
<key>end</key>
<string>"</string>
<key>name</key>
<string>string.quoted.double.supercollider</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\.</string>
<key>name</key>
<string>constant.character.escape.supercollider</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>'</string>
<key>end</key>
<string>'</string>
<key>name</key>
<string>entity.name.symbol.supercollider</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\.</string>
<key>name</key>
<string>constant.character.escape.supercollider</string>
</dict>
</array>
</dict>
<dict>
<key>match</key>
<string>[a-z][a-zA-Z0-9_]*\:</string>
<key>name</key>
<string>support.name.tag.supercollider</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.class.supercollider</string>
</dict>
</dict>
<key>match</key>
<string>^\s*\+*\s*([A-Z]{1}[a-zA-Z0-9_]*)\s*\:{1}\s*([A-Z]{1}[a-zA-Z0-9_]*)\s*\{</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.class.supercollider</string>
</dict>
</dict>
<key>match</key>
<string>^([A-Z_]{1}[a-zA-Z0-9_]*)[^a-zA-Z0-9_]</string>
</dict>
<dict>
<key>match</key>
<string>\|[a-zA-Z0-9\#\[\]\"\_\=\.\(\)[[:space:]]\,]+\|</string>
<key>name</key>
<string>variable.parameter.function.supercollider</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.class.supercollider</string>
</dict>
</dict>
<key>match</key>
<string>[^a-zA-Z0-9\\]([A-Z_]{1}[a-zA-Z0-9_]*)[^a-zA-Z0-9_]</string>
</dict>
<dict>
<key>match</key>
<string>\\[a-zA-Z0-9\_]+</string>
<key>name</key>
<string>entity.name.symbol.supercollider</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.function.supercollider</string>
</dict>
</dict>
<key>match</key>
<string>^\s*(\**[a-z]{1}[a-zA-Z0-9_]+)\s*\{</string>
</dict>
<dict>
<key>match</key>
<string>\~[a-zA-Z0-9]+</string>
<key>name</key>
<string>variable.language.supercollider</string>
</dict>
<dict>
<key>match</key>
<string>\/\/.*</string>
<key>name</key>
<string>comment.single.supercollider</string>
</dict>
<dict>
<key>begin</key>
<string>\/\*</string>
<key>end</key>
<string>\*\/</string>
<key>name</key>
<string>comment.multiline.supercollider</string>
</dict>
<dict>
<key>comment</key>
<string>source: ruby bundle</string>
<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.supercollider</string>
</dict>
</array>
<key>scopeName</key>
<string>source.supercollider</string>
<key>uuid</key>
<string>F63E530D-4C84-4C66-9EAA-6FC504FA4587</string>
</dict>
</plist>