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/prql/highlights.scm | 135 ++++++++++++++++++++++++++++++++++++ runtime/queries/prql/injections.scm | 13 ++++ 2 files changed, 148 insertions(+) create mode 100644 runtime/queries/prql/highlights.scm create mode 100644 runtime/queries/prql/injections.scm (limited to 'runtime/queries/prql') diff --git a/runtime/queries/prql/highlights.scm b/runtime/queries/prql/highlights.scm new file mode 100644 index 000000000..d24777dc0 --- /dev/null +++ b/runtime/queries/prql/highlights.scm @@ -0,0 +1,135 @@ +[ + (keyword_from) + (keyword_filter) + (keyword_derive) + (keyword_group) + (keyword_aggregate) + (keyword_sort) + (keyword_take) + (keyword_window) + (keyword_join) + (keyword_select) + (keyword_append) + (keyword_remove) + (keyword_intersect) + (keyword_rolling) + (keyword_rows) + (keyword_expanding) + (keyword_let) + (keyword_prql) + (keyword_from_text) +] @keyword + +(keyword_loop) @keyword.repeat + +(keyword_case) @keyword.conditional + +[ + (literal_string) + (f_string) + (s_string) +] @string + +(assignment + alias: (field) @variable.member) + +alias: (identifier) @variable.member + +(comment) @comment @spell + +(function_call + (identifier) @function.call) + +[ + "+" + "-" + "*" + "/" + "=" + "==" + "<" + "<=" + "!=" + ">=" + ">" + "&&" + "||" + "//" + "~=" + (bang) +] @operator + +[ + "(" + ")" + "{" + "}" +] @punctuation.bracket + +[ + "," + "." + "->" +] @punctuation.delimiter + +(integer) @number + +(decimal_number) @number.float + +[ + (keyword_min) + (keyword_max) + (keyword_count) + (keyword_count_distinct) + (keyword_average) + (keyword_avg) + (keyword_sum) + (keyword_stddev) + (keyword_count) + (keyword_rank) +] @function + +[ + (keyword_side) + (keyword_format) +] @attribute + +[ + (keyword_version) + (keyword_target) +] @keyword.modifier + +(target) @function.builtin + +[ + (date) + (time) + (timestamp) +] @string.special + +[ + (keyword_left) + (keyword_inner) + (keyword_right) + (keyword_full) + (keyword_csv) + (keyword_json) +] @function.method.call + +[ + (keyword_true) + (keyword_false) +] @boolean + +(function_definition + (keyword_let) + name: (identifier) @function) + +(parameter + (identifier) @variable.parameter) + +(variable + (keyword_let) + name: (identifier) @constant) + +(keyword_null) @constant.builtin diff --git a/runtime/queries/prql/injections.scm b/runtime/queries/prql/injections.scm new file mode 100644 index 000000000..e6cbeda35 --- /dev/null +++ b/runtime/queries/prql/injections.scm @@ -0,0 +1,13 @@ +((s_string) @injection.content + (#set! injection.language "sql") + (#offset! @injection.content 0 2 0 -1)) + +(from_text + (keyword_from_text) + (keyword_json) + (literal) @injection.content + (#set! injection.language "json") + (#offset! @injection.content 0 3 0 -3)) + +((comment) @injection.content + (#set! injection.language "comment")) -- cgit v1.2.3-70-g09d2