aboutsummaryrefslogtreecommitdiff
path: root/api-notation.YAML-tmLanguage
diff options
context:
space:
mode:
authorBen Beltran <ben@nsovocal.com>2015-09-05 15:10:05 -0500
committerBen Beltran <ben@nsovocal.com>2015-09-05 15:10:05 -0500
commit28681b371a111611fef6dac6581d86af45cba0c7 (patch)
tree280d160d8f7b9576f4844bc45f3a4f2ac2a79819 /api-notation.YAML-tmLanguage
parent190aa87edc7ddae6df2fc9b619d63df24ce75cdd (diff)
Adds YAML source and tmLanguage result
Diffstat (limited to 'api-notation.YAML-tmLanguage')
-rw-r--r--api-notation.YAML-tmLanguage73
1 files changed, 73 insertions, 0 deletions
diff --git a/api-notation.YAML-tmLanguage b/api-notation.YAML-tmLanguage
new file mode 100644
index 0000000..e1f8462
--- /dev/null
+++ b/api-notation.YAML-tmLanguage
@@ -0,0 +1,73 @@
+# [PackageDev] target_format: plist, ext: tmLanguage
+---
+name: API Notation
+scopeName: source.api-notation
+fileTypes: ['api']
+uuid: fc8dc5cf-b7aa-4b64-a665-80e8dc1b2553
+patterns:
+ - begin: '^([a-zA-Z0-9_.]+)'
+ end: '\n'
+ name: constant.language
+ patterns:
+ - include: '#dataTypes'
+ - include: '#comment'
+ - begin: '[ \t]*'
+ end: '\n'
+ patterns:
+ - include: '#apiMember'
+ - include: '#parameterList'
+ - include: '#dataTypes'
+ - include: '#operators'
+ - include: '#parameters'
+ - include: '#comment'
+ - begin: '^.'
+ end: '\n'
+ patterns:
+ - include: '#comment'
+repository:
+ dataTypes:
+ begin: '\\<'
+ end: '\\>'
+ name: 'keyword.operator'
+ patterns:
+ - include: '#dataType'
+ - include: '#separators'
+ parameterList:
+ begin: '\\('
+ end: '\\)'
+ name: 'keyword.operator'
+ patterns:
+ - 'include': '#parameters'
+ - 'include': '#optionalParameters'
+ - 'include': '#dataTypes'
+ - 'include': '#separators'
+ dataType:
+ match: '[a-zA-Z0-9_.]+'
+ name: 'support.function'
+ parameters:
+ match: '[a-zA-Z0-9_.]+'
+ name: 'string.other'
+ optionalParameters:
+ begin: '\\['
+ end: '\\]'
+ patterns:
+ - 'include': '#optionalParameter'
+ optionalParameter:
+ match: '[a-zA-Z0-9_.]+'
+ name: 'meta.separator'
+ separators:
+ match: '\\||,'
+ name: 'comment.line'
+ apiMember:
+ match: '((?:<\\+)|(?:<\\~)|(?:<\\-)|(?:\\+>)|(?:\\~>)|(?:\\->)|\\-|\\+|(?:::)|#)([a-zA-z0-9_]+)'
+ captures:
+ '1':
+ name: 'keyword.control'
+ '2':
+ name: 'variable.language'
+ comment:
+ match: '[ \t]*//[ \t]*.*'
+ name: 'comment.line'
+ operators:
+ match: '(?:\\->)|(?:\\=>)'
+ name: 'keyword.control' \ No newline at end of file