<key>include</key>
<string>#string_escaped_char</string>
</dict>
+ <dict>
+ <key>include</key>
+ <string>#generic_tags</string>
+ </dict>
</array>
<key>repository</key>
<dict>
</dict>
</array>
</dict>
+
<key>line_comment</key>
<dict>
<key>begin</key>
</dict>
</array>
</dict>
+
<key>comments</key>
<dict>
<key>patterns</key>
</dict>
</array>
</dict>
+
<key>keywords</key>
<dict>
<key>patterns</key>
</dict>
<dict>
<key>match</key>
- <string>\b(it|it_index)\b</string>
+ <string>\b(it)\b</string>
<key>name</key>
<string>keyword.other.onyx</string>
</dict>
<key>name</key>
<string>keyword.function.onyx</string>
</dict>
- <dict>
- <key>match</key>
- <string>([#]\s*\b([[:alpha:]_]+[[:alnum:]_]*)\b)</string>
- <key>name</key>
- <string>keyword.tag.onyx</string>
- </dict>
- <dict>
+ <!-- <dict>
<key>match</key>
- <string>@[^\n]+</string>
+ <string>([#]\s*\binject.+\b)</string>
<key>name</key>
- <string>keyword.tag.onyx</string>
- </dict>
+ <string>keyword.tag.onyx entity.name.function.onyx</string>
+ </dict> -->
</array>
</dict>
+
<key>types</key>
<dict>
<key>patterns</key>
</dict>
</array>
</dict>
+
<key>functions_and_declarations</key>
<dict>
<key>patterns</key>
</dict>
<dict>
<key>match</key>
- <string>\b(\b[[:alpha:]_]+[[:alnum:]_]*\b)\s*[:]\s*[:]\s*(struct|enum|interface)</string>
+ <string>\b(\b[[:alpha:]_]+[[:alnum:]_]*\b)\s*[:]\s*[:]\s*(struct)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
- <string>meta.type.onyx entity.name.type.onyx</string>
+ <string>meta.type.onyx entity.name.type.class.onyx</string>
+ </dict>
+ <key>2</key>
+ <dict>
+ <key>name</key>
+ <string>storage.type.onyx</string>
+ </dict>
+ </dict>
+ </dict>
+ <dict>
+ <key>match</key>
+ <string>\b(\b[[:alpha:]_]+[[:alnum:]_]*\b)\s*[:]\s*[:]\s*(interface)</string>
+ <key>captures</key>
+ <dict>
+ <key>1</key>
+ <dict>
+ <key>name</key>
+ <string>meta.type.onyx entity.name.type.interface.onyx</string>
+ </dict>
+ <key>2</key>
+ <dict>
+ <key>name</key>
+ <string>storage.type.onyx</string>
+ </dict>
+ </dict>
+ </dict>
+ <dict>
+ <key>match</key>
+ <string>\b(\b[[:alpha:]_]+[[:alnum:]_]*\b)\s*[:]\s*[:]\s*(enum)</string>
+ <key>captures</key>
+ <dict>
+ <key>1</key>
+ <dict>
+ <key>name</key>
+ <string>meta.type.onyx entity.name.type.enum.onyx</string>
</dict>
<key>2</key>
<dict>
</dict>
<dict>
<key>match</key>
- <string>\b([#]\s*foreign)</string>
+ <string>([#]\s*\b(?:foreign|local|package)\b).+({)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
- <string>keyword.tag.onyx entity.name.block.onyx</string>
+ <string>keyword.tag.onyx entity.name.type.namespace.onyx</string>
+ </dict>
+ <key>2</key>
+ <dict>
+ <key>name</key>
+ <string>punctuation.block.start.onyx</string>
+ </dict>
+ </dict>
+ </dict>
+ <dict>
+ <key>match</key>
+ <string>([#]\s*\binject\b)\s+(\b[^{]+\b)</string>
+ <key>captures</key>
+ <dict>
+ <key>1</key>
+ <dict>
+ <key>name</key>
+ <string>keyword.tag.onyx</string>
+ </dict>
+ <key>2</key>
+ <dict>
+ <key>name</key>
+ <string>entity.name.type.namespace.onyx</string>
</dict>
</dict>
</dict>
</dict>
</array>
</dict>
+
<key>string_escaped_char</key>
<dict>
<key>patterns</key>
</dict>
</array>
</dict>
+
<key>strings</key>
<dict>
<key>patterns</key>
</dict>
</array>
</dict>
+
+ <key>generic_tags</key>
+ <dict>
+ <key>patterns</key>
+ <array>
+ <dict>
+ <key>match</key>
+ <string>([#]\s*\b([[:alpha:]_]+[[:alnum:]_]*)\b)</string>
+ <key>name</key>
+ <string>keyword.tag.onyx</string>
+ </dict>
+ <dict>
+ <key>match</key>
+ <string>@[^\n]+</string>
+ <key>name</key>
+ <string>keyword.tag.onyx</string>
+ </dict>
+ </array>
+ </dict>
</dict>
</dict>
</plist>
"declarations": [
"entity.name.function.onyx",
"entity.name.type.onyx",
- "entity.name.block.onyx"
+ "entity.name.type.class.onyx",
+ "entity.name.type.interface.onyx",
+ "entity.name.type.enum.onyx",
+ "entity.name.type.namespace.onyx",
+ "entity.name.block.onyx",
+ "entity.name.tag.onyx"
],
"indentation": {
"punctuation.block.begin.onyx": 1,
},
"symbols": {
"entity.name.function.onyx": 11,
+ "entity.name.type.namespace.onyx": 2,
+ "entity.name.type.class.onyx": 4,
+ "entity.name.type.interface.onyx": 10,
+ "entity.name.type.enum.onyx": 9,
"entity.name.type.onyx": 22
}
}
\ No newline at end of file