From 692b051b09935653befdb8f7ba8afdb640adf17b Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 12 Jun 2023 09:54:30 -0600 Subject: feat!: drop modules, general refactor and cleanup --- runtime/queries/runescript/highlights.scm | 119 ++++++++++++++++++++++++++++++ runtime/queries/runescript/injections.scm | 2 + 2 files changed, 121 insertions(+) create mode 100644 runtime/queries/runescript/highlights.scm create mode 100644 runtime/queries/runescript/injections.scm (limited to 'runtime/queries/runescript') diff --git a/runtime/queries/runescript/highlights.scm b/runtime/queries/runescript/highlights.scm new file mode 100644 index 000000000..d0c9432bd --- /dev/null +++ b/runtime/queries/runescript/highlights.scm @@ -0,0 +1,119 @@ +; Variables +(identifier) @variable + +(local_variable + "$" @attribute.builtin) + +(game_variable + [ + "%" + ".%" + ] @attribute.builtin) + +(constant_variable + "^" @attribute.builtin) + +(parameter + (local_variable + name: (identifier) @variable.parameter)) + +; Scripts +(script + trigger: (identifier) @keyword.directive + subject: (identifier) @function) + +; Calls +(call + [ + "~" + "@" + ]? @attribute.builtin + callee: (identifier) @function.call) + +; Literals +((literal) @boolean + (#any-of? @boolean "true" "false")) + +(literal + "null" @constant.builtin) + +(integer_literal) @number + +(coord_literal) @string.special + +(comment) @comment @spell + +[ + (string_fragment) + "\"" +] @string + +(escape_sequence) @string.escape + +(string_interpolation + [ + "<" + ">" + ] @punctuation.special) + +(string_tag) @punctuation.special + +; Types +(type) @type + +(parameter_type) @type + +; Tokens +[ + ";" + ":" + "," +] @punctuation.delimiter + +[ + "(" + ")" + "{" + "}" +] @punctuation.bracket + +[ + "[" + "]" +] @punctuation.special + +[ + "*" + "/" + "+" + "-" + "&" + "|" + ">" + ">=" + "<" + "<=" + "=" + "!" +] @operator + +(arithmetic + "%" @operator) + +[ + (def_type_keyword) + (switch_type_keyword) +] @keyword.modifier + +"return" @keyword.return + +"while" @keyword.repeat + +[ + "default" + "if" + "else" + "case" +] @keyword.conditional + +"calc" @keyword diff --git a/runtime/queries/runescript/injections.scm b/runtime/queries/runescript/injections.scm new file mode 100644 index 000000000..2f0e58eb6 --- /dev/null +++ b/runtime/queries/runescript/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) -- cgit v1.2.3-70-g09d2