diff options
author | Ján Priner <johnkie4@gmail.com> | 2020-10-20 19:32:14 +0200 |
---|---|---|
committer | Ján Priner <johnkie4@gmail.com> | 2020-10-20 19:32:14 +0200 |
commit | fc1f37d3df86616d8a99d70dc5d05fb637417915 (patch) | |
tree | 7990c08c4acb9bd865b6d8778eca12982deecc5c | |
parent | a3f037773a9ba9dfa21675bc745965864cac9ee8 (diff) |
Add Ninja syntax highlighting
-rw-r--r-- | .gitmodules | 3 | ||||
m--------- | assets/syntaxes/02_Extra/Ninja | 0 | ||||
-rw-r--r-- | assets/syntaxes/02_Extra/Ninja.sublime-syntax | 52 |
3 files changed, 55 insertions, 0 deletions
diff --git a/.gitmodules b/.gitmodules index 1d94f27e..e00573c6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -197,3 +197,6 @@ [submodule "assets/syntaxes/02_Extra/Apache"] path = assets/syntaxes/02_Extra/Apache url = https://github.com/colinta/ApacheConf.tmLanguage +[submodule "assets/syntaxes/02_Extra/Ninja"] + path = assets/syntaxes/02_Extra/Ninja + url = https://github.com/pope/SublimeNinja.git diff --git a/assets/syntaxes/02_Extra/Ninja b/assets/syntaxes/02_Extra/Ninja new file mode 160000 +Subproject 25830aaec9316b7fca6600000535214164525d7 diff --git a/assets/syntaxes/02_Extra/Ninja.sublime-syntax b/assets/syntaxes/02_Extra/Ninja.sublime-syntax new file mode 100644 index 00000000..e86a522e --- /dev/null +++ b/assets/syntaxes/02_Extra/Ninja.sublime-syntax @@ -0,0 +1,52 @@ +%YAML 1.2 +--- +# http://www.sublimetext.com/docs/3/syntax.html +name: Ninja +file_extensions: + - ninja +scope: source.ninja +contexts: + main: + - match: (#).*$\n? + comment: Comment line. + scope: comment.line.number-sign.ninja + captures: + 1: punctuation.definition.comment.ninja + - match: ^(rule)\b + comment: Rule keyword and keywords for a rule. + captures: + 1: keyword.other.ninja + push: + - match: ^(?=\S) + pop: true + - include: main + - match: \b(?:command|deps|depfile|description|generator|pool|restat|rspfile|rspfile_content)\b + scope: keyword.other.ninja + - match: ^(pool)\b + comment: Pool keyword and keywords for a pool. + captures: + 1: keyword.other.ninja + push: + - match: ^(?=\S) + pop: true + - include: main + - match: \b(?:depth)\b + scope: keyword.other.ninja + - match: ^(?:build|rule|default|include|subninja)\b + comment: Other Keywords. + scope: keyword.other.ninja + - match: '(?:[=:]|\|{1,2})(?=\s)' + comment: Operators for variable assignment (=), rule definition (:), implicit (|) and order only (||) dependencies. + scope: keyword.operator.ninja + - match: \$$ + comment: Line wrap. + scope: keyword.operator.ninja + - match: \$\$ + comment: Dollar literal. + scope: keyword.operator.ninja + - match: '\$[[:alnum:]_-]+' + comment: Simple variables, e.g. $var. + scope: variable.other.ninja + - match: '\${[[:alnum:]_.-]+}' + comment: "Variables, e.g. ${some.var.name}." + scope: variable.other.ninja |