urbit/extras/hoonSublime/hoon.tmLanguage
Dan Haffey d93489838d Improve sublime arm name indexing.
The previous definition included the leading ++ in the
indexed name, which thwarts "Goto Definition". This also
tweaks the pattern to include arms defined with +-.
2015-11-16 18:15:32 -05:00

137 lines
3.0 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>hoon</string>
<string>hook</string>
</array>
<key>name</key>
<string>hoon</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>::</string>
<key>comment</key>
<string>comment</string>
<key>end</key>
<string>\n</string>
<key>name</key>
<string>comment.line.hoon</string>
</dict>
<dict>
<key>begin</key>
<string>\s*"""</string>
<key>comment</key>
<string>doqbloq</string>
<key>end</key>
<string>\s*"""</string>
<key>name</key>
<string>string.double.hoon</string>
</dict>
<dict>
<key>begin</key>
<string>\s*'''</string>
<key>comment</key>
<string>soqbloq</string>
<key>end</key>
<string>\s*'''</string>
<key>name</key>
<string>string.double.hoon</string>
</dict>
<dict>
<key>begin</key>
<string>\"</string>
<key>comment</key>
<string>tape</string>
<key>end</key>
<string>\"</string>
<key>name</key>
<string>string.double.hoon</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\.|[^"]</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>\'</string>
<key>comment</key>
<string>cord</string>
<key>end</key>
<string>\'</string>
<key>name</key>
<string>string.single.hoon</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\.|[^']</string>
</dict>
</array>
</dict>
<dict>
<key>comment</key>
<string>arm</string>
<key>match</key>
<string>[a-z]([a-z0-9-]*[a-z0-9])?/</string>
<key>name</key>
<string>constant.character.hoon</string>
</dict>
<dict>
<key>begin</key>
<string>\+[-+] (?=[a-z]([a-z0-9-]*[a-z0-9])?)</string>
<key>comment</key>
<string>arm</string>
<key>contentName</key>
<string>entity.name.function.hoon</string>
<key>end</key>
<string>(?![a-z0-9-])</string>
</dict>
<dict>
<key>comment</key>
<string>cube</string>
<key>match</key>
<string>%[a-z]([a-z0-9-]*[a-z0-9])?</string>
<key>name</key>
<string>constant.character.hoon</string>
</dict>
<dict>
<key>comment</key>
<string>odor</string>
<key>match</key>
<string>@[a-z]([a-z0-9-]*[a-z0-9])?</string>
<key>name</key>
<string>storage.type.hoon</string>
</dict>
<dict>
<key>comment</key>
<string>rune</string>
<key>match</key>
<string>[+\-|$%:.#^~;=?!_,&amp;@\/&lt;&gt;%*]</string>
<key>name</key>
<string>keyword.control.hoon</string>
</dict>
<dict>
<key>begin</key>
<string>;script(type "text/coffeescript")</string>
<key>comment</key>
<string>rune</string>
<key>end</key>
<string>==</string>
<key>name</key>
<string>keyword.control.hoon</string>
</dict>
</array>
<key>scopeName</key>
<string>source.hoon</string>
<key>uuid</key>
<string>9a56507d-ae34-4bd0-84fa-079029cb9509</string>
</dict>
</plist>