diff options
Diffstat (limited to 'helix-22.03-x86_64-windows/runtime')
278 files changed, 11475 insertions, 0 deletions
diff --git a/helix-22.03-x86_64-windows/runtime/grammars/.gitkeep b/helix-22.03-x86_64-windows/runtime/grammars/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/.gitkeep diff --git a/helix-22.03-x86_64-windows/runtime/grammars/bash.dll b/helix-22.03-x86_64-windows/runtime/grammars/bash.dll Binary files differnew file mode 100644 index 0000000..3c36fa9 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/bash.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/c-sharp.dll b/helix-22.03-x86_64-windows/runtime/grammars/c-sharp.dll Binary files differnew file mode 100644 index 0000000..bb7a663 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/c-sharp.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/c.dll b/helix-22.03-x86_64-windows/runtime/grammars/c.dll Binary files differnew file mode 100644 index 0000000..3e049ed --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/c.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/cmake.dll b/helix-22.03-x86_64-windows/runtime/grammars/cmake.dll Binary files differnew file mode 100644 index 0000000..e03f7af --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/cmake.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/comment.dll b/helix-22.03-x86_64-windows/runtime/grammars/comment.dll Binary files differnew file mode 100644 index 0000000..90de920 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/comment.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/cpp.dll b/helix-22.03-x86_64-windows/runtime/grammars/cpp.dll Binary files differnew file mode 100644 index 0000000..2a67f15 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/cpp.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/css.dll b/helix-22.03-x86_64-windows/runtime/grammars/css.dll Binary files differnew file mode 100644 index 0000000..404d490 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/css.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/dart.dll b/helix-22.03-x86_64-windows/runtime/grammars/dart.dll Binary files differnew file mode 100644 index 0000000..f41ea9c --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/dart.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/dockerfile.dll b/helix-22.03-x86_64-windows/runtime/grammars/dockerfile.dll Binary files differnew file mode 100644 index 0000000..6a248d4 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/dockerfile.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/elixir.dll b/helix-22.03-x86_64-windows/runtime/grammars/elixir.dll Binary files differnew file mode 100644 index 0000000..814796d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/elixir.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/elm.dll b/helix-22.03-x86_64-windows/runtime/grammars/elm.dll Binary files differnew file mode 100644 index 0000000..03be45d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/elm.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/erlang.dll b/helix-22.03-x86_64-windows/runtime/grammars/erlang.dll Binary files differnew file mode 100644 index 0000000..c0e54ec --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/erlang.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/fish.dll b/helix-22.03-x86_64-windows/runtime/grammars/fish.dll Binary files differnew file mode 100644 index 0000000..43dc832 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/fish.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/git-commit.dll b/helix-22.03-x86_64-windows/runtime/grammars/git-commit.dll Binary files differnew file mode 100644 index 0000000..90abf69 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/git-commit.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/git-config.dll b/helix-22.03-x86_64-windows/runtime/grammars/git-config.dll Binary files differnew file mode 100644 index 0000000..8289918 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/git-config.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/git-diff.dll b/helix-22.03-x86_64-windows/runtime/grammars/git-diff.dll Binary files differnew file mode 100644 index 0000000..939d5e8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/git-diff.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/git-rebase.dll b/helix-22.03-x86_64-windows/runtime/grammars/git-rebase.dll Binary files differnew file mode 100644 index 0000000..5e94008 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/git-rebase.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/glsl.dll b/helix-22.03-x86_64-windows/runtime/grammars/glsl.dll Binary files differnew file mode 100644 index 0000000..b6871c2 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/glsl.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/go.dll b/helix-22.03-x86_64-windows/runtime/grammars/go.dll Binary files differnew file mode 100644 index 0000000..9b58456 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/go.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/graphql.dll b/helix-22.03-x86_64-windows/runtime/grammars/graphql.dll Binary files differnew file mode 100644 index 0000000..dee2cd8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/graphql.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/haskell.dll b/helix-22.03-x86_64-windows/runtime/grammars/haskell.dll Binary files differnew file mode 100644 index 0000000..a28a9ea --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/haskell.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/hcl.dll b/helix-22.03-x86_64-windows/runtime/grammars/hcl.dll Binary files differnew file mode 100644 index 0000000..ea50eeb --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/hcl.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/html.dll b/helix-22.03-x86_64-windows/runtime/grammars/html.dll Binary files differnew file mode 100644 index 0000000..3aaebd5 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/html.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/iex.dll b/helix-22.03-x86_64-windows/runtime/grammars/iex.dll Binary files differnew file mode 100644 index 0000000..a5c1091 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/iex.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/java.dll b/helix-22.03-x86_64-windows/runtime/grammars/java.dll Binary files differnew file mode 100644 index 0000000..fc5a1ad --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/java.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/javascript.dll b/helix-22.03-x86_64-windows/runtime/grammars/javascript.dll Binary files differnew file mode 100644 index 0000000..a336f76 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/javascript.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/json.dll b/helix-22.03-x86_64-windows/runtime/grammars/json.dll Binary files differnew file mode 100644 index 0000000..8c768af --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/json.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/julia.dll b/helix-22.03-x86_64-windows/runtime/grammars/julia.dll Binary files differnew file mode 100644 index 0000000..e59a7a8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/julia.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/kotlin.dll b/helix-22.03-x86_64-windows/runtime/grammars/kotlin.dll Binary files differnew file mode 100644 index 0000000..16647f3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/kotlin.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/latex.dll b/helix-22.03-x86_64-windows/runtime/grammars/latex.dll Binary files differnew file mode 100644 index 0000000..c1c3dcd --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/latex.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/lean.dll b/helix-22.03-x86_64-windows/runtime/grammars/lean.dll Binary files differnew file mode 100644 index 0000000..b04de33 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/lean.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/ledger.dll b/helix-22.03-x86_64-windows/runtime/grammars/ledger.dll Binary files differnew file mode 100644 index 0000000..8b9ef05 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/ledger.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/llvm-mir.dll b/helix-22.03-x86_64-windows/runtime/grammars/llvm-mir.dll Binary files differnew file mode 100644 index 0000000..074c7a7 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/llvm-mir.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/llvm.dll b/helix-22.03-x86_64-windows/runtime/grammars/llvm.dll Binary files differnew file mode 100644 index 0000000..50b820f --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/llvm.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/lua.dll b/helix-22.03-x86_64-windows/runtime/grammars/lua.dll Binary files differnew file mode 100644 index 0000000..2444dbf --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/lua.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/make.dll b/helix-22.03-x86_64-windows/runtime/grammars/make.dll Binary files differnew file mode 100644 index 0000000..79108f1 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/make.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/markdown.dll b/helix-22.03-x86_64-windows/runtime/grammars/markdown.dll Binary files differnew file mode 100644 index 0000000..2732cbb --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/markdown.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/nix.dll b/helix-22.03-x86_64-windows/runtime/grammars/nix.dll Binary files differnew file mode 100644 index 0000000..9726c48 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/nix.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/ocaml-interface.dll b/helix-22.03-x86_64-windows/runtime/grammars/ocaml-interface.dll Binary files differnew file mode 100644 index 0000000..a9ed18b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/ocaml-interface.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/ocaml.dll b/helix-22.03-x86_64-windows/runtime/grammars/ocaml.dll Binary files differnew file mode 100644 index 0000000..20090ad --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/ocaml.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/org.dll b/helix-22.03-x86_64-windows/runtime/grammars/org.dll Binary files differnew file mode 100644 index 0000000..bdb37e1 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/org.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/perl.dll b/helix-22.03-x86_64-windows/runtime/grammars/perl.dll Binary files differnew file mode 100644 index 0000000..7eb496d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/perl.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/php.dll b/helix-22.03-x86_64-windows/runtime/grammars/php.dll Binary files differnew file mode 100644 index 0000000..0f32de1 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/php.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/protobuf.dll b/helix-22.03-x86_64-windows/runtime/grammars/protobuf.dll Binary files differnew file mode 100644 index 0000000..4c82161 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/protobuf.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/python.dll b/helix-22.03-x86_64-windows/runtime/grammars/python.dll Binary files differnew file mode 100644 index 0000000..2787290 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/python.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/regex.dll b/helix-22.03-x86_64-windows/runtime/grammars/regex.dll Binary files differnew file mode 100644 index 0000000..aaca090 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/regex.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/rescript.dll b/helix-22.03-x86_64-windows/runtime/grammars/rescript.dll Binary files differnew file mode 100644 index 0000000..c90c8c4 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/rescript.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/ruby.dll b/helix-22.03-x86_64-windows/runtime/grammars/ruby.dll Binary files differnew file mode 100644 index 0000000..189d9b9 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/ruby.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/rust.dll b/helix-22.03-x86_64-windows/runtime/grammars/rust.dll Binary files differnew file mode 100644 index 0000000..6e367ea --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/rust.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/scala.dll b/helix-22.03-x86_64-windows/runtime/grammars/scala.dll Binary files differnew file mode 100644 index 0000000..1666831 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/scala.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/solidity.dll b/helix-22.03-x86_64-windows/runtime/grammars/solidity.dll Binary files differnew file mode 100644 index 0000000..eb4151f --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/solidity.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/svelte.dll b/helix-22.03-x86_64-windows/runtime/grammars/svelte.dll Binary files differnew file mode 100644 index 0000000..54bd958 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/svelte.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/tablegen.dll b/helix-22.03-x86_64-windows/runtime/grammars/tablegen.dll Binary files differnew file mode 100644 index 0000000..3b43bec --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/tablegen.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/toml.dll b/helix-22.03-x86_64-windows/runtime/grammars/toml.dll Binary files differnew file mode 100644 index 0000000..ce7d273 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/toml.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/tsq.dll b/helix-22.03-x86_64-windows/runtime/grammars/tsq.dll Binary files differnew file mode 100644 index 0000000..a674b4a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/tsq.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/tsx.dll b/helix-22.03-x86_64-windows/runtime/grammars/tsx.dll Binary files differnew file mode 100644 index 0000000..7046f1f --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/tsx.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/twig.dll b/helix-22.03-x86_64-windows/runtime/grammars/twig.dll Binary files differnew file mode 100644 index 0000000..08a1b49 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/twig.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/typescript.dll b/helix-22.03-x86_64-windows/runtime/grammars/typescript.dll Binary files differnew file mode 100644 index 0000000..2f52074 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/typescript.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/vue.dll b/helix-22.03-x86_64-windows/runtime/grammars/vue.dll Binary files differnew file mode 100644 index 0000000..a4a3748 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/vue.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/wgsl.dll b/helix-22.03-x86_64-windows/runtime/grammars/wgsl.dll Binary files differnew file mode 100644 index 0000000..8129ec8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/wgsl.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/yaml.dll b/helix-22.03-x86_64-windows/runtime/grammars/yaml.dll Binary files differnew file mode 100644 index 0000000..9fa89dd --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/yaml.dll diff --git a/helix-22.03-x86_64-windows/runtime/grammars/zig.dll b/helix-22.03-x86_64-windows/runtime/grammars/zig.dll Binary files differnew file mode 100644 index 0000000..67d4520 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/grammars/zig.dll diff --git a/helix-22.03-x86_64-windows/runtime/queries/bash/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/bash/highlights.scm new file mode 100644 index 0000000..57898f2 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/bash/highlights.scm @@ -0,0 +1,54 @@ +[ +  (string) +  (raw_string) +  (heredoc_body) +  (heredoc_start) +] @string + +(command_name) @function + +(variable_name) @variable.other.member + +[ +  "case" +  "do" +  "done" +  "elif" +  "else" +  "esac" +  "export" +  "fi" +  "for" +  "function" +  "if" +  "in" +  "unset" +  "while" +  "then" +] @keyword + +(comment) @comment + +(function_definition name: (word) @function) + +(file_descriptor) @constant.numeric.integer + +[ +  (command_substitution) +  (process_substitution) +  (expansion) +]@embedded + +[ +  "$" +  "&&" +  ">" +  ">>" +  "<" +  "|" +] @operator + +( +  (command (_) @constant) +  (#match? @constant "^-") +) diff --git a/helix-22.03-x86_64-windows/runtime/queries/bash/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/bash/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/bash/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/c-sharp/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/c-sharp/highlights.scm new file mode 100644 index 0000000..6b94dd8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/c-sharp/highlights.scm @@ -0,0 +1,336 @@ +;; Methods +(method_declaration +  name: (identifier) @function) + +(method_declaration +  type: [(identifier) (qualified_name)] @type) + +(invocation_expression +  (member_access_expression +    name: (identifier) @function)) + +(invocation_expression +  (member_access_expression +    expression: (identifier) @variable)) + +(invocation_expression +  function: (conditional_access_expression +    (member_binding_expression +      name: (identifier) @function))) + +(invocation_expression +      [(identifier) (qualified_name)] @function) + +; Generic Method invocation with generic type +(invocation_expression +  function: (generic_name +              . (identifier) @function)) + +;; Namespaces + +(namespace_declaration +  name: [(identifier) (qualified_name)] @namespace) + +;; Types +(interface_declaration name: (identifier) @type) +(class_declaration name: (identifier) @type) +(enum_declaration name: (identifier) @type) +(struct_declaration (identifier) @type) +(record_declaration (identifier) @type) +(namespace_declaration name: (identifier) @type) +(using_directive (_) @namespace) +(constructor_declaration name: (identifier) @type) +(object_creation_expression [(identifier) (qualified_name)] @type) +(type_parameter_list (type_parameter) @type) + +[ +  (implicit_type) +  (nullable_type) +  (pointer_type) +  (function_pointer_type) +  (predefined_type) +] @type.builtin + +;; Generic Types +(type_of_expression +  (generic_name +    (identifier) @type)) + +(base_list +  (generic_name +    (identifier) @type)) + +(type_constraint +  (generic_name +    (identifier) @type)) + +(object_creation_expression +  (generic_name +   (identifier) @type)) + +(property_declaration +  (generic_name +    (identifier) @type)) + +(_ +  type: (generic_name +   (identifier) @type)) + +;; Enum +(enum_member_declaration (identifier) @variable.other.member) + +;; Literals +[ +  (real_literal) +  (integer_literal) +] @constant.numeric.integer + +(character_literal) @constant.character +[ +  (string_literal) +  (verbatim_string_literal) +  (interpolated_string_text) +  (interpolated_verbatim_string_text) +  "\"" +  "$\"" +  "@$\"" +  "$@\"" + ] @string + +(boolean_literal) @constant.builtin.boolean +[ +  (null_literal) +  (void_keyword) +] @constant.builtin + +;; Comments +(comment) @comment + +;; Tokens +[ +  ";" +  "." +  "," +] @punctuation.delimiter + +[ +  "--" +  "-" +  "-=" +  "&" +  "&&" +  "+" +  "++" +  "+=" +  "<" +  "<=" +  "<<" +  "<<=" +  "=" +  "==" +  "!" +  "!=" +  "=>" +  ">" +  ">=" +  ">>" +  ">>=" +  "|" +  "||" +  "|=" +  "?" +  "??" +  "^" +  "^=" +  "~" +  "*" +  "*=" +  "/" +  "/=" +  "%" +  "%=" +  ":" +  ".." +  "&=" +  "->" +  "??=" +] @operator + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +]  @punctuation.bracket + +;; Keywords +(modifier) @keyword +(this_expression) @keyword +(escape_sequence) @constant.character.escape + +[ +  "as" +  "base" +  "break" +  "case" +  "catch" +  "checked" +  "class" +  "continue" +  "default" +  "delegate" +  "do" +  "else" +  "enum" +  "event" +  "explicit" +  "finally" +  "for" +  "foreach" +  "goto" +  "if" +  "implicit" +  "interface" +  "is" +  "lock" +  "namespace" +  "operator" +  "params" +  "return" +  "sizeof" +  "stackalloc" +  "static" +  "struct" +  "switch" +  "throw" +  "try" +  "typeof" +  "unchecked" +  "using" +  "while" +  "new" +  "await" +  "in" +  "yield" +  "get" +  "set" +  "when" +  "out" +  "ref" +  "from" +  "where" +  "select" +  "record" +  "init" +  "with" +  "let" +] @keyword + +(preprocessor_call) @keyword.directive +(preprocessor_call (_) @keyword.directive) + +;; Linq +(from_clause (identifier) @variable) +(group_clause) +(order_by_clause) +(select_clause (identifier) @variable) +(query_continuation (identifier) @variable) @keyword + +;; Record +(with_expression +  (with_initializer_expression +    (simple_assignment_expression +      (identifier) @variable))) + +;; Exprs +(binary_expression [(identifier) (qualified_name)] @variable [(identifier) (qualified_name)] @variable) +(binary_expression [(identifier) (qualified_name)]* @variable) +(conditional_expression [(identifier) (qualified_name)] @variable) +(prefix_unary_expression [(identifier) (qualified_name)] @variable) +(postfix_unary_expression [(identifier) (qualified_name)]* @variable) +(assignment_expression [(identifier) (qualified_name)] @variable) +(cast_expression [(identifier) (qualified_name)] @type [(identifier) (qualified_name)] @variable) + +;; Class +(base_list (identifier) @type) +(property_declaration (generic_name)) +(property_declaration +  type: (nullable_type) @type +  name: (identifier) @variable) +(property_declaration +  type: (predefined_type) @type +  name: (identifier) @variable) +(property_declaration +  type: (identifier) @type +  name: (identifier) @variable) +   +;; Delegate + +(delegate_declaration (identifier) @type) + +;; Lambda +(lambda_expression) @variable + +;; Attribute +(attribute) @type + +;; Parameter +(parameter +  type: (identifier) @type +  name: (identifier) @variable.parameter) +(parameter (identifier) @variable.parameter) +(parameter_modifier) @keyword + +(parameter_list +  (parameter +   name: (identifier) @parameter)) + +(parameter_list +  (parameter +   type: [(identifier) (qualified_name)] @type)) + +;; Typeof +(type_of_expression [(identifier) (qualified_name)] @type) + +;; Variable +(variable_declaration [(identifier) (qualified_name)] @type) +(variable_declarator [(identifier) (qualified_name)] @variable) + +;; Return +(return_statement (identifier) @variable) +(yield_statement (identifier) @variable) + +;; Type +(generic_name (identifier) @type) +(type_parameter [(identifier) (qualified_name)] @variable.parameter) +(type_argument_list [(identifier) (qualified_name)] @type) + +;; Type constraints +(type_parameter_constraints_clause (identifier) @variable.parameter) +(type_constraint (identifier) @type) + +;; Exception +(catch_declaration (identifier) @type (identifier) @variable) +(catch_declaration (identifier) @type) + +;; Switch +(switch_statement (identifier) @variable) +(switch_expression (identifier) @variable) + +;; Lock statement +(lock_statement (identifier) @variable) + +;; Rest +(member_access_expression) @variable +(element_access_expression (identifier) @variable) +(argument (identifier) @variable) +(for_statement (identifier) @variable) +(for_each_statement (identifier) @variable) +(expression_statement (identifier) @variable) +(member_access_expression expression: (identifier) @variable) +(member_access_expression name: (identifier) @variable) +(conditional_access_expression [(identifier) (qualified_name)] @variable) +((identifier) @comment.unused + (#eq? @comment.unused "_")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/c-sharp/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/c-sharp/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/c-sharp/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/c/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/c/highlights.scm new file mode 100644 index 0000000..918f3f6 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/c/highlights.scm @@ -0,0 +1,87 @@ +"goto" @keyword +"register" @keyword +"break" @keyword +"case" @keyword +"const" @keyword +"continue" @keyword +"default" @keyword +"do" @keyword +"else" @keyword +"enum" @keyword +"extern" @keyword +"for" @keyword +"if" @keyword +"inline" @keyword +"return" @keyword +"sizeof" @keyword +"static" @keyword +"struct" @keyword +"switch" @keyword +"typedef" @keyword +"union" @keyword +"volatile" @keyword +"while" @keyword + +[ + "#define" + "#elif" + "#else" + "#endif" + "#if" + "#ifdef" + "#ifndef" + "#include" + (preproc_directive) +] @keyword.directive + +"--" @operator +"-" @operator +"-=" @operator +"->" @operator +"=" @operator +"!=" @operator +"*" @operator +"&" @operator +"&&" @operator +"+" @operator +"++" @operator +"+=" @operator +"<" @operator +"==" @operator +">" @operator +"||" @operator + +"." @punctuation.delimiter +";" @punctuation.delimiter + +(enumerator) @type.enum.variant + +(string_literal) @string +(system_lib_string) @string + +(null) @constant +(number_literal) @constant.numeric.integer +(char_literal) @constant.character + +(call_expression +  function: (identifier) @function) +(call_expression +  function: (field_expression +    field: (field_identifier) @function)) +(function_declarator +  declarator: (identifier) @function) +(preproc_function_def +  name: (identifier) @function.special) + +(field_identifier) @variable.other.member +(statement_identifier) @label +(type_identifier) @type +(primitive_type) @type +(sized_type_specifier) @type + +((identifier) @constant + (#match? @constant "^[A-Z][A-Z\\d_]*$")) + +(identifier) @variable + +(comment) @comment diff --git a/helix-22.03-x86_64-windows/runtime/queries/c/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/c/indents.toml new file mode 100644 index 0000000..f4076e1 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/c/indents.toml @@ -0,0 +1,16 @@ +indent = [ +  "compound_statement", +  "field_declaration_list", +  "enumerator_list", +  "parameter_list", +  "init_declarator", +  "case_statement", +  "condition_clause", +  "expression_statement", +] + +outdent = [ +  "case", +  "}", +  "]", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/c/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/c/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/c/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/c/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/c/textobjects.scm new file mode 100644 index 0000000..45f554e --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/c/textobjects.scm @@ -0,0 +1,17 @@ +(function_definition +  body: (_) @function.inside) @function.around + +(struct_specifier +  body: (_) @class.inside) @class.around + +(enum_specifier +  body: (_) @class.inside) @class.around + +(union_specifier +  body: (_) @class.inside) @class.around + +(parameter_declaration) @parameter.inside + +(comment) @comment.inside + +(comment)+ @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/cmake/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/cmake/highlights.scm new file mode 100644 index 0000000..71e9b5d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/cmake/highlights.scm @@ -0,0 +1,97 @@ +[ +  (quoted_argument) +  (bracket_argument) + ] @string + +(variable) @variable + +[ +  (bracket_comment) +  (line_comment) + ] @comment + +(normal_command (identifier) @function) + +["ENV" "CACHE"] @string.special.symbol +["$" "{" "}" "<" ">"] @punctuation +["(" ")"] @punctuation.bracket + +[ +  (function) +  (endfunction) +  (macro) +  (endmacro) + ] @keyword.function + +[ +  (if) +  (elseif) +  (else) +  (endif) + ] @keyword.control.conditional + +[ +  (foreach) +  (endforeach) +  (while) +  (endwhile) + ] @keyword.control.repeat + +(function_command +   (function) +   . (argument) @function +   (argument)* @variable.parameter + ) + +(macro_command +   (macro) +   . (argument) @function.macro +   (argument)* @variable.parameter + ) + +(normal_command +  (identifier) @function.builtin +  . (argument) @variable +  (#match? @function.builtin "^(?i)(set)$")) + +(normal_command +  (identifier) @function.builtin +  . (argument) +  (argument) @constant +  (#match? @constant "^(?:PARENT_SCOPE|CACHE)$") +  (#match? @function.builtin "^(?i)(unset)$")) + +(normal_command +  (identifier) @function.builtin +  . (argument) +  . (argument) +  (argument) @constant +  (#match? @constant "^(?:PARENT_SCOPE|CACHE|FORCE)$") +  (#match? @function.builtin "^(?i)(set)$") + ) + +((argument) @constant.builtin.boolean +   (#match? @constant.builtin.boolean "^(?i)(?:1|on|yes|true|y|0|off|no|false|n|ignore|notfound|.*-notfound)$") + ) + +(if_command +   (if) +   (argument) @operator +   (#match? @operator "^(?:NOT|AND|OR|COMMAND|POLICY|TARGET|TEST|DEFINED|IN_LIST|EXISTS|IS_NEWER_THAN|IS_DIRECTORY|IS_SYMLINK|IS_ABSOLUTE|MATCHES|LESS|GREATER|EQUAL|LESS_EQUAL|GREATER_EQUAL|STRLESS|STRGREATER|STREQUAL|STRLESS_EQUAL|STRGREATER_EQUAL|VERSION_LESS|VERSION_GREATER|VERSION_EQUAL|VERSION_LESS_EQUAL|VERSION_GREATER_EQUAL)$") +) + +(normal_command +   (identifier) @function.builtin +   . (argument) +   (argument) @constant +   (#match? @constant "^(?:ALL|COMMAND|DEPENDS|BYPRODUCTS|WORKING_DIRECTORY|COMMENT|JOB_POOL|VERBATIM|USES_TERMINAL|COMMAND_EXPAND_LISTS|SOURCES)$") +   (#match? @function.builtin "^(?i)(add_custom_target)$") + ) + +(normal_command +   (identifier) @function.builtin +   (argument) @constant +   (#match? @constant "^(?:OUTPUT|COMMAND|MAIN_DEPENDENCY|DEPENDS|BYPRODUCTS|IMPLICIT_DEPENDS|WORKING_DIRECTORY|COMMENT|DEPFILE|JOB_POOL|VERBATIM|APPEND|USES_TERMINAL|COMMAND_EXPAND_LISTS)$") +   (#match? @function.builtin "^(?i)(add_custom_command)$") + ) + diff --git a/helix-22.03-x86_64-windows/runtime/queries/cmake/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/cmake/indents.toml new file mode 100644 index 0000000..8b886a4 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/cmake/indents.toml @@ -0,0 +1,12 @@ +indent = [ +  "if_condition", +  "foreach_loop", +  "while_loop", +  "function_def", +  "macro_def", +  "normal_command", +] + +outdent = [ +  ")" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/cmake/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/cmake/injections.scm new file mode 100644 index 0000000..6cb6c25 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/cmake/injections.scm @@ -0,0 +1,4 @@ +((line_comment) @injection.content + (#set! injection.language "comment")) +((bracket_comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/cmake/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/cmake/textobjects.scm new file mode 100644 index 0000000..1fa9ded --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/cmake/textobjects.scm @@ -0,0 +1,12 @@ +(macro_def) @function.around + +(argument) @parameter.inside + +[ +  (bracket_comment) +  (line_comment) +] @comment.inside + +(line_comment)+ @comment.around + +(bracket_comment) @comment.around
\ No newline at end of file diff --git a/helix-22.03-x86_64-windows/runtime/queries/comment/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/comment/highlights.scm new file mode 100644 index 0000000..88685d5 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/comment/highlights.scm @@ -0,0 +1,30 @@ +[ + "(" + ")" +] @punctuation.bracket + +":" @punctuation.delimiter + +((tag (name) @warning) + (#match? @warning "^(TODO|HACK|WARNING)$")) + +("text" @warning + (#match? @warning "^(TODO|HACK|WARNING)$")) + +((tag (name) @error) + (match? @error "^(FIXME|XXX|BUG)$")) + +("text" @error + (match? @error "^(FIXME|XXX|BUG)$")) + +(tag + (name) @ui.text + (user)? @constant) + +; Issue number (#123) +("text" @constant.numeric + (#match? @constant.numeric "^#[0-9]+$")) + +; User mention (@user) +("text" @tag + (#match? @tag "^[@][a-zA-Z0-9_-]+$")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/cpp/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/cpp/highlights.scm new file mode 100644 index 0000000..3348ef3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/cpp/highlights.scm @@ -0,0 +1,67 @@ +; inherits: c + +; Functions + +(call_expression +  function: (qualified_identifier +    name: (identifier) @function)) + +(template_function +  name: (identifier) @function) + +(template_method +  name: (field_identifier) @function) + +(template_function +  name: (identifier) @function) + +(function_declarator +  declarator: (qualified_identifier +    name: (identifier) @function)) + +(function_declarator +  declarator: (qualified_identifier +    name: (identifier) @function)) + +(function_declarator +  declarator: (field_identifier) @function) + +; Types + +((namespace_identifier) @type + (#match? @type "^[A-Z]")) + +(auto) @type + +; Constants + +(this) @variable.builtin +(nullptr) @constant + +; Keywords + +"catch" @keyword +"class" @keyword +"constexpr" @keyword +"delete" @keyword +"explicit" @keyword +"final" @keyword +"friend" @keyword +"mutable" @keyword +"namespace" @keyword +"noexcept" @keyword +"new" @keyword +"override" @keyword +"private" @keyword +"protected" @keyword +"public" @keyword +"template" @keyword +"throw" @keyword +"try" @keyword +"typename" @keyword +"using" @keyword +"virtual" @keyword + +; Strings + +(raw_string_literal) @string diff --git a/helix-22.03-x86_64-windows/runtime/queries/cpp/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/cpp/indents.toml new file mode 100644 index 0000000..0ca2ed8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/cpp/indents.toml @@ -0,0 +1,17 @@ +indent = [ +  "compound_statement", +  "field_declaration_list", +  "enumerator_list", +  "parameter_list", +  "init_declarator", +  "case_statement", +  "condition_clause", +  "expression_statement", +] + +outdent = [ +  "case", +  "access_specifier", +  "}", +  "]", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/cpp/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/cpp/injections.scm new file mode 100644 index 0000000..a5a5208 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/cpp/injections.scm @@ -0,0 +1 @@ +; inherits: c diff --git a/helix-22.03-x86_64-windows/runtime/queries/cpp/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/cpp/textobjects.scm new file mode 100644 index 0000000..6e3de1a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/cpp/textobjects.scm @@ -0,0 +1,7 @@ +; inherits: c + +(lambda_expression +  body: (_) @function.inside) @function.around + +(class_specifier +  body: (_) @class.inside) @class.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/css/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/css/highlights.scm new file mode 100644 index 0000000..4dfc0c6 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/css/highlights.scm @@ -0,0 +1,64 @@ +(comment) @comment + +(tag_name) @tag +(nesting_selector) @tag +(universal_selector) @tag + +"~" @operator +">" @operator +"+" @operator +"-" @operator +"*" @operator +"/" @operator +"=" @operator +"^=" @operator +"|=" @operator +"~=" @operator +"$=" @operator +"*=" @operator + +"and" @operator +"or" @operator +"not" @operator +"only" @operator + +(attribute_selector (plain_value) @string) +(pseudo_element_selector (tag_name) @attribute) +(pseudo_class_selector (class_name) @attribute) + +(class_name) @variable.other.member +(id_name) @variable.other.member +(namespace_name) @variable.other.member +(property_name) @variable.other.member +(feature_name) @variable.other.member + +(attribute_name) @attribute + +(function_name) @function + +((property_name) @variable + (#match? @variable "^--")) +((plain_value) @variable + (#match? @variable "^--")) + +"@media" @keyword +"@import" @keyword +"@charset" @keyword +"@namespace" @keyword +"@supports" @keyword +"@keyframes" @keyword +(at_keyword) @keyword +(to) @keyword +(from) @keyword +(important) @keyword + +(string_value) @string +(color_value) @string.special + +(integer_value) @constant.numeric.integer +(float_value) @constant.numeric.float +(unit) @type + +"#" @punctuation.delimiter +"," @punctuation.delimiter +":" @punctuation.delimiter diff --git a/helix-22.03-x86_64-windows/runtime/queries/css/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/css/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/css/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/dart/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/dart/highlights.scm new file mode 100644 index 0000000..9f667d6 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/dart/highlights.scm @@ -0,0 +1,237 @@ +(dotted_identifier_list) @string + +; Methods +; -------------------- +(super) @function.builtin + +(function_expression_body (identifier) @function.method) +((identifier)(selector (argument_part)) @function.method) + +; Annotations +; -------------------- +(annotation +  name: (identifier) @attribute) +(marker_annotation +  name: (identifier) @attribute) + +; Types +; -------------------- +(class_definition +  name: (identifier) @type) +   +(constructor_signature +  name: (identifier) @function.method) + +(function_signature +  name: (identifier) @function.method) + +(getter_signature +  (identifier) @function.builtin) + +(setter_signature +  name: (identifier) @function.builtin) + +(enum_declaration +  name: (identifier) @type) + +(enum_constant +  name: (identifier) @type.builtin) + +(void_type) @type.builtin + +((scoped_identifier +  scope: (identifier) @type) + (#match? @type "^[a-zA-Z]")) +  +((scoped_identifier +  scope: (identifier) @type +  name: (identifier) @type) + (#match? @type "^[a-zA-Z]")) + +; the DisabledDrawerButtons in : const DisabledDrawerButtons(history: true), +(type_identifier) @type.builtin + +; Variables +; -------------------- +; the "File" in var file = File(); +((identifier) @namespace + (#match? @namespace "^_?[A-Z].*[a-z]")) ; catch Classes or IClasses not CLASSES + +("Function" @type.builtin) +(inferred_type) @type.builtin + +; properties +(unconditional_assignable_selector +  (identifier) @variable.other.member) + +(conditional_assignable_selector +  (identifier) @variable.other.member) + +; assignments +; -------------------- +; the "strings" in : strings = "some string" +(assignment_expression +  left: (assignable_expression) @variable) + +(this) @variable.builtin + +; Parameters +; -------------------- +(formal_parameter +    name: (identifier) @variable) + +(named_argument +  (label (identifier) @variable)) + +; Literals +; -------------------- +[ +  (hex_integer_literal) +  (decimal_integer_literal) +  (decimal_floating_point_literal) +  ;(octal_integer_literal) +  ;(hex_floating_point_literal) +] @constant.numeric.integer + +(symbol_literal) @string.special.symbol +(string_literal) @string + +[ +  (const_builtin) +  (final_builtin) +] @variable.builtin + +[ +  (true) +  (false) +] @constant.builtin.boolean + +(null_literal) @constant.builtin + +(comment) @comment.line +(documentation_comment) @comment.block.documentation + +; Tokens +; -------------------- +(template_substitution +  "$" @punctuation.special +  "{" @punctuation.special +  "}" @punctuation.special +) @embedded + +(template_substitution +  "$" @punctuation.special +  (identifier_dollar_escaped) @variable +) @embedded + +(escape_sequence) @constant.character.escape + +; Punctuation +;--------------------- +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +]  @punctuation.bracket + +[ +  ";" +  "." +  "," +  ":" +] @punctuation.delimiter +   +; Operators +;--------------------- +[ + "@" + "?" + "=>" + ".." + "==" + "&&" + "%" + "<" + ">" + "=" + ">=" + "<=" + "||" + (multiplicative_operator) + (increment_operator) + (is_operator) + (prefix_operator) + (equality_operator) + (additive_operator) +] @operator + +; Keywords +; -------------------- +["import" "library" "export"] @keyword.control.import +["do" "while" "continue" "for"] @keyword.control.repeat +["return" "yield"] @keyword.control.return +["as" "in" "is"] @keyword.operator + +[ +  "?." +  "??" +  "if" +  "else" +  "switch" +  "default" +  "late" +] @keyword.control.conditional + +[ +  "try" +  "throw" +  "catch" +  "finally" +  (break_statement) +] @keyword.control.exception + +; Reserved words (cannot be used as identifiers) +[ +    (case_builtin) +    "abstract" +    "async" +    "async*" +    "await" +    "class" +    "covariant" +    "deferred" +    "dynamic" +    "enum" +    "extends" +    "extension" +    "external" +    "factory" +    "Function" +    "get" +    "implements" +    "interface" +    "mixin" +    "new" +    "on" +    "operator" +    "part" +    "required" +    "set" +    "show" +    "static" +    "super" +    "sync*" +    "typedef" +    "with" +] @keyword + +; when used as an identifier: +((identifier) @variable.builtin + (#match? @variable.builtin "^(abstract|as|covariant|deferred|dynamic|export|external|factory|Function|get|implements|import|interface|library|operator|mixin|part|set|static|typedef)$")) + +; Error +(ERROR) @error + diff --git a/helix-22.03-x86_64-windows/runtime/queries/dart/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/dart/indents.toml new file mode 100644 index 0000000..5c11e05 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/dart/indents.toml @@ -0,0 +1,20 @@ +indent = [ +  "class_body", +  "function_body", +  "function_expression_body", +  "declaration", +  "initializers", +  "switch_block", +  "if_statement", +  "formal_parameter_list", +  "formal_parameter", +  "list_literal", +  "return_statement", +  "arguments" +] + +outdent = [ + "}", + "]", + ")" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/dart/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/dart/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/dart/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/dart/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/dart/locals.scm new file mode 100644 index 0000000..629838e --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/dart/locals.scm @@ -0,0 +1,20 @@ +; Scopes +;------- + +[ + (block) + (try_statement) + (catch_clause) + (finally_clause) +] @local.scope + +; Definitions +;------------ + +(class_definition + body: (_) @local.definition) + +; References +;------------ + +(identifier) @local.reference diff --git a/helix-22.03-x86_64-windows/runtime/queries/dockerfile/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/dockerfile/highlights.scm new file mode 100644 index 0000000..5a945fb --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/dockerfile/highlights.scm @@ -0,0 +1,51 @@ +[ +	"FROM" +	"AS" +	"RUN" +	"CMD" +	"LABEL" +	"EXPOSE" +	"ENV" +	"ADD" +	"COPY" +	"ENTRYPOINT" +	"VOLUME" +	"USER" +	"WORKDIR" +	"ARG" +	"ONBUILD" +	"STOPSIGNAL" +	"HEALTHCHECK" +	"SHELL" +	"MAINTAINER" +	"CROSS_BUILD" +] @keyword + +[ +	":" +	"@" +] @operator + +(comment) @comment + + +(image_spec +	(image_tag +		":" @punctuation.special) +	(image_digest +		"@" @punctuation.special)) + +(double_quoted_string) @string + +(expansion +  [ +	"$" +	"{" +	"}" +  ] @punctuation.special +) @none + +((variable) @constant + (#match? @constant "^[A-Z][A-Z_0-9]*$")) + + diff --git a/helix-22.03-x86_64-windows/runtime/queries/dockerfile/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/dockerfile/injections.scm new file mode 100644 index 0000000..20396f1 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/dockerfile/injections.scm @@ -0,0 +1,6 @@ +((comment) @injection.content + (#set! injection.language "comment")) + +([(shell_command) (shell_fragment)] @injection.content + (#set! injection.language "bash")) + diff --git a/helix-22.03-x86_64-windows/runtime/queries/elixir/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/elixir/highlights.scm new file mode 100644 index 0000000..76fd2af --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/elixir/highlights.scm @@ -0,0 +1,221 @@ +; The following code originates mostly from +; https://github.com/elixir-lang/tree-sitter-elixir, with minor edits to +; align the captures with helix. The following should be considered +; Copyright 2021 The Elixir Team +; +; Licensed under the Apache License, Version 2.0 (the "License"); +; you may not use this file except in compliance with the License. +; You may obtain a copy of the License at +; +;    https://www.apache.org/licenses/LICENSE-2.0 +; +; Unless required by applicable law or agreed to in writing, software +; distributed under the License is distributed on an "AS IS" BASIS, +; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +; See the License for the specific language governing permissions and +; limitations under the License. + +; Reserved keywords + +["when" "and" "or" "not" "in" "not in" "fn" "do" "end" "catch" "rescue" "after" "else"] @keyword + +; Operators + +; * doc string +(unary_operator +  operator: "@" @comment.block.documentation +  operand: (call +    target: (identifier) @comment.block.documentation.__attribute__ +    (arguments +      [ +        (string) @comment.block.documentation +        (charlist) @comment.block.documentation +        (sigil +          quoted_start: _ @comment.block.documentation +          quoted_end: _ @comment.block.documentation) @comment.block.documentation +        (boolean) @comment.block.documentation +      ])) +  (#match? @comment.block.documentation.__attribute__ "^(moduledoc|typedoc|doc)$")) + +; * module attribute +(unary_operator +  operator: "@" @variable.other.member +  operand: [ +    (identifier) @variable.other.member +    (call +      target: (identifier) @variable.other.member) +    (boolean) @variable.other.member +    (nil) @variable.other.member +  ]) + +; * capture operator +(unary_operator +  operator: "&" +  operand: [ +    (integer) @operator +    (binary_operator +      left: [ +        (call target: (dot left: (_) right: (identifier) @function)) +        (identifier) @function +      ] operator: "/" right: (integer) @operator) +  ]) + +(operator_identifier) @operator + +(unary_operator +  operator: _ @operator) + +(binary_operator +  operator: _ @operator) + +(dot +  operator: _ @operator) + +(stab_clause +  operator: _ @operator) + +; Literals + +(nil) @constant.builtin + +(boolean) @constant.builtin.boolean +(integer) @constant.numeric.integer +(float) @constant.numeric.float + +(alias) @type + +(call +  target: (dot +    left: (atom) @type)) + +(char) @constant.character + +; Quoted content + +(interpolation "#{" @punctuation.special "}" @punctuation.special) @embedded + +(escape_sequence) @constant.character.escape + +[ +  (atom) +  (quoted_atom) +  (keyword) +  (quoted_keyword) +] @string.special.symbol + +[ +  (string) +  (charlist) +] @string + +; Note that we explicitly target sigil quoted start/end, so they are not overridden by delimiters + +(sigil +  (sigil_name) @__name__ +  quoted_start: _ @string +  quoted_end: _ @string +  (#match? @__name__ "^[sS]$")) @string + +(sigil +  (sigil_name) @__name__ +  quoted_start: _ @string.regexp +  quoted_end: _ @string.regexp +  (#match? @__name__ "^[rR]$")) @string.regexp + +(sigil +  (sigil_name) @__name__ +  quoted_start: _ @string.special +  quoted_end: _ @string.special) @string.special + +; Calls + +; * definition keyword +(call +  target: (identifier) @keyword +  (#match? @keyword "^(def|defdelegate|defexception|defguard|defguardp|defimpl|defmacro|defmacrop|defmodule|defn|defnp|defoverridable|defp|defprotocol|defstruct)$")) + +; * kernel or special forms keyword +(call +  target: (identifier) @keyword +  (#match? @keyword "^(alias|case|cond|else|for|if|import|quote|raise|receive|require|reraise|super|throw|try|unless|unquote|unquote_splicing|use|with)$")) + +; * function call +(call +  target: [ +    ; local +    (identifier) @function +    ; remote +    (dot +      right: (identifier) @function) +  ]) + +; * just identifier in function definition +(call +  target: (identifier) @keyword +  (arguments +    [ +      (identifier) @function +      (binary_operator +        left: (identifier) @function +        operator: "when") +    ]) +  (#match? @keyword "^(def|defdelegate|defguard|defguardp|defmacro|defmacrop|defn|defnp|defp)$")) + +; * pipe into identifier (definition) +(call +  target: (identifier) @keyword +  (arguments +    (binary_operator +      operator: "|>" +      right: (identifier) @variable)) +  (#match? @keyword "^(def|defdelegate|defguard|defguardp|defmacro|defmacrop|defn|defnp|defp)$")) + +; * pipe into identifier (function call) +(binary_operator +  operator: "|>" +  right: (identifier) @function) + +; Identifiers + +; * special +( +  (identifier) @constant.builtin +  (#match? @constant.builtin "^(__MODULE__|__DIR__|__ENV__|__CALLER__|__STACKTRACE__)$") +) + +; * unused +( +  (identifier) @comment +  (#match? @comment "^_") +) + +; * regular +(identifier) @variable + +; Comment + +(comment) @comment + +; Punctuation + +[ + "%" +] @punctuation + +[ + "," + ";" +] @punctuation.delimiter + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +  "<<" +  ">>" +] @punctuation.bracket + +(ERROR) @warning diff --git a/helix-22.03-x86_64-windows/runtime/queries/elixir/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/elixir/injections.scm new file mode 100644 index 0000000..8370a0d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/elixir/injections.scm @@ -0,0 +1,9 @@ +((comment) @injection.content + (#set! injection.language "comment")) + +((sigil +  (sigil_name) @_sigil_name +  (quoted_content) @injection.content) + (#match? @_sigil_name "^(r|R)$") + (#set! injection.language "regex") + (#set! injection.combined)) diff --git a/helix-22.03-x86_64-windows/runtime/queries/elm/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/elm/highlights.scm new file mode 100644 index 0000000..3c8fd12 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/elm/highlights.scm @@ -0,0 +1,83 @@ +; Keywords +[ +    "if" +    "then" +    "else" +    "let" +    "in" + ] @keyword.control +(case) @keyword.control +(of) @keyword.control + +(colon) @keyword.operator +(backslash) @keyword +(as) @keyword +(port) @keyword +(exposing) @keyword +(alias) @keyword +(infix) @keyword + +(arrow) @keyword.operator +(dot) @keyword.operator + +(port) @keyword + +(type_annotation(lower_case_identifier) @function) +(port_annotation(lower_case_identifier) @function) +(file (value_declaration (function_declaration_left(lower_case_identifier) @function))) + +(field name: (lower_case_identifier) @attribute) +(field_access_expr(lower_case_identifier) @attribute) + +(operator_identifier) @keyword.operator +(eq) @keyword.operator.assignment + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +] @punctuation.bracket + +"|" @keyword +"," @punctuation.delimiter + +[ +  "|>" +] @keyword + + +(import) @keyword.contol.import +(module) @keyword.other + +(number_constant_expr) @constant.numeric + +(type) @type + +(type_declaration(upper_case_identifier) @type) +(type_ref) @type +(type_alias_declaration name: (upper_case_identifier) @type) + +(union_pattern constructor: (upper_case_qid (upper_case_identifier) @label (dot) (upper_case_identifier) @variable.other.member))  +(union_pattern constructor: (upper_case_qid (upper_case_identifier) @variable.other.member))  + +(union_variant(upper_case_identifier) @variable.other.member) +(value_expr name: (value_qid (upper_case_identifier) @label)) +(value_expr (upper_case_qid (upper_case_identifier) @label (dot) (upper_case_identifier) @variable.other.member)) +(value_expr(upper_case_qid(upper_case_identifier)) @variable.other.member) + +; comments +(line_comment) @comment +(block_comment) @comment + +; strings +(string_escape) @constant.character.escape + +(open_quote) @string +(close_quote) @string +(regular_string_part) @string + +(open_char) @constant.character +(close_char) @constant.character diff --git a/helix-22.03-x86_64-windows/runtime/queries/elm/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/elm/injections.scm new file mode 100644 index 0000000..83f8245 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/elm/injections.scm @@ -0,0 +1,4 @@ +; Parse glsl where defined + +((glsl_content) @injection.content + (#set! injection.language "glsl")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/elm/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/elm/locals.scm new file mode 100644 index 0000000..ab10311 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/elm/locals.scm @@ -0,0 +1,14 @@ +(value_declaration) @local.scope +(type_alias_declaration) @local.scope +(type_declaration) @local.scope +(type_annotation) @local.scope +(port_annotation) @local.scope +(infix_declaration) @local.scope +(let_in_expr) @local.scope + +(function_declaration_left (lower_pattern (lower_case_identifier)) @local.definition) +(function_declaration_left (lower_case_identifier) @local.definition) + +(value_expr(value_qid(upper_case_identifier)) @local.reference) +(value_expr(value_qid(lower_case_identifier)) @local.reference) +(type_ref (upper_case_qid) @local.reference) diff --git a/helix-22.03-x86_64-windows/runtime/queries/elm/tags.scm b/helix-22.03-x86_64-windows/runtime/queries/elm/tags.scm new file mode 100644 index 0000000..03999fb --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/elm/tags.scm @@ -0,0 +1,19 @@ +(value_declaration (function_declaration_left (lower_case_identifier) @name)) @definition.function + +(function_call_expr (value_expr (value_qid) @name)) @reference.function +(exposed_value (lower_case_identifier) @name) @reference.function +(type_annotation ((lower_case_identifier) @name) (colon)) @reference.function + +(type_declaration ((upper_case_identifier) @name) ) @definition.type + +(type_ref (upper_case_qid (upper_case_identifier) @name)) @reference.type +(exposed_type (upper_case_identifier) @name) @reference.type + +(type_declaration (union_variant (upper_case_identifier) @name)) @definition.union + +(value_expr (upper_case_qid (upper_case_identifier) @name)) @reference.union + + +(module_declaration  +    (upper_case_qid (upper_case_identifier)) @name +) @definition.module diff --git a/helix-22.03-x86_64-windows/runtime/queries/erlang/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/erlang/highlights.scm new file mode 100644 index 0000000..fc742f3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/erlang/highlights.scm @@ -0,0 +1,118 @@ +; Attributes +; module declaration +(attribute +  name: (atom) @keyword +  (arguments (atom) @module) + (#eq? @keyword "module")) + +(attribute +  name: (atom) @keyword +  (arguments +    . +    (atom) @module) + (#eq? @keyword "import")) + +(attribute +  name: (atom) @keyword +  (arguments +    . +    (atom) @type +    [ +      (tuple (atom) @variable.other.member) +      (tuple +        (binary_operator +          left: (atom) @variable.other.member +          operator: "=")) +      (tuple +        (binary_operator +          left: +            (binary_operator +              left: (atom) @variable.other.member +              operator: "=") +          operator: "::")) +      ]) + (#eq? @keyword "record")) + +(attribute +  name: (atom) @keyword +  (arguments +    . +    [ +      (atom) @keyword.directive +      (variable) @keyword.directive +      (call +        function: +          [(variable) (atom)] @keyword.directive) +    ]) + (#eq? @keyword "define")) + +(attribute +  name: (atom) @keyword +  module: (atom) @module + (#eq? @keyword "spec")) + +; Functions +(function name: (atom) @function) +(call module: (atom) @module) +(call function: (atom) @function) +(stab_clause name: (atom) @function) +(function_capture module: (atom) @module) +(function_capture function: (atom) @function) + +; Records +(record_content +  (binary_operator +    left: (atom) @variable.other.member +    operator: "=")) + +(record field: (atom) @variable.other.member) +(record name: (atom) @type) + +; Keywords +((attribute name: (atom) @keyword) + (#match? +  @keyword +  "^(define|export|export_type|include|include_lib|ifdef|ifndef|if|elif|else|endif|vsn|on_load|behaviour|record|file|type|opaque|spec)$")) + +["case" "fun" "if" "of" "when" "end" "receive" "try" "catch" "after"] @keyword + +; Operators +(binary_operator +  left: (atom) @function +  operator: "/" +  right: (integer) @constant.numeric.integer) + +(binary_operator operator: _ @operator) +(unary_operator operator: _ @operator) +["/" ":" "#" "->"] @operator + +; Comments +((variable) @comment.discard + (#match? @comment.discard "^_")) + +(tripledot) @comment.discard + +(comment) @comment + +; Macros +(macro +  "?"+ @keyword.directive +  name: (_) @keyword.directive) + +; Basic types +(variable) @variable +[ +  (atom) +  (quoted_atom) +] @string.special.symbol +(string) @string +(character) @constant.character + +(integer) @constant.numeric.integer +(float) @constant.numeric.float + +; Punctuation +["," "." "-" ";"] @punctuation.delimiter +["(" ")" "{" "}" "[" "]" "<<" ">>"] @punctuation.bracket + +; (ERROR) @error diff --git a/helix-22.03-x86_64-windows/runtime/queries/erlang/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/erlang/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/erlang/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/fish/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/fish/highlights.scm new file mode 100644 index 0000000..def5393 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/fish/highlights.scm @@ -0,0 +1,156 @@ +;; Operators + +[ + "&&" + "||" + "|" + "&" + "=" + "!=" + ".." + "!" + (direction) + (stream_redirect) + (test_option) +] @operator + +[ + "not" + "and" + "or" +] @keyword.operator + +;; Conditionals + +(if_statement +[ + "if" + "end" +] @keyword.control.conditional) + +(switch_statement +[ + "switch" + "end" +] @keyword.control.conditional) + +(case_clause +[ + "case" +] @keyword.control.conditional) + +(else_clause  +[ + "else" +] @keyword.control.conditional) + +(else_if_clause  +[ + "else" + "if" +] @keyword.control.conditional) + +;; Loops/Blocks + +(while_statement +[ + "while" + "end" +] @keyword.control.repeat) + +(for_statement +[ + "for" + "end" +] @keyword.control.repeat) + +(begin_statement +[ + "begin" + "end" +] @keyword.control.repeat) + +;; Keywords + +[ + "in" + (break) + (continue) +] @keyword + +"return" @keyword.control.return + +;; Punctuation + +[ + "[" + "]" + "{" + "}" + "(" + ")" +] @punctuation.bracket + +"," @punctuation.delimiter + +;; Commands + +(command +  argument: [ +             (word) @variable.parameter (#match? @variable.parameter "^-") +            ] +) + +; non-bultin command names +(command name: (word) @function) + +; derived from builtin -n (fish 3.2.2) +(command +  name: [ +        (word) @function.builtin +        (#match? @function.builtin "^(\.|:|_|alias|argparse|bg|bind|block|breakpoint|builtin|cd|command|commandline|complete|contains|count|disown|echo|emit|eval|exec|exit|fg|functions|history|isatty|jobs|math|printf|pwd|random|read|realpath|set|set_color|source|status|string|test|time|type|ulimit|wait)$") +        ] +) + +(test_command "test" @function.builtin) + +;; Functions + +(function_definition ["function" "end"] @keyword.function) + +(function_definition +  name: [ +        (word) (concatenation) +        ]  +@function) + +(function_definition +  option: [ +          (word) +          (concatenation (word)) +          ] @variable.parameter (#match? @variable.parameter "^-") +) + +;; Strings + +[(double_quote_string) (single_quote_string)] @string +(escape_sequence) @constant.character.escape + +;; Variables + +(variable_name) @variable +(variable_expansion) @constant + +;; Nodes + +(integer) @constant.numeric.integer +(float) @constant.numeric.float +(comment) @comment +(test_option) @string + +((word) @constant.builtin.boolean +(#match? @constant.builtin.boolean "^(true|false)$")) + +;; Error + +(ERROR) @error diff --git a/helix-22.03-x86_64-windows/runtime/queries/fish/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/fish/indents.toml new file mode 100644 index 0000000..6f1e563 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/fish/indents.toml @@ -0,0 +1,12 @@ +indent = [ +  "function_definition", +  "while_statement", +  "for_statement", +  "if_statement", +  "begin_statement", +  "switch_statement", +] + +outdent = [ +  "end" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/fish/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/fish/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/fish/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/fish/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/fish/textobjects.scm new file mode 100644 index 0000000..de8caa9 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/fish/textobjects.scm @@ -0,0 +1,5 @@ +(function_definition) @function.around + +(comment) @comment.inside + +(comment)+ @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/git-commit/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/git-commit/highlights.scm new file mode 100644 index 0000000..0b50d41 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/git-commit/highlights.scm @@ -0,0 +1,14 @@ +(subject) @markup.heading +(path) @string.special.path +(branch) @string.special.symbol +(commit) @constant +(item) @markup.link.url +(header) @tag + +(change kind: "new file" @diff.plus) +(change kind: "deleted" @diff.minus) +(change kind: "modified" @diff.delta) +(change kind: "renamed" @diff.delta.moved) + +[":" "->"] @punctuation.delimeter +(comment) @comment diff --git a/helix-22.03-x86_64-windows/runtime/queries/git-commit/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/git-commit/injections.scm new file mode 100644 index 0000000..79f7691 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/git-commit/injections.scm @@ -0,0 +1,8 @@ +(((scissors) +  (message) @injection.content) + (#set! injection.include-children) + (#set! injection.language "diff")) + +((rebase_command) @injection.content + (#set! injection.include-children) + (#set! injection.language "git-rebase")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/git-config/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/git-config/highlights.scm new file mode 100644 index 0000000..84767ed --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/git-config/highlights.scm @@ -0,0 +1,27 @@ +((section_name) @keyword.directive + (#eq? @keyword.directive "include")) + +((section_header +   (section_name) @keyword.directive +   (subsection_name)) + (#eq? @keyword.directive "includeIf")) + +(section_name) @markup.heading +(variable (name) @variable.other.member) +[(true) (false)] @constant.builtin.boolean +(integer) @constant.numeric.integer + +((string) @string.special.path + (#match? @string.special.path "^(~|./|/)")) + +[(string) (subsection_name)] @string + +[ +  "[" +  "]" +  "\"" +] @punctuation.bracket + +"=" @punctuation.delimiter + +(comment) @comment diff --git a/helix-22.03-x86_64-windows/runtime/queries/git-diff/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/git-diff/highlights.scm new file mode 100644 index 0000000..1c1a882 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/git-diff/highlights.scm @@ -0,0 +1,6 @@ +[(addition) (new_file)] @diff.plus +[(deletion) (old_file)] @diff.minus + +(commit) @constant +(location) @attribute +(command) @markup.bold diff --git a/helix-22.03-x86_64-windows/runtime/queries/git-rebase/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/git-rebase/highlights.scm new file mode 100644 index 0000000..4f00703 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/git-rebase/highlights.scm @@ -0,0 +1,11 @@ +(operation operator: ["p" "pick" "r" "reword" "e" "edit" "s" "squash" "m" "merge" "d" "drop" "b" "break" "x" "exec"] @keyword) +(operation operator: ["l" "label" "t" "reset"] @function) +(operation operator: ["f" "fixup"] @function.special) + +(option) @operator +(label) @string.special.symbol +(commit) @constant +"#" @punctuation.delimiter +(comment) @comment + +(ERROR) @error diff --git a/helix-22.03-x86_64-windows/runtime/queries/git-rebase/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/git-rebase/injections.scm new file mode 100644 index 0000000..070129b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/git-rebase/injections.scm @@ -0,0 +1,4 @@ +((operation +   operator: ["x" "exec"] +   (command) @injection.content) + (#set! injection.language "bash")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/glsl/folds.scm b/helix-22.03-x86_64-windows/runtime/queries/glsl/folds.scm new file mode 100644 index 0000000..a5a5208 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/glsl/folds.scm @@ -0,0 +1 @@ +; inherits: c diff --git a/helix-22.03-x86_64-windows/runtime/queries/glsl/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/glsl/highlights.scm new file mode 100644 index 0000000..af2a049 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/glsl/highlights.scm @@ -0,0 +1,37 @@ +; inherits: c + +[ +  "in" +  "out" +  "inout" +  "uniform" +  "shared" +  "layout" +  "attribute" +  "varying" +  "buffer" +  "coherent" +  "readonly" +  "writeonly" +  "precision" +  "highp" +  "mediump" +  "lowp" +  "centroid" +  "sample" +  "patch" +  "smooth" +  "flat" +  "noperspective" +  "invariant" +  "precise" +] @keyword + +"subroutine" @keyword.function + +(extension_storage_class) @attribute + +( +  (identifier) @variable.builtin +  (#match? @variable.builtin "^gl_") +) diff --git a/helix-22.03-x86_64-windows/runtime/queries/glsl/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/glsl/indents.toml new file mode 100644 index 0000000..a7fd499 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/glsl/indents.toml @@ -0,0 +1,19 @@ +indent = [ +  "init_declarator", +  "compound_statement", +  "preproc_arg", +  "field_declaration_list", +  "case_statement", +  "conditional_expression", +  "enumerator_list", +  "struct_specifier", +  "compound_literal_expression" +] + +outdent = [ +  "#define", +  "#ifdef", +  "#endif", +  "{", +  "}" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/glsl/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/glsl/injections.scm new file mode 100644 index 0000000..6330ea3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/glsl/injections.scm @@ -0,0 +1,4 @@ +; inherits: c + +((preproc_arg) @injection.content + (#set! injection.language "glsl")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/glsl/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/glsl/locals.scm new file mode 100644 index 0000000..a5a5208 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/glsl/locals.scm @@ -0,0 +1 @@ +; inherits: c diff --git a/helix-22.03-x86_64-windows/runtime/queries/go/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/go/highlights.scm new file mode 100644 index 0000000..4ff8675 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/go/highlights.scm @@ -0,0 +1,152 @@ +; Function calls + +(call_expression +  function: (identifier) @function) + +(call_expression +  function: (selector_expression +    field: (field_identifier) @function.method)) + +; Function definitions + +(function_declaration +  name: (identifier) @function) + +(method_declaration +  name: (field_identifier) @function.method) + +; Identifiers + +((identifier) @constant (match? @constant "^[A-Z][A-Z\\d_]+$")) +(const_spec +  name: (identifier) @constant) + +(parameter_declaration (identifier) @variable.parameter) +(variadic_parameter_declaration (identifier) @variable.parameter) + +(type_identifier) @type +(field_identifier) @variable.other.member +(identifier) @variable +(package_identifier) @variable + + +; Operators + +[ +  "--" +  "-" +  "-=" +  ":=" +  "!" +  "!=" +  "..." +  "*" +  "*" +  "*=" +  "/" +  "/=" +  "&" +  "&&" +  "&=" +  "%" +  "%=" +  "^" +  "^=" +  "+" +  "++" +  "+=" +  "<-" +  "<" +  "<<" +  "<<=" +  "<=" +  "=" +  "==" +  ">" +  ">=" +  ">>" +  ">>=" +  "|" +  "|=" +  "||" +  "~" +] @operator + +; Keywords + +[ +  "break" +  "case" +  "chan" +  "const" +  "continue" +  "default" +  "defer" +  "else" +  "fallthrough" +  "for" +  "func" +  "go" +  "goto" +  "if" +  "interface" +  "map" +  "range" +  "return" +  "select" +  "struct" +  "switch" +  "type" +  "var" +] @keyword + +[ +  "import" +  "package" +] @keyword.control.import + +; Delimiters + +[ +  ":" +  "." +  "," +  ";" +] @punctuation.delimiter + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +] @punctuation.bracket + +; Literals + +[ +  (interpreted_string_literal) +  (raw_string_literal) +  (rune_literal) +] @string + +(escape_sequence) @constant.character.escape + +[ +  (int_literal) +  (float_literal) +  (imaginary_literal) +] @constant.numeric.integer + +[ +  (true) +  (false) +] @constant.builtin.boolean + +[ +  (nil) +  (iota) +] @constant.builtin + +(comment) @comment diff --git a/helix-22.03-x86_64-windows/runtime/queries/go/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/go/indents.toml new file mode 100644 index 0000000..7929ff5 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/go/indents.toml @@ -0,0 +1,30 @@ +indent = [ +  "import_declaration", +  "const_declaration", +  #"var_declaration", +  #"short_var_declaration", +  "type_declaration", +  "type_spec", +  # simply block should be enough +  # "function_declaration", +  # "method_declaration", +  # "composite_literal", +  "func_literal", +  "literal_value", +  "element", +  "keyed_element", +  "expression_case", +  "default_case", +  "type_case", +  "communication_case", +  "argument_list", +  "field_declaration_list", +  "block", +] + +outdent = [ + "case", + "}", + "]", + ")" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/go/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/go/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/go/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/go/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/go/locals.scm new file mode 100644 index 0000000..d240e2b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/go/locals.scm @@ -0,0 +1,30 @@ +; Scopes + +(block) @local.scope + +; Definitions + +(parameter_declaration (identifier) @local.definition) +(variadic_parameter_declaration (identifier) @local.definition) + +(short_var_declaration +  left: (expression_list +          (identifier) @local.definition)) + +(var_spec +  name: (identifier) @local.definition) + +(for_statement + (range_clause +   left: (expression_list +           (identifier) @local.definition))) + +(const_declaration + (const_spec +  name: (identifier) @local.definition)) + +; References + +(identifier) @local.reference +(field_identifier) @local.reference + diff --git a/helix-22.03-x86_64-windows/runtime/queries/go/tags.scm b/helix-22.03-x86_64-windows/runtime/queries/go/tags.scm new file mode 100644 index 0000000..d87008a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/go/tags.scm @@ -0,0 +1,30 @@ +( +  (comment)* @doc +  . +  (function_declaration +    name: (identifier) @name) @definition.function +  (#strip! @doc "^//\\s*") +  (#set-adjacent! @doc @definition.function) +) + +( +  (comment)* @doc +  . +  (method_declaration +    name: (field_identifier) @name) @definition.method +  (#strip! @doc "^//\\s*") +  (#set-adjacent! @doc @definition.method) +) + +(call_expression +  function: [ +    (identifier) @name +    (parenthesized_expression (identifier) @name) +    (selector_expression field: (field_identifier) @name) +    (parenthesized_expression (selector_expression field: (field_identifier) @name)) +  ]) @reference.call + +(type_spec +  name: (type_identifier) @name) @definition.type + +(type_identifier) @name @reference.type diff --git a/helix-22.03-x86_64-windows/runtime/queries/go/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/go/textobjects.scm new file mode 100644 index 0000000..d77e14b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/go/textobjects.scm @@ -0,0 +1,25 @@ +(function_declaration +  body: (block)? @function.inside) @function.around + +(func_literal +  (_)? @function.inside) @function.around + +(method_declaration +  body: (block)? @function.inside) @function.around + +;; struct and interface declaration as class textobject? +(type_declaration +  (type_spec (type_identifier) (struct_type (field_declaration_list (_)?) @class.inside))) @class.around + +(type_declaration +  (type_spec (type_identifier) (interface_type (method_spec_list (_)?) @class.inside))) @class.around + +(parameter_list +  (_) @parameter.inside) + +(argument_list +  (_) @parameter.inside) + +(comment) @comment.inside + +(comment)+ @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/graphql/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/graphql/highlights.scm new file mode 100644 index 0000000..9fab405 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/graphql/highlights.scm @@ -0,0 +1,163 @@ +; Types +;------ + +(scalar_type_definition +  (name) @type) + +(object_type_definition +  (name) @type) + +(interface_type_definition +  (name) @type) + +(union_type_definition +  (name) @type) + +(enum_type_definition +  (name) @type) + +(input_object_type_definition +  (name) @type) + +(directive_definition +  (name) @type) + +(directive_definition +  "@" @type) + +(scalar_type_extension +  (name) @type) + +(object_type_extension +  (name) @type) + +(interface_type_extension +  (name) @type) + +(union_type_extension +  (name) @type) + +(enum_type_extension +  (name) @type) + +(input_object_type_extension +  (name) @type) + +(named_type +  (name) @type) + +(directive) @type + +; Properties +;----------- + +(field +  (name) @variable.other.member) + +(field +  (alias +    (name) @variable.other.member)) + +(field_definition +  (name) @variable.other.member) + +(object_value +  (object_field +    (name) @variable.other.member)) + +(enum_value +  (name) @variable.other.member) + +; Variable Definitions and Arguments  +;----------------------------------- + +(operation_definition +  (name) @variable) + +(fragment_name +  (name) @variable) + +(input_fields_definition +  (input_value_definition +    (name) @variable.parameter)) + +(argument +  (name) @variable.parameter) + +(arguments_definition +  (input_value_definition +    (name) @variable.parameter)) + +(variable_definition +  (variable) @variable.parameter) + +(argument +  (value +    (variable) @variable)) + +; Constants +;---------- + +(string_value) @string + +(int_value) @constants.numeric.integer + +(float_value) @constants.numeric.float + +(boolean_value) @constants.builtin.boolean + +; Literals +;--------- + +(description) @comment + +(comment) @comment + +(directive_location +  (executable_directive_location) @type.builtin) + +(directive_location +  (type_system_directive_location) @type.builtin) + +; Keywords +;---------- + +[ +  "query" +  "mutation" +  "subscription" +  "fragment" +  "scalar" +  "type" +  "interface" +  "union" +  "enum" +  "input" +  "extend" +  "directive" +  "schema" +  "on" +  "repeatable" +  "implements" +] @keyword + +; Punctuation +;------------ + +[ + "(" + ")" + "[" + "]" + "{" + "}" +] @punctuation.bracket + +"=" @operator + +"|" @punctuation.delimiter +"&" @punctuation.delimiter +":" @punctuation.delimiter + +"..." @punctuation.special +"!" @punctuation.special diff --git a/helix-22.03-x86_64-windows/runtime/queries/haskell/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/haskell/highlights.scm new file mode 100644 index 0000000..5009f3b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/haskell/highlights.scm @@ -0,0 +1,125 @@ +;; ---------------------------------------------------------------------------- +;; Literals and comments + +(integer) @constant.numeric.integer +(exp_negation) @constant.numeric.integer +(exp_literal (float)) @constant.numeric.float +(char) @constant.character +(string) @string + +(con_unit) @constant.builtin ; unit, as in () + +(comment) @comment + + +;; ---------------------------------------------------------------------------- +;; Punctuation + +[ +  "(" +  ")" +  "{" +  "}" +  "[" +  "]" +] @punctuation.bracket + +[ +  (comma) +  ";" +] @punctuation.delimiter + + +;; ---------------------------------------------------------------------------- +;; Keywords, operators, includes + +(pragma) @constant.macro + +[ +  "if" +  "then" +  "else" +  "case" +  "of" +] @keyword.control.conditional + +[ +  "import" +  "qualified" +  "module" +] @keyword.control.import + +[ +  (operator) +  (constructor_operator) +  (type_operator) +  (tycon_arrow) +  (qualified_module)  ; grabs the `.` (dot), ex: import System.IO +  (all_names) +  (wildcard) +  "=" +  "|" +  "::" +  "=>" +  "->" +  "<-" +  "\\" +  "`" +  "@" +] @operator + +(qualified_module (module) @constructor) +(qualified_type (module) @namespace) +(qualified_variable (module) @namespace) +(import (module) @namespace) + +[ +  (where) +  "let" +  "in" +  "class" +  "instance" +  "data" +  "newtype" +  "family" +  "type" +  "as" +  "hiding" +  "deriving" +  "via" +  "stock" +  "anyclass" +  "do" +  "mdo" +  "rec" +  "forall" +  "∀" +  "infix" +  "infixl" +  "infixr" +] @keyword + + +;; ---------------------------------------------------------------------------- +;; Functions and variables + +(signature name: (variable) @type) +(function name: (variable) @function) + +(variable) @variable +"_" @variable.builtin + +(exp_infix (variable) @operator)  ; consider infix functions as operators + +("@" @namespace)  ; "as" pattern operator, e.g. x@Constructor + + +;; ---------------------------------------------------------------------------- +;; Types + +(type) @type + +(constructor) @constructor + +; True or False +((constructor) @_bool (#match? @_bool "(True|False)")) @constant.builtin.boolean diff --git a/helix-22.03-x86_64-windows/runtime/queries/haskell/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/haskell/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/haskell/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/haskell/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/haskell/locals.scm new file mode 100644 index 0000000..ad67fe4 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/haskell/locals.scm @@ -0,0 +1,4 @@ +(signature name: (variable)) @local.definition +(function name: (variable)) @local.definition +(pat_name (variable)) @local.definition +(exp_name (variable)) @local.reference diff --git a/helix-22.03-x86_64-windows/runtime/queries/hcl/folds.scm b/helix-22.03-x86_64-windows/runtime/queries/hcl/folds.scm new file mode 100644 index 0000000..cb20b2a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/hcl/folds.scm @@ -0,0 +1,6 @@ +[ + (comment) + (block) + (heredoc_template) + (object) +] @fold diff --git a/helix-22.03-x86_64-windows/runtime/queries/hcl/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/hcl/highlights.scm new file mode 100644 index 0000000..03b3e52 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/hcl/highlights.scm @@ -0,0 +1,100 @@ +(ERROR) @error + +; { key: val } + +(object_elem val: (expression +  (variable_expr +      (identifier) @type.builtin (#match? @type.builtin "^(bool|string|number|object|tuple|list|map|set|any)$")))) + +(get_attr (identifier) @variable.builtin (#match? @variable.builtin  "^(root|cwd|module)$")) +(variable_expr (identifier) @variable.builtin (#match? @variable.builtin "^(var|local|path)$")) +((identifier) @type.builtin (#match? @type.builtin "^(bool|string|number|object|tuple|list|map|set|any)$")) +((identifier) @keyword (#match? @keyword "^(module|root|cwd|resource|variable|data|locals|terraform|provider|output)$")) + +; highlight identifier keys as though they were block attributes +(object_elem key: (expression (variable_expr (identifier) @variable.other.member))) + +(attribute (identifier) @variable.other.member) +(function_call (identifier) @function.method) +(block (identifier) @type.builtin) + +(identifier) @variable +(comment) @comment +(null_lit) @constant.builtin +(numeric_lit) @constant.number +(bool_lit) @constant.builtin.boolean + +[ +  (template_interpolation_start) ; ${ +  (template_interpolation_end) ; } +  (template_directive_start) ; %{ +  (template_directive_end) ; } +  (strip_marker) ; ~ +] @punctuation.special + +[ +  (heredoc_identifier) ; <<END +  (heredoc_start) ; END +] @punctuation.delimiter + +[ +  (quoted_template_start) ; " +  (quoted_template_end); " +  (template_literal) ; non-interpolation/directive content +] @string + +[  +  "if" +  "else" +  "endif" +] @keyword.control.conditional + +[ +  "for" +  "endfor" +  "in" +] @keyword.control.repeat + +[ +  ":" +  "=" +] @none + +[ +  (ellipsis) +  "\?" +  "=>" +] @punctuation.special + +[ +  "." +  ".*" +  "," +  "[*]" +] @punctuation.delimiter + +[ +  "{" +  "}" +  "[" +  "]" +  "(" +  ")" +] @punctuation.bracket + +[ +  "!" +  "\*" +  "/" +  "%" +  "\+" +  "-" +  ">" +  ">=" +  "<" +  "<=" +  "==" +  "!=" +  "&&" +  "||" +] @operator diff --git a/helix-22.03-x86_64-windows/runtime/queries/hcl/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/hcl/indents.toml new file mode 100644 index 0000000..b0d4a3f --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/hcl/indents.toml @@ -0,0 +1,13 @@ +indent = [ +  "object", +  "block", +  "tuple", +  "for_tuple_expr", +  "for_object_expr" +] + +outdent = [ +  "object_end", +  "block_end", +  "tuple_end" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/hcl/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/hcl/injections.scm new file mode 100644 index 0000000..fd69161 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/hcl/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content +	(#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/html/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/html/highlights.scm new file mode 100644 index 0000000..2c70a9c --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/html/highlights.scm @@ -0,0 +1,12 @@ +(tag_name) @tag +(erroneous_end_tag_name) @tag.error +(doctype) @constant +(attribute_name) @attribute +(attribute_value) @string +(comment) @comment + +[ +  "<" +  ">" +  "</" +] @punctuation.bracket diff --git a/helix-22.03-x86_64-windows/runtime/queries/html/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/html/injections.scm new file mode 100644 index 0000000..ef58f41 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/html/injections.scm @@ -0,0 +1,10 @@ +((comment) @injection.content + (#set! injection.language "comment")) + +((script_element +  (raw_text) @injection.content) + (#set! injection.language "javascript")) + +((style_element +  (raw_text) @injection.content) + (#set! injection.language "css")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/iex/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/iex/highlights.scm new file mode 100644 index 0000000..2847fbf --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/iex/highlights.scm @@ -0,0 +1 @@ +(prompt) @comment diff --git a/helix-22.03-x86_64-windows/runtime/queries/iex/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/iex/injections.scm new file mode 100644 index 0000000..48863d9 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/iex/injections.scm @@ -0,0 +1,6 @@ +((evaluation_block (prompt_line (expression) @injection.content)) + (#set! injection.language "elixir") + (#set! injection.combined)) + +((result) @injection.content + (#set! injection.language "elixir")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/java/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/java/highlights.scm new file mode 100644 index 0000000..77902fc --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/java/highlights.scm @@ -0,0 +1,130 @@ +; Methods + +(method_declaration +  name: (identifier) @function.method) +(method_invocation +  name: (identifier) @function.method) +(super) @function.builtin + +; Annotations + +(annotation +  name: (identifier) @attribute) +(marker_annotation +  name: (identifier) @attribute) + +"@" @operator + +; Types + +(interface_declaration +  name: (identifier) @type) +(class_declaration +  name: (identifier) @type) +(enum_declaration +  name: (identifier) @type) + +((field_access +  object: (identifier) @type) + (#match? @type "^[A-Z]")) +((scoped_identifier +  scope: (identifier) @type) + (#match? @type "^[A-Z]")) + +(constructor_declaration +  name: (identifier) @type) + +(type_identifier) @type + +[ +  (boolean_type) +  (integral_type) +  (floating_point_type) +  (floating_point_type) +  (void_type) +] @type.builtin + +; Variables + +((identifier) @constant + (#match? @constant "^_*[A-Z][A-Z\\d_]+$")) + +(identifier) @variable + +(this) @variable.builtin + +; Literals + +[ +  (hex_integer_literal) +  (decimal_integer_literal) +  (octal_integer_literal) +] @constant.numeric.integer + +[ +  (decimal_floating_point_literal) +  (hex_floating_point_literal) +] @constant.numeric.float + +(character_literal) @constant.character +(string_literal) @string + +[ +  (true) +  (false) +  (null_literal) +] @constant.builtin + +(comment) @comment + +; Keywords + +[ +  "abstract" +  "assert" +  "break" +  "case" +  "catch" +  "class" +  "continue" +  "default" +  "do" +  "else" +  "enum" +  "exports" +  "extends" +  "final" +  "finally" +  "for" +  "if" +  "implements" +  "import" +  "instanceof" +  "interface" +  "module" +  "native" +  "new" +  "open" +  "opens" +  "package" +  "private" +  "protected" +  "provides" +  "public" +  "requires" +  "return" +  "static" +  "strictfp" +  "switch" +  "synchronized" +  "throw" +  "throws" +  "to" +  "transient" +  "transitive" +  "try" +  "uses" +  "volatile" +  "while" +  "with" +] @keyword diff --git a/helix-22.03-x86_64-windows/runtime/queries/java/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/java/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/java/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights-jsx.scm b/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights-jsx.scm new file mode 100644 index 0000000..751da08 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights-jsx.scm @@ -0,0 +1,4 @@ +(jsx_opening_element (identifier) @tag) +(jsx_closing_element (identifier) @tag) +(jsx_self_closing_element (identifier) @tag) +(jsx_attribute (property_identifier) @attribute) diff --git a/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights-params.scm b/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights-params.scm new file mode 100644 index 0000000..95ffc72 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights-params.scm @@ -0,0 +1,12 @@ +(formal_parameters +  [ +    (identifier) @variable.parameter +    (array_pattern +      (identifier) @variable.parameter) +    (object_pattern +      [ +        (pair_pattern value: (identifier) @variable.parameter) +        (shorthand_property_identifier_pattern) @variable.parameter +      ]) +  ] +) diff --git a/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights.scm new file mode 100644 index 0000000..6163b68 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/javascript/highlights.scm @@ -0,0 +1,205 @@ +; Special identifiers +;-------------------- + +([ +    (identifier) +    (shorthand_property_identifier) +    (shorthand_property_identifier_pattern) + ] @constant + (#match? @constant "^[A-Z_][A-Z\\d_]+$")) + + +((identifier) @constructor + (#match? @constructor "^[A-Z]")) + +((identifier) @variable.builtin + (#match? @variable.builtin "^(arguments|module|console|window|document)$") + (#is-not? local)) + +((identifier) @function.builtin + (#eq? @function.builtin "require") + (#is-not? local)) + +; Function and method definitions +;-------------------------------- + +(function +  name: (identifier) @function) +(function_declaration +  name: (identifier) @function) +(method_definition +  name: (property_identifier) @function.method) + +(pair +  key: (property_identifier) @function.method +  value: [(function) (arrow_function)]) + +(assignment_expression +  left: (member_expression +    property: (property_identifier) @function.method) +  right: [(function) (arrow_function)]) + +(variable_declarator +  name: (identifier) @function +  value: [(function) (arrow_function)]) + +(assignment_expression +  left: (identifier) @function +  right: [(function) (arrow_function)]) + +; Function and method calls +;-------------------------- + +(call_expression +  function: (identifier) @function) + +(call_expression +  function: (member_expression +    property: (property_identifier) @function.method)) + +; Variables +;---------- + +(identifier) @variable + +; Properties +;----------- + +(property_identifier) @variable.other.member + +; Literals +;--------- + +(this) @variable.builtin +(super) @variable.builtin + +[ +  (true) +  (false) +  (null) +  (undefined) +] @constant.builtin + +(comment) @comment + +[ +  (string) +  (template_string) +] @string + +(regex) @string.regexp +(number) @constant.numeric.integer + +; Tokens +;------- + +(template_substitution +  "${" @punctuation.special +  "}" @punctuation.special) @embedded + +[ +  ";" +  "?." +  "." +  "," +] @punctuation.delimiter + +[ +  "-" +  "--" +  "-=" +  "+" +  "++" +  "+=" +  "*" +  "*=" +  "**" +  "**=" +  "/" +  "/=" +  "%" +  "%=" +  "<" +  "<=" +  "<<" +  "<<=" +  "=" +  "==" +  "===" +  "!" +  "!=" +  "!==" +  "=>" +  ">" +  ">=" +  ">>" +  ">>=" +  ">>>" +  ">>>=" +  "~" +  "^" +  "&" +  "|" +  "^=" +  "&=" +  "|=" +  "&&" +  "||" +  "??" +  "&&=" +  "||=" +  "??=" +] @operator + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +]  @punctuation.bracket + +[ +  "as" +  "async" +  "await" +  "break" +  "case" +  "catch" +  "class" +  "const" +  "continue" +  "debugger" +  "default" +  "delete" +  "do" +  "else" +  "export" +  "extends" +  "finally" +  "for" +  "from" +  "function" +  "get" +  "if" +  "import" +  "in" +  "instanceof" +  "let" +  "new" +  "of" +  "return" +  "set" +  "static" +  "switch" +  "target" +  "throw" +  "try" +  "typeof" +  "var" +  "void" +  "while" +  "with" +  "yield" +] @keyword diff --git a/helix-22.03-x86_64-windows/runtime/queries/javascript/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/javascript/indents.toml new file mode 100644 index 0000000..9d711ab --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/javascript/indents.toml @@ -0,0 +1,28 @@ +indent = [ + "array", + "object", + "arguments", + "formal_parameters", + + "statement_block", + "object_pattern", + "class_body", + "named_imports", + + "binary_expression", + "return_statement", + "template_substitution", + # (expression_statement (call_expression)) + "export_clause", + + # typescript + "enum_declaration", + "interface_declaration", + "object_type", +] + +outdent = [ + "}", + "]", + ")" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/javascript/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/javascript/injections.scm new file mode 100644 index 0000000..e842911 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/javascript/injections.scm @@ -0,0 +1,28 @@ +; Parse the contents of tagged template literals using +; a language inferred from the tag. + +(call_expression +  function: [ +    (identifier) @injection.language +    (member_expression +      property: (property_identifier) @injection.language) +  ] +  arguments: (template_string) @injection.content) + +; Parse the contents of gql template literals + +((call_expression +   function: (identifier) @_template_function_name +   arguments: (template_string) @injection.content) + (#eq? @_template_function_name "gql") + (#set! injection.language "graphql")) + +; Parse regex syntax within regex literals + +((regex_pattern) @injection.content + (#set! injection.language "regex")) + + ; Parse JSDoc annotations in comments + +((comment) @injection.content + (#set! injection.language "jsdoc")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/javascript/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/javascript/locals.scm new file mode 100644 index 0000000..5d680ac --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/javascript/locals.scm @@ -0,0 +1,23 @@ +; Scopes +;------- + +[ +  (statement_block) +  (function) +  (arrow_function) +  (function_declaration) +  (method_definition) +] @local.scope + +; Definitions +;------------ + +(pattern/identifier)@local.definition + +(variable_declarator +  name: (identifier) @local.definition) + +; References +;------------ + +(identifier) @local.reference diff --git a/helix-22.03-x86_64-windows/runtime/queries/javascript/tags.scm b/helix-22.03-x86_64-windows/runtime/queries/javascript/tags.scm new file mode 100644 index 0000000..a7bbd31 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/javascript/tags.scm @@ -0,0 +1,88 @@ +( +  (comment)* @doc +  . +  (method_definition +    name: (property_identifier) @name) @definition.method +  (#not-eq? @name "constructor") +  (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") +  (#select-adjacent! @doc @definition.method) +) + +( +  (comment)* @doc +  . +  [ +    (class +      name: (_) @name) +    (class_declaration +      name: (_) @name) +  ] @definition.class +  (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") +  (#select-adjacent! @doc @definition.class) +) + +( +  (comment)* @doc +  . +  [ +    (function +      name: (identifier) @name) +    (function_declaration +      name: (identifier) @name) +    (generator_function +      name: (identifier) @name) +    (generator_function_declaration +      name: (identifier) @name) +  ] @definition.function +  (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") +  (#select-adjacent! @doc @definition.function) +) + +( +  (comment)* @doc +  . +  (lexical_declaration +    (variable_declarator +      name: (identifier) @name +      value: [(arrow_function) (function)]) @definition.function) +  (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") +  (#select-adjacent! @doc @definition.function) +) + +( +  (comment)* @doc +  . +  (variable_declaration +    (variable_declarator +      name: (identifier) @name +      value: [(arrow_function) (function)]) @definition.function) +  (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") +  (#select-adjacent! @doc @definition.function) +) + +(assignment_expression +  left: [ +    (identifier) @name +    (member_expression +      property: (property_identifier) @name) +  ] +  right: [(arrow_function) (function)] +) @definition.function + +(pair +  key: (property_identifier) @name +  value: [(arrow_function) (function)]) @definition.function + +( +  (call_expression +    function: (identifier) @name) @reference.call +  (#not-match? @name "^(require)$") +) + +(call_expression +  function: (member_expression +    property: (property_identifier) @name) +  arguments: (_) @reference.call) + +(new_expression +  constructor: (_) @name) @reference.class diff --git a/helix-22.03-x86_64-windows/runtime/queries/json/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/json/highlights.scm new file mode 100644 index 0000000..6df6c9e --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/json/highlights.scm @@ -0,0 +1,20 @@ +[ +  (true) +  (false) +] @constant.builtin.boolean +(null) @constant.builtin +(number) @constant.numeric +(pair +  key: (_) @keyword) + +(string) @string +(escape_sequence) @constant.character.escape +(ERROR) @error + +"," @punctuation.delimiter +[ +  "[" +  "]" +  "{" +  "}" +] @punctuation.bracket diff --git a/helix-22.03-x86_64-windows/runtime/queries/json/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/json/indents.toml new file mode 100644 index 0000000..64a8d17 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/json/indents.toml @@ -0,0 +1,9 @@ +indent = [ +  "object", +  "array" +] + +outdent = [ +  "]", +  "}" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/julia/folds.scm b/helix-22.03-x86_64-windows/runtime/queries/julia/folds.scm new file mode 100644 index 0000000..91eede5 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/julia/folds.scm @@ -0,0 +1,11 @@ +[ + (module_definition) + (struct_definition) + (macro_definition) + (function_definition) + (compound_expression) ; begin blocks + (let_statement) + (if_statement) + (for_statement) + (while_statement) +] @fold diff --git a/helix-22.03-x86_64-windows/runtime/queries/julia/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/julia/highlights.scm new file mode 100644 index 0000000..7c44798 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/julia/highlights.scm @@ -0,0 +1,184 @@ + +[ +  (triple_string) +  (string) +] @string + +(string +  prefix: (identifier) @constant.builtin) + +(macro_identifier) @function.macro +(macro_identifier (identifier) @function.macro) ; for any one using the variable highlight +(macro_definition +  name: (identifier) @function.macro +  ["macro" "end" @keyword]) + +(field_expression +  (identifier) +  (identifier) @variable.other.member .) + +(function_definition +  name: (identifier) @function) +(call_expression +  (identifier) @function) +(call_expression +  (field_expression (identifier) @function.method .)) +(broadcast_call_expression +  (identifier) @function) +(broadcast_call_expression +  (field_expression (identifier) @function.method .)) +(parameter_list +  (identifier) @variable.parameter) +(parameter_list +  (optional_parameter . +    (identifier) @variable.parameter)) +(typed_parameter +  (identifier) @variable.parameter +  (identifier) @type) +(type_parameter_list +  (identifier) @type) +(typed_parameter +  (identifier) @variable.parameter +  (parameterized_identifier) @type) +(function_expression +  . (identifier) @variable.parameter) +(spread_parameter) @variable.parameter +(spread_parameter +  (identifier) @variable.parameter) +(named_argument +    . (identifier) @variable.parameter) +(argument_list +  (typed_expression +    (identifier) @variable.parameter +    (identifier) @type)) +(argument_list +  (typed_expression +    (identifier) @variable.parameter +    (parameterized_identifier) @type)) + +;; Symbol expressions (:my-wanna-be-lisp-keyword) +(quote_expression + (identifier)) @string.special.symbol + +;; Parsing error! foo (::Type) get's parsed as two quote expressions +(argument_list  +  (quote_expression +    (quote_expression +      (identifier) @type))) + +(type_argument_list +  (identifier) @type) +(parameterized_identifier (_)) @type +(argument_list +  (typed_expression . (identifier) @variable.parameter)) + +(typed_expression +  (identifier) @type .) +(typed_expression +  (parameterized_identifier) @type .) + +(struct_definition +  name: (identifier) @type) + +(number) @constant.numeric.integer +(range_expression +    (identifier) @constant.numeric.integer +      (eq? @constant.numeric.integer "end")) +(range_expression +  (_ +    (identifier) @constant.numeric.integer +      (eq? @constant.numeric.integer "end"))) +(coefficient_expression +  (number) +  (identifier) @constant.builtin) + +;; TODO: operators. +;; Those are a bit difficult to implement since the respective nodes are hidden right now (_power_operator) +;; and heavily use Unicode chars (support for those are bad in vim/lua regexes) +;[; +    ;(power_operator); +    ;(times_operator); +    ;(plus_operator); +    ;(arrow_operator); +    ;(comparison_operator); +    ;(assign_operator); +;] @operator ; + +"end" @keyword + +(if_statement +  ["if" "end"] @keyword.control.conditional) +(elseif_clause +  ["elseif"] @keyword.control.conditional) +(else_clause +  ["else"] @keyword.control.conditional) +(ternary_expression +  ["?" ":"] @keyword.control.conditional) + +(function_definition ["function" "end"] @keyword.function) + +(comment) @comment + +[ +  "const" +  "return" +  "macro" +  "struct" +  "primitive" +  "type" +] @keyword + +((identifier) @keyword (match? @keyword "global|local")) + +(compound_expression +  ["begin" "end"] @keyword) +(try_statement +  ["try" "end" ] @keyword.control.exception) +(finally_clause +  "finally" @keyword.control.exception) +(catch_clause +  "catch" @keyword.control.exception) +(quote_statement +  ["quote" "end"] @keyword) +(let_statement +  ["let" "end"] @keyword) +(for_statement +  ["for" "end"] @keyword.control.repeat) +(while_statement +  ["while" "end"] @keyword.control.repeat) +(break_statement) @keyword.control.repeat +(continue_statement) @keyword.control.repeat +(for_binding +  "in" @keyword.control.repeat) +(for_clause +  "for" @keyword.control.repeat) +(do_clause +  ["do" "end"] @keyword) + +(export_statement +  ["export"] @keyword.control.import) + +[ +  "using" +  "module" +  "import" +] @keyword.control.import + +((identifier) @keyword.control.import (#eq? @keyword.control.import "baremodule")) + +(((identifier) @constant.builtin) (match? @constant.builtin "^(nothing|Inf|NaN)$")) +(((identifier) @constant.builtin.boolean) (#eq? @constant.builtin.boolean "true")) +(((identifier) @constant.builtin.boolean) (#eq? @constant.builtin.boolean "false")) + + +["::" ":" "." "," "..." "!"] @punctuation.delimiter +["[" "]" "(" ")" "{" "}"] @punctuation.bracket + +["="] @operator + +(identifier) @variable +;; In case you want type highlighting based on Julia naming conventions (this might collide with mathematical notation) +;((identifier) @type ; exception: mark `A_foo` sort of identifiers as variables +  ;(match? @type "^[A-Z][^_]")) +((identifier) @constant +  (match? @constant "^[A-Z][A-Z_]{2}[A-Z_]*$")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/julia/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/julia/injections.scm new file mode 100644 index 0000000..1c1e804 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/julia/injections.scm @@ -0,0 +1,5 @@ +((triple_string) @injection.content + (#set! injection.language "markdown")) + +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/julia/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/julia/locals.scm new file mode 100644 index 0000000..d5ac794 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/julia/locals.scm @@ -0,0 +1,59 @@ + +(import_statement + (identifier) @definition.import) +(variable_declaration + (identifier) @local.definition) +(variable_declaration + (tuple_expression +  (identifier) @local.definition)) +(for_binding + (identifier) @local.definition) +(for_binding + (tuple_expression +  (identifier) @local.definition)) + +(assignment_expression + (tuple_expression +  (identifier) @local.definition)) +(assignment_expression + (bare_tuple_expression +  (identifier) @local.definition)) +(assignment_expression + (identifier) @local.definition) + +(type_parameter_list +  (identifier) @definition.type) +(type_argument_list +  (identifier) @definition.type) +(struct_definition +  name: (identifier) @definition.type) + +(parameter_list + (identifier) @definition.parameter) +(typed_parameter + (identifier) @definition.parameter + (identifier)) +(function_expression + . (identifier) @definition.parameter) +(argument_list + (typed_expression +  (identifier) @definition.parameter +  (identifier))) +(spread_parameter + (identifier) @definition.parameter) + +(function_definition + name: (identifier) @definition.function) @local.scope +(macro_definition  + name: (identifier) @definition.macro) @local.scope + +(identifier) @local.reference + +[ +  (try_statement) +  (finally_clause) +  (quote_statement) +  (let_statement) +  (compound_expression) +  (for_statement) +] @local.scope diff --git a/helix-22.03-x86_64-windows/runtime/queries/kotlin/folds.scm b/helix-22.03-x86_64-windows/runtime/queries/kotlin/folds.scm new file mode 100644 index 0000000..768972b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/kotlin/folds.scm @@ -0,0 +1,17 @@ +[ +	(import_list) + +	(when_expression) +	(control_structure_body) + +	(lambda_literal) +	(function_body) +	(primary_constructor) +	(secondary_constructor) +	(anonymous_initializer) + +	(class_body) +	(enum_class_body) + +	(interpolated_expression) +] @fold diff --git a/helix-22.03-x86_64-windows/runtime/queries/kotlin/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/kotlin/highlights.scm new file mode 100644 index 0000000..7b90fcf --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/kotlin/highlights.scm @@ -0,0 +1,295 @@ +;;; Operators & Punctuation + +(multi_line_string_literal +	"$" @punctuation +  (interpolated_identifier) @none) +(multi_line_string_literal +	"${" @punctuation +	(interpolated_expression) @none +	"}" @punctuation.) + +; NOTE: `interpolated_identifier`s can be highlighted in any way +(line_string_literal +	"$" @punctuation +	(interpolated_identifier) @none) +(line_string_literal +	"${" @punctuation +	(interpolated_expression) @none +	"}" @punctuation) + +[ +	"." +	"," +	";" +	":" +	"::" +] @punctuation.delimiter + +[ +	"(" ")" +	"[" "]" +	"{" "}" +] @punctuation.bracket + +[ +	"!" +	"!=" +	"!==" +	"=" +	"==" +	"===" +	">" +	">=" +	"<" +	"<=" +	"||" +	"&&" +	"+" +	"++" +	"+=" +	"-" +	"--" +	"-=" +	"*" +	"*=" +	"/" +	"/=" +	"%" +	"%=" +	"?." +	"?:" +	"!!" +	"is" +	"!is" +	"in" +	"!in" +	"as" +	"as?" +	".." +	"->" +] @operator + +;;; Keywords + +(type_alias "typealias" @keyword) +[ +	(class_modifier) +	(member_modifier) +	(function_modifier) +	(property_modifier) +	(platform_modifier) +	(variance_modifier) +	(parameter_modifier) +	(visibility_modifier) +	(reification_modifier) +	(inheritance_modifier) +]@keyword + +[ +	"val" +	"var" +	"enum" +	"class" +	"object" +	"interface" +;	"typeof" ; NOTE: It is reserved for future use +] @keyword + +("fun") @keyword.function + +(jump_expression) @keyword.control.return + +[ +	"if" +	"else" +	"when" +] @keyword.control.conditional + +[ +	"for" +	"do" +	"while" +] @keyword.control.repeat + +[ +	"try" +	"catch" +	"throw" +	"finally" +] @keyword.control.exception + +(annotation +	"@" @attribute (use_site_target)? @attribute) +(annotation +	(user_type +		(type_identifier) @attribute)) +(annotation +	(constructor_invocation +		(user_type +			(type_identifier) @attribute))) + +(file_annotation +	"@" @attribute "file" @attribute ":" @attribute) +(file_annotation +	(user_type +		(type_identifier) @attribute)) +(file_annotation +	(constructor_invocation +		(user_type +			(type_identifier) @attribute))) + +;;; Literals +; NOTE: Escapes not allowed in multi-line strings +(line_string_literal (character_escape_seq) @constant.character.escape) + +[ +	(line_string_literal) +	(multi_line_string_literal) +] @string + +(character_literal) @constant.character + +[ +	"null" ; should be highlighted the same as booleans +	(boolean_literal) +] @constant.builtin.boolean + +(real_literal) @constant.numeric.float +[ +	(integer_literal) +	(long_literal) +	(hex_literal) +	(bin_literal) +	(unsigned_literal) +] @constant.numeric.integer + +[ +	(comment) +	(shebang_line) +] @comment + +;;; Function calls + +(call_expression +	. (simple_identifier) @function.builtin +    (#match? @function.builtin "^(arrayOf|arrayOfNulls|byteArrayOf|shortArrayOf|intArrayOf|longArrayOf|ubyteArrayOf|ushortArrayOf|uintArrayOf|ulongArrayOf|floatArrayOf|doubleArrayOf|booleanArrayOf|charArrayOf|emptyArray|mapOf|setOf|listOf|emptyMap|emptySet|emptyList|mutableMapOf|mutableSetOf|mutableListOf|print|println|error|TODO|run|runCatching|repeat|lazy|lazyOf|enumValues|enumValueOf|assert|check|checkNotNull|require|requireNotNull|with|suspend|synchronized)$")) + +; object.function() or object.property.function() +(call_expression +	(navigation_expression +		(navigation_suffix +			(simple_identifier) @function) . )) + +; function() +(call_expression +	. (simple_identifier) @function) + +;;; Function definitions + +; lambda parameters +(lambda_literal +	(lambda_parameters +		(variable_declaration +			(simple_identifier) @variable.parameter))) +			 +(parameter_with_optional_type +	(simple_identifier) @variable.parameter) +			 +(parameter +	(simple_identifier) @variable.parameter) +			 +(anonymous_initializer +	("init") @constructor) + +(constructor_invocation +	(user_type +		(type_identifier) @constructor)) +			 +(secondary_constructor +	("constructor") @constructor) +(primary_constructor) @constructor +			 +(getter +	("get") @function.builtin) +(setter +	("set") @function.builtin) + +(function_declaration +	. (simple_identifier) @function) + +; TODO: Seperate labeled returns/breaks/continue/super/this +;       Must be implemented in the parser first +(label) @label + +(import_header +	(identifier +		(simple_identifier) @function @_import .) +	(import_alias +		(type_identifier) @function)? +		(#match? @_import "^[a-z]")) + +; The last `simple_identifier` in a `import_header` will always either be a function +; or a type. Classes can appear anywhere in the import path, unlike functions +(import_header +	(identifier +		(simple_identifier) @type @_import) +	(import_alias +		(type_identifier) @type)? +		(#match? @_import "^[A-Z]")) + +(import_header +	"import" @keyword.control.import) + +(package_header +	. (identifier)) @namespace + +((type_identifier) @type.builtin +	(#match? @function.builtin "^(Byte|Short|Int|Long|UByte|UShort|UInt|ULong|Float|Double|Boolean|Char|String|Array|ByteArray|ShortArray|IntArray|LongArray|UByteArray|UShortArray|UIntArray|ULongArray|FloatArray|DoubleArray|BooleanArray|CharArray|Map|Set|List|EmptyMap|EmptySet|EmptyList|MutableMap|MutableSet|MutableList)$")) + +(type_identifier) @type + +(enum_entry +	(simple_identifier) @constant) + +(_ +	(navigation_suffix +		(simple_identifier) @constant +		(#match? @constant "^[A-Z][A-Z0-9_]*$"))) + +; SCREAMING CASE identifiers are assumed to be constants +((simple_identifier) @constant +(#match? @constant "^[A-Z][A-Z0-9_]*$")) + +; id_1.id_2.id_3: `id_2` and `id_3` are assumed as object properties +(_ +	(navigation_suffix +		(simple_identifier) @variable.other.member)) + +(class_body +	(property_declaration +		(variable_declaration +			(simple_identifier) @variable.other.member))) + +(class_parameter +	(simple_identifier) @variable.other.member) + +; `super` keyword inside classes +(super_expression) @variable.builtin + +; `this` this keyword inside classes +(this_expression) @variable.builtin + +;;; Identifiers +; `field` keyword inside property getter/setter +; FIXME: This will highlight the keyword outside of getters and setters +;        since tree-sitter does not allow us to check for arbitrary nestation +((simple_identifier) @variable.builtin +(#eq? @variable.builtin "field")) + +; `it` keyword inside lambdas +; FIXME: This will highlight the keyword outside of lambdas since tree-sitter +;        does not allow us to check for arbitrary nestation +((simple_identifier) @variable.builtin +(#eq? @variable.builtin "it")) + +(simple_identifier) @variable diff --git a/helix-22.03-x86_64-windows/runtime/queries/kotlin/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/kotlin/injections.scm new file mode 100644 index 0000000..abdc205 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/kotlin/injections.scm @@ -0,0 +1,36 @@ +((comment) @injection.content +	(#set! injection.language "comment")) + +; There are 3 ways to define a regex +;    - "[abc]?".toRegex() +((call_expression +	(navigation_expression +		([(line_string_literal) (multi_line_string_literal)] @injection.content) +		(navigation_suffix +			((simple_identifier) @_function +			(#eq? @_function "toRegex"))))) +	(#set! injection.language "regex")) + +;    - Regex("[abc]?") +((call_expression +	((simple_identifier) @_function +	(#eq? @_function "Regex")) +	(call_suffix +		(value_arguments +			(value_argument +				[ (line_string_literal) (multi_line_string_literal) ] @injection.content)))) +	(#set! injection.language "regex")) + +;    - Regex.fromLiteral("[abc]?") +((call_expression +	(navigation_expression +		((simple_identifier) @_class +		(#eq? @_class "Regex")) +		(navigation_suffix +			((simple_identifier) @_function +			(#eq? @_function "fromLiteral")))) +	(call_suffix +		(value_arguments +			(value_argument +				[ (line_string_literal) (multi_line_string_literal) ] @injection.content)))) +	(#set! injection.language "regex")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/latex/folds.scm b/helix-22.03-x86_64-windows/runtime/queries/latex/folds.scm new file mode 100644 index 0000000..fb5c717 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/latex/folds.scm @@ -0,0 +1,12 @@ +[ +  (chapter) +  (part) +  (section) +  (subsection) +  (subsubsection) +  (paragraph) +  (subparagraph) + +  (environment) +  (displayed_equation) +] @fold diff --git a/helix-22.03-x86_64-windows/runtime/queries/latex/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/latex/highlights.scm new file mode 100644 index 0000000..0a030b3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/latex/highlights.scm @@ -0,0 +1,410 @@ +;; Math +[ + (displayed_equation) + (inline_formula) +] @text.math + +;; This highlights the whole environment like vimtex does +((environment +  (begin +   name: (word) @_env)) @text.math +   (#any-of? @_env +      "displaymath" "displaymath*" +      "equation" "equation*" +      "multline" "multline*" +      "eqnarray" "eqnarray*" +      "align" "align*" +      "array" "array*" +      "split" "split*" +      "alignat" "alignat*" +      "gather" "gather*" +      "flalign" "flalign*")) + +[ +  (generic_command_name) +  "\\newcommand" +  "\\renewcommand" +  "\\DeclareRobustCommand" +  "\\DeclareMathOperator" +  "\\newglossaryentry" +  "\\caption" +  "\\label" +  "\\newlabel" +  "\\color" +  "\\colorbox" +  "\\textcolor" +  "\\pagecolor" +  "\\definecolor" +  "\\definecolorset" +  "\\newtheorem" +  "\\declaretheorem" +  "\\newacronym" +] @function.macro + +[ +    "\\ref" +    "\\vref" +    "\\Vref" +    "\\autoref" +    "\\pageref" +    "\\cref" +    "\\Cref" +    "\\cref*" +    "\\Cref*" +    "\\namecref" +    "\\nameCref" +    "\\lcnamecref" +    "\\namecrefs" +    "\\nameCrefs" +    "\\lcnamecrefs" +    "\\labelcref" +    "\\labelcpageref" +    "\\crefrange" +    "\\crefrange" +    "\\Crefrange" +    "\\Crefrange" +    "\\crefrange*" +    "\\crefrange*" +    "\\Crefrange*" +    "\\Crefrange*" +] @function.macro + +[ +    "\\cite" +    "\\cite*" +    "\\Cite" +    "\\nocite" +    "\\citet" +    "\\citep" +    "\\citet*" +    "\\citep*" +    "\\citeauthor" +    "\\citeauthor*" +    "\\Citeauthor" +    "\\Citeauthor*" +    "\\citetitle" +    "\\citetitle*" +    "\\citeyear" +    "\\citeyear*" +    "\\citedate" +    "\\citedate*" +    "\\citeurl" +    "\\fullcite" +    "\\citeyearpar" +    "\\citealt" +    "\\citealp" +    "\\citetext" +    "\\parencite" +    "\\parencite*" +    "\\Parencite" +    "\\footcite" +    "\\footfullcite" +    "\\footcitetext" +    "\\textcite" +    "\\Textcite" +    "\\smartcite" +    "\\Smartcite" +    "\\supercite" +    "\\autocite" +    "\\Autocite" +    "\\autocite*" +    "\\Autocite*" +    "\\volcite" +    "\\Volcite" +    "\\pvolcite" +    "\\Pvolcite" +    "\\fvolcite" +    "\\ftvolcite" +    "\\svolcite" +    "\\Svolcite" +    "\\tvolcite" +    "\\Tvolcite" +    "\\avolcite" +    "\\Avolcite" +    "\\notecite" +    "\\notecite" +    "\\pnotecite" +    "\\Pnotecite" +    "\\fnotecite" +] @function.macro + +[ +    "\\ref" +    "\\vref" +    "\\Vref" +    "\\autoref" +    "\\pageref" +    "\\cref" +    "\\Cref" +    "\\cref*" +    "\\Cref*" +    "\\namecref" +    "\\nameCref" +    "\\lcnamecref" +    "\\namecrefs" +    "\\nameCrefs" +    "\\lcnamecrefs" +    "\\labelcref" +    "\\labelcpageref" +] @function.macro + + +[ +    "\\crefrange" +    "\\crefrange" +    "\\Crefrange" +    "\\Crefrange" +    "\\crefrange*" +    "\\crefrange*" +    "\\Crefrange*" +    "\\Crefrange*" +] @function.macro + + +[ +  "\\gls" +  "\\Gls" +  "\\GLS" +  "\\glspl" +  "\\Glspl" +  "\\GLSpl" +  "\\glsdisp" +  "\\glslink" +  "\\glstext" +  "\\Glstext" +  "\\GLStext" +  "\\glsfirst" +  "\\Glsfirst" +  "\\GLSfirst" +  "\\glsplural" +  "\\Glsplural" +  "\\GLSplural" +  "\\glsfirstplural" +  "\\Glsfirstplural" +  "\\GLSfirstplural" +  "\\glsname" +  "\\Glsname" +  "\\GLSname" +  "\\glssymbol" +  "\\Glssymbol" +  "\\glsdesc" +  "\\Glsdesc" +  "\\GLSdesc" +  "\\glsuseri" +  "\\Glsuseri" +  "\\GLSuseri" +  "\\glsuserii" +  "\\Glsuserii" +  "\\GLSuserii" +  "\\glsuseriii" +  "\\Glsuseriii" +  "\\GLSuseriii" +  "\\glsuseriv" +  "\\Glsuseriv" +  "\\GLSuseriv" +  "\\glsuserv" +  "\\Glsuserv" +  "\\GLSuserv" +  "\\glsuservi" +  "\\Glsuservi" +  "\\GLSuservi" +] @function.macro + + +[ +  "\\acrshort" +  "\\Acrshort" +  "\\ACRshort" +  "\\acrshortpl" +  "\\Acrshortpl" +  "\\ACRshortpl" +  "\\acrlong" +  "\\Acrlong" +  "\\ACRlong" +  "\\acrlongpl" +  "\\Acrlongpl" +  "\\ACRlongpl" +  "\\acrfull" +  "\\Acrfull" +  "\\ACRfull" +  "\\acrfullpl" +  "\\Acrfullpl" +  "\\ACRfullpl" +  "\\acs" +  "\\Acs" +  "\\acsp" +  "\\Acsp" +  "\\acl" +  "\\Acl" +  "\\aclp" +  "\\Aclp" +  "\\acf" +  "\\Acf" +  "\\acfp" +  "\\Acfp" +  "\\ac" +  "\\Ac" +  "\\acp" +  "\\glsentrylong" +  "\\Glsentrylong" +  "\\glsentrylongpl" +  "\\Glsentrylongpl" +  "\\glsentryshort" +  "\\Glsentryshort" +  "\\glsentryshortpl" +  "\\Glsentryshortpl" +  "\\glsentryfullpl" +  "\\Glsentryfullpl" +] @function.macro + +(comment) @comment + +(bracket_group) @variable.parameter + +[(math_operator) "="] @operator + +[ +  "\\usepackage" +  "\\documentclass" +  "\\input" +  "\\include" +  "\\subfile" +  "\\subfileinclude" +  "\\subfileinclude" +  "\\includegraphics" +  "\\addbibresource" +  "\\bibliography" +  "\\includesvg" +  "\\includeinkscape" +  "\\usepgflibrary" +  "\\usetikzlibrary" +] @keyword.control.import + +[ +  "\\part" +  "\\chapter" +  "\\section" +  "\\subsection" +  "\\subsubsection" +  "\\paragraph" +  "\\subparagraph" +] @type + +"\\item" @punctuation.special + +((word) @punctuation.delimiter +(#eq? @punctuation.delimiter "&")) + +["$" "\\[" "\\]" "\\(" "\\)"] @punctuation.delimiter + +(label_definition + name: (_) @text.reference) +(label_reference + label: (_) @text.reference) +(equation_label_reference + label: (_) @text.reference) +(label_reference + label: (_) @text.reference) +(label_number + label: (_) @text.reference) + +(citation + key: (word) @text.reference) + +(key_val_pair +  key: (_) @variable.parameter +  value: (_)) + +["[" "]" "{" "}"] @punctuation.bracket ;"(" ")" is has no special meaning in LaTeX + +(chapter +  text: (brace_group) @markup.heading) + +(part +  text: (brace_group) @markup.heading) + +(section +  text: (brace_group) @markup.heading) + +(subsection +  text: (brace_group) @markup.heading) + +(subsubsection +  text: (brace_group) @markup.heading) + +(paragraph +  text: (brace_group) @markup.heading) + +(subparagraph +  text: (brace_group) @markup.heading) + +((environment +  (begin +   name: (word) @_frame) +   (brace_group +        child: (text) @markup.heading)) + (#eq? @_frame "frame")) + +((generic_command +  name:(generic_command_name) @_name +  arg: (brace_group +          (text) @markup.heading)) + (#eq? @_name "\\frametitle")) + +;; Formatting + +((generic_command +  name:(generic_command_name) @_name +  arg: (_) @markup.italic) + (#eq? @_name "\\emph")) + +((generic_command +  name:(generic_command_name) @_name +  arg: (_) @markup.italic) + (#match? @_name "^(\\\\textit|\\\\mathit)$")) + +((generic_command +  name:(generic_command_name) @_name +  arg: (_) @markup.bold) + (#match? @_name "^(\\\\textbf|\\\\mathbf)$")) + +((generic_command +  name:(generic_command_name) @_name +  . +  arg: (_) @markup.link.url) + (#match? @_name "^(\\\\url|\\\\href)$")) + +(ERROR) @error + +[ +  "\\begin" +  "\\end" +] @text.environment + +(begin + name: (_) @text.environment.name +  (#not-any-of? @text.environment.name +      "displaymath" "displaymath*" +      "equation" "equation*" +      "multline" "multline*" +      "eqnarray" "eqnarray*" +      "align" "align*" +      "array" "array*" +      "split" "split*" +      "alignat" "alignat*" +      "gather" "gather*" +      "flalign" "flalign*")) + +(end + name: (_) @text.environment.name +  (#not-any-of? @text.environment.name +      "displaymath" "displaymath*" +      "equation" "equation*" +      "multline" "multline*" +      "eqnarray" "eqnarray*" +      "align" "align*" +      "array" "array*" +      "split" "split*" +      "alignat" "alignat*" +      "gather" "gather*" +      "flalign" "flalign*")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/latex/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/latex/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/latex/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/lean/folds.scm b/helix-22.03-x86_64-windows/runtime/queries/lean/folds.scm new file mode 100644 index 0000000..2c2bbb3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/lean/folds.scm @@ -0,0 +1,15 @@ +[ +  (namespace) +  (section) + +  (instance) +  (def) +  (theorem) +  (example) + +  (product) +  (array) +  (list) + +  (string) +] @fold diff --git a/helix-22.03-x86_64-windows/runtime/queries/lean/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/lean/highlights.scm new file mode 100644 index 0000000..a64feb1 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/lean/highlights.scm @@ -0,0 +1,217 @@ +(open +  namespace: (identifier) @namespace) +(namespace +  name: (identifier) @namespace) +(section +  name: (identifier) @namespace) + +;; Identifier naming conventions +((identifier) @type + (#match? @type "^[A-Z]")) + +(arrow) @type +(product) @type + +;; Declarations + +[ +  "abbrev" +  "def" +  "theorem" +  "constant" +  "instance" +  "axiom" +  "example" +  "inductive" +  "structure" +  "class" + +  "deriving" + +  "section" +  "namespace" +] @keyword + +(attributes +  (identifier) @function) + +(abbrev +  name: (identifier) @type) +(def +  name: (identifier) @function) +(theorem +  name: (identifier) @function) +(constant +  name: (identifier) @type) +(instance +  name: (identifier) @function) +(instance +  type: (identifier) @type) +(axiom +  name: (identifier) @function) +(structure +  name: (identifier) @type) +(structure +  extends: (identifier) @type) + +(where_decl +  type: (identifier) @type) + +(proj +  name: (identifier) @field) + +(binders +  type: (identifier) @type) + +["if" "then" "else"] @keyword.control.conditional + +["for" "in" "do"] @keyword.control.repeat + +(import) @include + +; Tokens + +[ +  "!" +  "$" +  "%" +  "&&" +  "*" +  "*>" +  "+" +  "++" +  "-" +  "/" +  "::" +  ":=" +  "<" +  "<$>" +  "<*" +  "<*>" +  "<=" +  "<|" +  "<|>" +  "=" +  "==" +  "=>" +  ">" +  ">" +  ">=" +  ">>" +  ">>=" +  "@" +  "^" +  "|>" +  "|>." +  "||" +  "←" +  "→" +  "↔" +  "∘" +  "∧" +  "∨" +  "≠" +  "≤" +  "≥" +] @operator + +[ +  "@&" +] @operator + +[ +  "attribute" +  "by" +  "end" +  "export" +  "extends" +  "fun" +  "let" +  "have" +  "match" +  "open" +  "return" +  "universe" +  "variable" +  "where" +  "with" +  "λ" +  (hash_command) +  (prelude) +  (sorry) +] @keyword + +[ +  "prefix" +  "infix" +  "infixl" +  "infixr" +  "postfix" +  "notation" +  "macro_rules" +  "syntax" +  "elab" +  "builtin_initialize" +] @keyword + +[ +  "noncomputable" +  "partial" +  "private" +  "protected" +  "unsafe" +] @keyword + +[ +  "apply" +  "exact" +  "rewrite" +  "rw" +  "simp" +  (trivial) +] @keyword + +[ +  "catch" +  "finally" +  "try" +] @exception + +((apply +  name: (identifier) @exception) + (#match? @exception "throw")) + +[ +  "unless" +  "mut" +] @keyword + +[(true) (false)] @boolean + +(number) @constant.numeric.integer +(float) @constant.numeric.float + +(comment) @comment +(char) @character +(string) @string +(interpolated_string) @string +; (escape_sequence) @string.escape + +; Reset highlighing in string interpolation +(interpolation) @none + +(interpolation +  "{" @punctuation.special +  "}" @punctuation.special) + +["(" ")" "[" "]" "{" "}" "⟨" "⟩"] @punctuation.bracket + +["|" "," "." ":" ";"] @punctuation.delimiter + +(sorry) @error + +;; Error +(ERROR) @error + +; Variables +(identifier) @variable diff --git a/helix-22.03-x86_64-windows/runtime/queries/lean/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/lean/injections.scm new file mode 100644 index 0000000..030714f --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/lean/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "markdown")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/lean/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/lean/locals.scm new file mode 100644 index 0000000..dd6c203 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/lean/locals.scm @@ -0,0 +1,5 @@ +[ +  (module) +  (namespace) +  (section) +] @local.scope diff --git a/helix-22.03-x86_64-windows/runtime/queries/ledger/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/ledger/highlights.scm new file mode 100644 index 0000000..02a9ea9 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ledger/highlights.scm @@ -0,0 +1,38 @@ +[ +    (comment) +    (note) +] @comment + +[ +    (date) +    (interval) +    (quantity) +] @constant.numeric.integer + +((account) @variable.other.member) +((commodity) @text.literal) + +"include" @keyword.local.import + +[ +    "account" +    "alias" +    "assert" +    "check" +    "commodity" +    "def" +    "default" +    "end" +    "eval" +    "format" +    "nomarket" +    "note" +    "payee" +    "check" +    "A" +    "Y" +    "N" +    "D" +    "C" +    "P" +] @keyword diff --git a/helix-22.03-x86_64-windows/runtime/queries/ledger/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/ledger/injections.scm new file mode 100644 index 0000000..c171478 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ledger/injections.scm @@ -0,0 +1,2 @@ +([(comment) (note)] @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/highlights.scm new file mode 100644 index 0000000..4ba254e --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/highlights.scm @@ -0,0 +1 @@ +; inherits: yaml diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/indents.toml new file mode 100644 index 0000000..ddc3578 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/indents.toml @@ -0,0 +1,3 @@ +indent = [ +    "block_mapping_pair", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/injections.scm new file mode 100644 index 0000000..b324302 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir-yaml/injections.scm @@ -0,0 +1,9 @@ +; inherits: yaml + +((document (block_node (block_scalar) @injection.content)) + (#set! injection.language "llvm")) + +((document (block_node (block_mapping (block_mapping_pair +  key: (flow_node (plain_scalar (string_scalar))) ; "body" +  value: (block_node (block_scalar) @injection.content))))) +  (#set! injection.language "mir")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/highlights.scm new file mode 100644 index 0000000..7923461 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/highlights.scm @@ -0,0 +1,136 @@ +[ +  (label) +  (bb_ref) +] @label + +[ +  (comment) +  (multiline_comment) +] @comment + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +  "<" +  ">" +] @punctuation.bracket + +[ +  "," +  ":" +  "|" +  "*" +] @punctuation.delimiter + +[ +  "=" +  "x" +] @operator + +[ +  "true" +  "false" +] @constant.builtin.boolean + +[ +  "null" +  "_" +  "unknown-address" +] @constant.builtin + +[ +  (stack_object) +  (constant_pool_index) +  (jump_table_index) +  (var) +  (physical_register) +  (ir_block) +  (external_symbol) +  (global_var) +  (ir_local_var) +  (metadata_ref) +  (mnemonic) +] @variable + +(low_level_type) @type + +[ +  (immediate_type) +  (primitive_type) +] @type.builtin + +(number) @constant.numeric.integer +(float) @constant.numeric.float +(string) @string + +(instruction name: _ @keyword.operator) + +[ +  "successors" +  "liveins" +  "pre-instr-symbol" +  "post-instr-symbol" +  "heap-alloc-marker" +  "debug-instr-number" +  "debug-location" +  "mcsymbol" +  "tied-def" +  "target-flags" +  "CustomRegMask" +  "same_value" +  "def_cfa_register" +  "restore" +  "undefined" +  "offset" +  "rel_offset" +  "def_cfa" +  "llvm_def_aspace_cfa" +  "register" +  "escape" +  "remember_state" +  "restore_state" +  "window_save" +  "negate_ra_sign_state" +  "intpred" +  "floatpred" +  "shufflemask" +  "liveout" +  "target-index" +  "blockaddress" +  "intrinsic" +  "load" +  "store" +  "unknown-size" +  "on" +  "from" +  "into" +  "align" +  "basealign" +  "addrspace" +  "call-entry" +  "custom" +  "constant-pool" +  "stack" +  "got" +  "jump-table" +  "syncscope" +  "address-taken" +  "landing-pad" +  "inlineasm-br-indirect-target" +  "ehfunclet-entry" +  "bbsections" + +  (intpred) +  (floatpred) +  (memory_operand_flag) +  (atomic_ordering) +  (register_flag) +  (instruction_flag) +  (float_keyword) +] @keyword + +(ERROR) @error diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/indents.toml new file mode 100644 index 0000000..6a70e5a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/indents.toml @@ -0,0 +1,7 @@ +indent = [ +  "basic_block", +] + +outdent = [ +  "label", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/injections.scm new file mode 100644 index 0000000..0b476f8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/injections.scm @@ -0,0 +1,2 @@ +([ (comment) (multiline_comment)] @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/textobjects.scm new file mode 100644 index 0000000..003ce59 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm-mir/textobjects.scm @@ -0,0 +1,12 @@ +(basic_block) @function.around + +(argument) @parameter.inside + +[ +  (comment) +  (multiline_comment) +] @comment.inside + +(comment)+ @comment.around + +(multiline_comment) @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm/highlights.scm new file mode 100644 index 0000000..cb70519 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm/highlights.scm @@ -0,0 +1,158 @@ +(type) @type +(type_keyword) @type.builtin + +(type [ +    (local_var) +    (global_var) +  ] @type) + +(argument) @variable.parameter + +(_ inst_name: _ @keyword.operator) + +[ +  "catch" +  "filter" +] @keyword.operator + +[ +  "to" +  "nuw" +  "nsw" +  "exact" +  "unwind" +  "from" +  "cleanup" +  "swifterror" +  "volatile" +  "inbounds" +  "inrange" +  (icmp_cond) +  (fcmp_cond) +  (fast_math) +] @keyword.control + +(_ callee: _ @function) +(function_header name: _ @function) + +[ +  "declare" +  "define" +  (calling_conv) +] @keyword.function + +[ +  "target" +  "triple" +  "datalayout" +  "source_filename" +  "addrspace" +  "blockaddress" +  "align" +  "syncscope" +  "within" +  "uselistorder" +  "uselistorder_bb" +  "module" +  "asm" +  "sideeffect" +  "alignstack" +  "inteldialect" +  "unwind" +  "type" +  "global" +  "constant" +  "externally_initialized" +  "alias" +  "ifunc" +  "section" +  "comdat" +  "thread_local" +  "localdynamic" +  "initialexec" +  "localexec" +  "any" +  "exactmatch" +  "largest" +  "nodeduplicate" +  "samesize" +  "distinct" +  "attributes" +  "vscale" +  "no_cfi" +  (linkage_aux) +  (dso_local) +  (visibility) +  (dll_storage_class) +  (unnamed_addr) +  (attribute_name) +] @keyword + + +(function_header [ +    (linkage) +    (calling_conv) +    (unnamed_addr) +  ] @keyword.function) + +[ +  (string) +  (cstring) +] @string + +(number) @constant.numeric.integer +(comment) @comment +(label) @label +(_ inst_name: "ret" @keyword.control.return) +(float) @constant.numeric.float + +[ +  (local_var) +  (global_var) +] @variable + +[ +  (struct_value) +  (array_value) +  (vector_value) +] @constructor + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +  "<" +  ">" +  "<{" +  "}>" +] @punctuation.bracket + +[ +  "," +  ":" +] @punctuation.delimiter + +[ +  "=" +  "|" +  "x" +  "..." +] @operator + +[ +  "true" +  "false" +] @constant.builtin.boolean + +[ +  "undef" +  "poison" +  "null" +  "none" +  "zeroinitializer" +] @constant.builtin + +(ERROR) @error diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/llvm/indents.toml new file mode 100644 index 0000000..8cd603c --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm/indents.toml @@ -0,0 +1,8 @@ +indent = [ + "function_body", + "instruction", +] + +outdent = [ + "}", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm/locals.scm new file mode 100644 index 0000000..1946c28 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm/locals.scm @@ -0,0 +1,14 @@ +; Scopes + +(function_body) @local.scope + +; Definitions + +(argument +  (value (var (local_var) @local.definition))) + +(instruction +  (local_var) @local.definition) + +; References +(local_var) @local.reference diff --git a/helix-22.03-x86_64-windows/runtime/queries/llvm/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/llvm/textobjects.scm new file mode 100644 index 0000000..dd15dc1 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/llvm/textobjects.scm @@ -0,0 +1,20 @@ +(define +  body: (_) @function.inside) @function.around + +(struct_type +  (struct_body) @class.inside) @class.around + +(packed_struct_type +  (struct_body) @class.inside) @class.around + +(array_type +  (array_vector_body) @class.inside) @class.around + +(vector_type +  (array_vector_body) @class.inside) @class.around + +(argument) @parameter.inside + +(comment) @comment.inside + +(comment)+ @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/lua/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/lua/highlights.scm new file mode 100644 index 0000000..e73b32d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/lua/highlights.scm @@ -0,0 +1,166 @@ +;;; Highlighting for lua + +;;; Builtins +(self) @variable.builtin + +;; Keywords + +(if_statement +[ +  "if" +  "then" +  "end" +] @keyword.control.conditional) + +[ +  "else" +  "elseif" +  "then" +] @keyword.control.conditional + +(for_statement +[ +  "for" +  "do" +  "end" +] @keyword.control.repeat) + +(for_in_statement +[ +  "for" +  "do" +  "end" +] @keyword.control.repeat) + +(while_statement +[ +  "while" +  "do" +  "end" +] @keyword.control.repeat) + +(repeat_statement +[ +  "repeat" +  "until" +] @keyword.control.repeat) + +(do_statement +[ +  "do" +  "end" +] @keyword) + +[ + "in" + "local" + (break_statement) + "goto" + "return" +] @keyword + +;; Operators + +[ + "not" + "and" + "or" +] @operator + +[ +"=" +"~=" +"==" +"<=" +">=" +"<" +">" +"+" +"-" +"%" +"/" +"//" +"*" +"^" +"&" +"~" +"|" +">>" +"<<" +".." +"#" + ] @operator + +;; Punctuation +["," "." ":" ";"] @punctuation.delimiter + +;; Brackets +[ + "(" + ")" + "[" + "]" + "{" + "}" +] @punctuation.bracket + +; ;; Constants +[ +(false) +(true) +] @constant.builtin.boolean +(nil) @constant.builtin +(spread) @constant ;; "..." +((identifier) @constant + (#match? @constant "^[A-Z][A-Z_0-9]*$")) + +;; Parameters +(parameters +  (identifier) @variable.parameter) + +; ;; Functions +(function [(function_name) (identifier)] @function) +(function ["function" "end"] @keyword.function) + +(function +  (function_name +   (function_name_field +    (property_identifier) @function .))) + +(local_function (identifier) @function) +(local_function ["function" "end"] @keyword.function) + +(variable_declaration + (variable_declarator (identifier) @function) (function_definition)) +(local_variable_declaration + (variable_declarator (identifier) @function) (function_definition)) + +(function_definition ["function" "end"] @keyword.function) + +(function_call +  [ +   ((identifier) @variable (method) @function.method) +   ((_) (method) @function.method) +   (identifier) @function +   (field_expression (property_identifier) @function) +  ] +  . (arguments)) + +;; Nodes +(table ["{" "}"] @constructor) +(comment) @comment +(string) @string +(number) @constant.numeric.integer +(label_statement) @label +; A bit of a tricky one, this will only match field names +(field . (identifier) @variable.other.member (_)) +(shebang) @comment + +;; Property +(property_identifier) @variable.other.member + +;; Variable +(identifier) @variable + +;; Error +(ERROR) @error diff --git a/helix-22.03-x86_64-windows/runtime/queries/lua/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/lua/indents.toml new file mode 100644 index 0000000..df1a975 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/lua/indents.toml @@ -0,0 +1,24 @@ +indent = [ +  "function_definition", +  "variable_declaration", +  "local_variable_declaration", +  "field", +  "local_function", +  "function", +  "if_statement", +  "for_statement", +  "for_in_statement", +  "repeat_statement", +  "return_statement", +  "while_statement", +  "table", +  "arguments", +  "do_statement", +] + +oudent = [ +  "end", +  "until", +  "}", +  ")", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/lua/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/lua/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/lua/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/make/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/make/highlights.scm new file mode 100644 index 0000000..50380ba --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/make/highlights.scm @@ -0,0 +1,170 @@ +[ + "(" + ")" + "{" + "}" +] @punctuation.bracket + +[ + ":" + "&:" + "::" + "|" + ";" + "\"" + "'" + "," +] @punctuation.delimiter + +[ + "$" + "$$" +] @punctuation.special + +(automatic_variable + [ "@" "%" "<" "?" "^" "+" "/" "*" "D" "F"] @punctuation.special) + +(automatic_variable + "/" @error . ["D" "F"]) + +[ + "=" + ":=" + "::=" + "?=" + "+=" + "!=" + "@" + "-" + "+" +] @operator + +[ + (text) + (string) + (raw_text) +] @string + +(variable_assignment (word) @string) + +[ + "ifeq" + "ifneq" + "ifdef" + "ifndef" + "else" + "endif" + "if" + "or"  ; boolean functions are conditional in make grammar + "and" +] @keyword.control.conditional + +"foreach" @keyword.control.repeat + +[ + "define" + "endef" + "vpath" + "undefine" + "export" + "unexport" + "override" + "private" +; "load" +] @keyword + +[ + "include" + "sinclude" + "-include" +] @keyword.control.import + +[ + "subst" + "patsubst" + "strip" + "findstring" + "filter" + "filter-out" + "sort" + "word" + "words" + "wordlist" + "firstword" + "lastword" + "dir" + "notdir" + "suffix" + "basename" + "addsuffix" + "addprefix" + "join" + "wildcard" + "realpath" + "abspath" + "call" + "eval" + "file" + "value" + "shell" +] @keyword.function + +[ + "error" + "warning" + "info" +] @keyword.control.exception + +;; Variable +(variable_assignment +  name: (word) @variable) + +(variable_reference +  (word) @variable) + +(comment) @comment + +((word) @clean @string.regexp + (#match? @clean "[%\*\?]")) + +(function_call +  function: "error" +  (arguments (text) @error)) + +(function_call +  function: "warning" +  (arguments (text) @warning)) + +(function_call +  function: "info" +  (arguments (text) @info)) + +;; Install Command Categories +;; Others special variables +;; Variables Used by Implicit Rules +[ + "VPATH" + ".RECIPEPREFIX" +] @constant.builtin + +(variable_assignment +  name: (word) @clean @constant.builtin +        (#match? @clean "^(AR|AS|CC|CXX|CPP|FC|M2C|PC|CO|GET|LEX|YACC|LINT|MAKEINFO|TEX|TEXI2DVI|WEAVE|CWEAVE|TANGLE|CTANGLE|RM|ARFLAGS|ASFLAGS|CFLAGS|CXXFLAGS|COFLAGS|CPPFLAGS|FFLAGS|GFLAGS|LDFLAGS|LDLIBS|LFLAGS|YFLAGS|PFLAGS|RFLAGS|LINTFLAGS|PRE_INSTALL|POST_INSTALL|NORMAL_INSTALL|PRE_UNINSTALL|POST_UNINSTALL|NORMAL_UNINSTALL|MAKEFILE_LIST|MAKE_RESTARTS|MAKE_TERMOUT|MAKE_TERMERR|\.DEFAULT_GOAL|\.RECIPEPREFIX|\.EXTRA_PREREQS)$")) + +(variable_reference +  (word) @clean @constant.builtin +  (#match? @clean "^(AR|AS|CC|CXX|CPP|FC|M2C|PC|CO|GET|LEX|YACC|LINT|MAKEINFO|TEX|TEXI2DVI|WEAVE|CWEAVE|TANGLE|CTANGLE|RM|ARFLAGS|ASFLAGS|CFLAGS|CXXFLAGS|COFLAGS|CPPFLAGS|FFLAGS|GFLAGS|LDFLAGS|LDLIBS|LFLAGS|YFLAGS|PFLAGS|RFLAGS|LINTFLAGS|PRE_INSTALL|POST_INSTALL|NORMAL_INSTALL|PRE_UNINSTALL|POST_UNINSTALL|NORMAL_UNINSTALL|MAKEFILE_LIST|MAKE_RESTARTS|MAKE_TERMOUT|MAKE_TERMERR|\.DEFAULT_GOAL|\.RECIPEPREFIX|\.EXTRA_PREREQS\.VARIABLES|\.FEATURES|\.INCLUDE_DIRS|\.LOADED)$")) + +;; Standart targets +(targets +  (word) @constant.macro +  (#match? @constant.macro "^(all|install|install-html|install-dvi|install-pdf|install-ps|uninstall|install-strip|clean|distclean|mostlyclean|maintainer-clean|TAGS|info|dvi|html|pdf|ps|dist|check|installcheck|installdirs)$")) + +(targets +  (word) @constant.macro +  (#match? @constant.macro "^(all|install|install-html|install-dvi|install-pdf|install-ps|uninstall|install-strip|clean|distclean|mostlyclean|maintainer-clean|TAGS|info|dvi|html|pdf|ps|dist|check|installcheck|installdirs)$")) + +;; Builtin targets +(targets +  (word) @constant.macro +  (#match? @constant.macro "^\.(PHONY|SUFFIXES|DEFAULT|PRECIOUS|INTERMEDIATE|SECONDARY|SECONDEXPANSION|DELETE_ON_ERROR|IGNORE|LOW_RESOLUTION_TIME|SILENT|EXPORT_ALL_VARIABLES|NOTPARALLEL|ONESHELL|POSIX)$")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/make/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/make/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/make/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/markdown/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/markdown/highlights.scm new file mode 100644 index 0000000..ed22b80 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/markdown/highlights.scm @@ -0,0 +1,46 @@ +(setext_heading (heading_content) @markup.heading.1 (setext_h1_underline) @markup.heading.marker) +(setext_heading (heading_content) @markup.heading.2 (setext_h2_underline) @markup.heading.marker) + +(atx_heading (atx_h1_marker) @markup.heading.marker (heading_content) @markup.heading.1) +(atx_heading (atx_h2_marker) @markup.heading.marker (heading_content) @markup.heading.2) +(atx_heading (atx_h3_marker) @markup.heading.marker (heading_content) @markup.heading.3) +(atx_heading (atx_h4_marker) @markup.heading.marker (heading_content) @markup.heading.4) +(atx_heading (atx_h5_marker) @markup.heading.marker (heading_content) @markup.heading.5) +(atx_heading (atx_h6_marker) @markup.heading.marker (heading_content) @markup.heading.6) + +(code_fence_content) @none + +[ +  (indented_code_block) +  (fenced_code_block) +] @markup.raw.block + +(block_quote) @markup.quote + +(code_span) @markup.raw.inline + +(emphasis) @markup.italic + +(strong_emphasis) @markup.bold + +(link_destination) @markup.link.url +(link_label) @markup.link.label + +[ +  (link_text) +  (image_description) +] @markup.link.text + +[ +  (list_marker_plus) +  (list_marker_minus) +  (list_marker_star) +  (list_marker_dot) +  (list_marker_parenthesis) +] @punctuation.special + +[ +  (backslash_escape) +  (hard_line_break) +] @string.character.escape + diff --git a/helix-22.03-x86_64-windows/runtime/queries/markdown/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/markdown/injections.scm new file mode 100644 index 0000000..10dcab0 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/markdown/injections.scm @@ -0,0 +1,9 @@ +(fenced_code_block +  (info_string) @injection.language +  (code_fence_content) @injection.content +  (#set! injection.include-children)) + +((html_block) @injection.content + (#set! injection.language "html")) +((html_tag) @injection.content + (#set! injection.language "html")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/nix/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/nix/highlights.scm new file mode 100644 index 0000000..f668206 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/nix/highlights.scm @@ -0,0 +1,90 @@ +(comment) @comment + +[ +  "if" +  "then" +  "else" +  "let" +  "inherit" +  "in" +  "rec" +  "with" +  "assert" +] @keyword + +((identifier) @variable.builtin + (#match? @variable.builtin "^(__currentSystem|__currentTime|__nixPath|__nixVersion|__storeDir|builtins)$") + (#is-not? local)) + +((identifier) @function.builtin + (#match? @function.builtin "^(__add|__addErrorContext|__all|__any|__appendContext|__attrNames|__attrValues|__bitAnd|__bitOr|__bitXor|__catAttrs|__compareVersions|__concatLists|__concatMap|__concatStringsSep|__deepSeq|__div|__elem|__elemAt|__fetchurl|__filter|__filterSource|__findFile|__foldl'|__fromJSON|__functionArgs|__genList|__genericClosure|__getAttr|__getContext|__getEnv|__hasAttr|__hasContext|__hashFile|__hashString|__head|__intersectAttrs|__isAttrs|__isBool|__isFloat|__isFunction|__isInt|__isList|__isPath|__isString|__langVersion|__length|__lessThan|__listToAttrs|__mapAttrs|__match|__mul|__parseDrvName|__partition|__path|__pathExists|__readDir|__readFile|__replaceStrings|__seq|__sort|__split|__splitVersion|__storePath|__stringLength|__sub|__substring|__tail|__toFile|__toJSON|__toPath|__toXML|__trace|__tryEval|__typeOf|__unsafeDiscardOutputDependency|__unsafeDiscardStringContext|__unsafeGetAttrPos|__valueSize|abort|baseNameOf|derivation|derivationStrict|dirOf|fetchGit|fetchMercurial|fetchTarball|fromTOML|import|isNull|map|placeholder|removeAttrs|scopedImport|throw|toString)$") + (#is-not? local)) + +[ +  (string) +  (indented_string) +] @string + +[ +  (path) +  (hpath) +  (spath) +] @string.special.path + +(uri) @string.special.uri + +; boolean +((identifier) @constant.builtin.boolean (#match? @constant.builtin.boolean "^(true|false)$")) @constant.builtin.boolean +; null +((identifier) @constant.builtin (#eq? @constant.builtin "null")) @constant.builtin + +(integer) @constant.numeric.integer +(float) @constant.numeric.float + +(interpolation +  "${" @punctuation.special +  "}" @punctuation.special) @embedded + +(escape_sequence) @constant.character.escape + +(function +  universal: (identifier) @variable.parameter +) + +(formal +  name: (identifier) @variable.parameter +  "?"? @punctuation.delimiter) + +(app +  function: [ +    (identifier) @function +    (select +      attrpath: (attrpath +        attr: (attr_identifier) @function .))]) + + +(unary +  operator: _ @operator) + +(binary +  operator: _ @operator) + +(attr_identifier) @variable.other.member +(inherit attrs: (attrs_inherited (identifier) @variable.other.member) ) + +[ +  ";" +  "." +  "," +] @punctuation.delimiter + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +] @punctuation.bracket + +(identifier) @variable diff --git a/helix-22.03-x86_64-windows/runtime/queries/nix/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/nix/indents.toml new file mode 100644 index 0000000..b92ab75 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/nix/indents.toml @@ -0,0 +1,18 @@ +indent = [ + # "function", + "bind", + "assert", + "with", + "let", + "if", + + "attrset", + "list", + "indented_string", + "parenthesized", +] + +outdent = [ +  "}", +  "]", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/ocaml-interface/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/ocaml-interface/highlights.scm new file mode 100644 index 0000000..6d3dfbc --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ocaml-interface/highlights.scm @@ -0,0 +1 @@ +; inherits: ocaml diff --git a/helix-22.03-x86_64-windows/runtime/queries/ocaml-interface/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/ocaml-interface/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ocaml-interface/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/ocaml/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/ocaml/highlights.scm new file mode 100644 index 0000000..a08b126 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ocaml/highlights.scm @@ -0,0 +1,160 @@ +; Modules +;-------- + +[(module_name) (module_type_name)] @namespace + +; Types +;------ + +[(class_name) (class_type_name) (type_constructor)] @type + +[(constructor_name) (tag)] @constructor + +; Functions +;---------- + +(let_binding +  pattern: (value_name) @function +  (parameter)) + +(let_binding +  pattern: (value_name) @function +  body: [(fun_expression) (function_expression)]) + +(value_specification (value_name) @function) + +(external (value_name) @function) + +(method_name) @function.method + +; Variables +;---------- + +(value_pattern) @variable.parameter + +; Application +;------------ + +(infix_expression +  left: (value_path (value_name) @function) +  (infix_operator) @operator +  (#eq? @operator "@@")) + +(infix_expression +  (infix_operator) @operator +  right: (value_path (value_name) @function) +  (#eq? @operator "|>")) + +(application_expression +  function: (value_path (value_name) @function)) + +; Properties +;----------- + +[(label_name) (field_name) (instance_variable_name)] @variable.other.member + +; Constants +;---------- + +[(boolean) (unit)] @constant + +[(number) (signed_number)] @constant.numeric.integer + +(character) @constant.character + +(string) @string + +(quoted_string "{" @string "}" @string) @string + +(escape_sequence) @constant.character.escape + +[ +  (conversion_specification) +  (pretty_printing_indication) +] @punctuation.special + +; Keywords +;--------- + +[ +  "and" "as" "assert" "begin" "class" "constraint" +  "end" "external" "in" +  "inherit" "initializer" "lazy" "let" "match" "method" "module" +  "mutable" "new" "nonrec" "object" "of" "private" "rec" "sig" "struct" +  "type" "val" "virtual" "when" "with" +] @keyword + +["fun" "function" "functor"] @keyword.function + +["if" "then" "else"] @keyword.control.conditional + +["exception" "try"] @keyword.control.exception + +["include" "open"] @keyword.control.import + +["for" "to" "downto" "while" "do" "done"] @keyword.control.repeat + +; Macros +;------- + +(attribute ["[@" "]"] @attribute) +(item_attribute ["[@@" "]"] @attribute) +(floating_attribute ["[@@@" "]"] @attribute) +(extension ["[%" "]"] @function.macro) +(item_extension ["[%%" "]"] @function.macro) +(quoted_extension ["{%" "}"] @function.macro) +(quoted_item_extension ["{%%" "}"] @function.macro) +"%" @function.macro + +["(" ")" "[" "]" "{" "}" "[|" "|]" "[<" "[>"] @punctuation.bracket + +(object_type ["<" ">"] @punctuation.bracket) + +[ +  "," "." ";" ":" "=" "|" "~" "?" "+" "-" "!" ">" "&" +  "->" ";;" ":>" "+=" ":=" ".." +] @punctuation.delimiter + +; Operators +;---------- + +[ +  (prefix_operator) +  (sign_operator) +  (infix_operator) +  (hash_operator) +  (indexing_operator) +  (let_operator) +  (and_operator) +  (match_operator) +] @operator + +(match_expression (match_operator) @keyword) + +(value_definition [(let_operator) (and_operator)] @keyword) + +;; TODO: this is an error now +;(prefix_operator "!" @operator) + +(infix_operator ["&" "+" "-" "=" ">" "|" "%"] @operator) + +(signed_number ["+" "-"] @operator) + +["*" "#" "::" "<-"] @operator + +; Attributes +;----------- + +(attribute_id) @variable.other.member + +; Comments +;--------- + +[(comment) (line_number_directive) (directive) (shebang)] @comment + +(ERROR) @error + +; Blanket highlights +; ------------------ + +[(value_name) (type_variable)] @variable diff --git a/helix-22.03-x86_64-windows/runtime/queries/ocaml/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/ocaml/indents.toml new file mode 100644 index 0000000..7586b83 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ocaml/indents.toml @@ -0,0 +1,13 @@ +indent = [ +    "let_binding", +    "type_binding", +    "structure", +    "signature", +    "record_declaration", +    "function_expression", +    "match_case", +] + +outdent = [ +    "}", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/ocaml/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/ocaml/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ocaml/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/ocaml/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/ocaml/locals.scm new file mode 100644 index 0000000..8f3f3fd --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ocaml/locals.scm @@ -0,0 +1,24 @@ +; Scopes +;------- + +[ +  (let_binding) +  (class_binding) +  (class_function) +  (method_definition) +  (fun_expression) +  (object_expression) +  (for_expression) +  (match_case) +  (attribute_payload) +] @local.scope + +; Definitions +;------------ + +(value_pattern) @local.definition + +; References +;----------- + +(value_path . (value_name) @local.reference) diff --git a/helix-22.03-x86_64-windows/runtime/queries/org/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/org/highlights.scm new file mode 100644 index 0000000..db8329f --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/org/highlights.scm @@ -0,0 +1,24 @@ +(headline (stars) @markup.heading.marker (#eq? @markup.heading.marker "*")) @markup.heading.1 +(headline (stars) @markup.heading.marker (#eq? @markup.heading.marker "**")) @markup.heading.2 +(headline (stars) @markup.heading.marker (#eq? @markup.heading.marker "***")) @markup.heading.3 +(headline (stars) @markup.heading.marker (#eq? @markup.heading.marker "****")) @markup.heading.4 +(headline (stars) @markup.heading.marker (#eq? @markup.heading.marker "*****")) @markup.heading.5 +(headline (stars) @markup.heading.marker (#eq? @markup.heading.marker "******")) @markup.heading.6 + +(block) @markup.raw.block +(list) @markup.list.unnumbered +(directive) @markup.label +(property_drawer) @markup.label +  + +((expr) @markup.bold + (#match? @markup.bold "\\*.*\\*")) + +((expr) @markup.italic + (#match? @markup.italic "/.*/")) +((expr) @markup.raw.inline + (#match? @markup.raw.inline "~.*~")) + +((expr) @markup.quote + (#match? @markup.quote "=.*=")) + diff --git a/helix-22.03-x86_64-windows/runtime/queries/org/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/org/injections.scm new file mode 100644 index 0000000..24d712d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/org/injections.scm @@ -0,0 +1,4 @@ +(block parameter: (expr) @injection.language +  (contents) @injection.content +  (#set! injection.include-children)) + diff --git a/helix-22.03-x86_64-windows/runtime/queries/perl/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/perl/highlights.scm new file mode 100644 index 0000000..b6f0429 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/perl/highlights.scm @@ -0,0 +1,181 @@ +; Variables +(variable_declaration +  . +  (scope) @keyword) +[ +(single_var_declaration) +(scalar_variable) +(array_variable) +(hash_variable) +(hash_variable) +] @variable + + +[ +(package_name) +(special_scalar_variable) +(special_array_variable) +(special_hash_variable) +(special_literal) +(super) +] @constant + +( +  [ +  (package_name) +  (super) +  ] +  . +  ("::" @operator) +) + +(comments) @comment +(pod_statement) @comment.block.documentation + +[ +(use_no_statement) +(use_no_feature_statement) +(use_no_if_statement) +(use_no_version) +(use_constant_statement) +(use_parent_statement) +] @keyword + +(use_constant_statement +  constant: (identifier) @constant) + +[ +"require" +] @keyword + +(method_invocation +  . +  (identifier) @variable) + +(method_invocation +  (arrow_operator) +  . +  (identifier) @function) +(method_invocation +  function_name: (identifier) @function) +(named_block_statement +  function_name: (identifier) @function) + +(call_expression +  function_name: (identifier) @function) +(function_definition +  name: (identifier) @function) +[ +(function) +(map) +(grep) +(bless) +] @function + +[ +"return" +"sub" +"package" +"BEGIN" +"END" +] @keyword.function + +[ +"(" +")" +"[" +"]" +"{" +"}" +] @punctuation.bracket +(standard_input_to_variable) @punctuation.bracket + +[ +"=~" +"or" +"=" +"==" +"+" +"-" +"." +"//" +"||" +(arrow_operator) +(hash_arrow_operator) +(array_dereference) +(hash_dereference) +(to_reference) +(type_glob) +(hash_access_variable) +(ternary_expression) +(ternary_expression_in_hash) +] @operator + +[ +(regex_option) +(regex_option_for_substitution) +(regex_option_for_transliteration) +] @variable.parameter + +(type_glob +  (identifier) @variable) +( +  (scalar_variable) +  . +  ("->" @operator)) + +[ +(word_list_qw) +(command_qx_quoted) +(string_single_quoted) +(string_double_quoted) +(string_qq_quoted) +(bareword) +(transliteration_tr_or_y) +] @string + +[ +(regex_pattern_qr)  +(patter_matcher_m) +(substitution_pattern_s) +] @string.regexp + +(escape_sequence) @string.special + +[ +"," +(semi_colon) +(start_delimiter) +(end_delimiter) +(ellipsis_statement) +] @punctuation.delimiter + +[ +(integer) +(floating_point) +(scientific_notation) +(hexadecimal) +] @constant.numeric + +[ +; (if_statement) +(unless_statement) +(if_simple_statement) +(unless_simple_statement) +] @keyword.control.conditional + +[ +"if" +"elsif" +"else" +] @keyword.control.conditional  + +(foreach_statement) @keyword.control.repeat +(foreach_statement +  . +  (scope) @keyword) + +(function_attribute) @label + +(function_signature) @type + diff --git a/helix-22.03-x86_64-windows/runtime/queries/perl/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/perl/indents.toml new file mode 100644 index 0000000..365e066 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/perl/indents.toml @@ -0,0 +1,17 @@ +indent = [ +  "function", +  "identifier", +  "method_invocation", +  "if_statement", +  "unless_statement", +  "if_simple_statement", +  "unless_simple_statement", +  "variable_declaration", +  "block", +  "list_item", +  "word_list_qw" +] + +outdent = [ + "}" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/perl/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/perl/injections.scm new file mode 100644 index 0000000..cab5f53 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/perl/injections.scm @@ -0,0 +1,2 @@ +((comments) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/perl/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/perl/textobjects.scm new file mode 100644 index 0000000..972b877 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/perl/textobjects.scm @@ -0,0 +1,17 @@ +(function_definition  +  (identifier) (_) @function.inside) @function.around + +(anonymous_function  +  (_) @function.inside) @function.around + +(argument  +  (_) @parameter.inside) + +[ +  (comments) +  (pod_statement) +] @comment.inside + +(comments)+ @comment.around + +(pod_statement) @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/php/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/php/highlights.scm new file mode 100644 index 0000000..5379fa1 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/php/highlights.scm @@ -0,0 +1,118 @@ +(php_tag) @tag +"?>" @tag + +; Types + +(primitive_type) @type.builtin +(cast_type) @type.builtin +(named_type (name) @type) @type +(named_type (qualified_name) @type) @type + +; Functions + +(array_creation_expression "array" @function.builtin) +(list_literal "list" @function.builtin) + +(method_declaration +  name: (name) @function.method) + +(function_call_expression +  function: (qualified_name (name)) @function) + +(scoped_call_expression +  name: (name) @function) + +(member_call_expression +  name: (name) @function.method) + +(function_definition +  name: (name) @function) + +; Member + +(property_element +  (variable_name) @variable.other.member) + +(member_access_expression +  name: (variable_name (name)) @variable.other.member) +(member_access_expression +  name: (name) @variable.other.member) + +; Variables + +(relative_scope) @variable.builtin + +((name) @constant + (#match? @constant "^_?[A-Z][A-Z\\d_]+$")) + +((name) @constructor + (#match? @constructor "^[A-Z]")) + +((name) @variable.builtin + (#eq? @variable.builtin "this")) + +(variable_name) @variable + +; Basic tokens + +(string) @string +(heredoc) @string +(boolean) @constant.builtin.boolean +(null) @constant.builtin +(integer) @constant.numeric.integer +(float) @constant.numeric.float +(comment) @comment + +"$" @operator + +; Keywords + +"abstract" @keyword +"as" @keyword +"break" @keyword +"case" @keyword +"catch" @keyword +"class" @keyword +"const" @keyword +"continue" @keyword +"declare" @keyword +"default" @keyword +"do" @keyword +"echo" @keyword +"else" @keyword +"elseif" @keyword +"enddeclare" @keyword +"endforeach" @keyword +"endif" @keyword +"endswitch" @keyword +"endwhile" @keyword +"enum" @keyword +"extends" @keyword +"final" @keyword +"finally" @keyword +"foreach" @keyword +"fn" @keyword +"function" @keyword +"global" @keyword +"if" @keyword +"implements" @keyword +"include_once" @keyword +"include" @keyword +"insteadof" @keyword +"interface" @keyword +"match" @keyword +"namespace" @keyword +"new" @keyword +"private" @keyword +"protected" @keyword +"public" @keyword +"require_once" @keyword +"require" @keyword +"return" @keyword +"static" @keyword +"switch" @keyword +"throw" @keyword +"trait" @keyword +"try" @keyword +"use" @keyword +"while" @keyword diff --git a/helix-22.03-x86_64-windows/runtime/queries/php/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/php/indents.toml new file mode 100644 index 0000000..85c104d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/php/indents.toml @@ -0,0 +1,17 @@ +indent = [ +  "array_creation_expression", +  "arguments", +  "formal_parameters", +  "compound_statement", +  "declaration_list", +  "binary_expression", +  "return_statement", +  "expression_statement", +  "switch_block", +  "anonymous_function_use_clause", +] + +oudent = [ +  "}", +  ")", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/php/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/php/injections.scm new file mode 100644 index 0000000..614a385 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/php/injections.scm @@ -0,0 +1,6 @@ +((text) @injection.content + (#set! injection.language "html") + (#set! injection.combined)) + +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/php/tags.scm b/helix-22.03-x86_64-windows/runtime/queries/php/tags.scm new file mode 100644 index 0000000..ef889ce --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/php/tags.scm @@ -0,0 +1,26 @@ +(class_declaration +  name: (name) @name) @definition.class + +(function_definition +  name: (name) @name) @definition.function + +(method_declaration +  name: (name) @name) @definition.function + +(object_creation_expression +  [ +    (qualified_name (name) @name) +    (variable_name (name) @name) +  ]) @reference.class + +(function_call_expression +  function: [ +    (qualified_name (name) @name) +    (variable_name (name)) @name +  ]) @reference.call + +(scoped_call_expression +  name: (name) @name) @reference.call + +(member_call_expression +  name: (name) @name) @reference.call diff --git a/helix-22.03-x86_64-windows/runtime/queries/php/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/php/textobjects.scm new file mode 100644 index 0000000..51abe5c --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/php/textobjects.scm @@ -0,0 +1,34 @@ +(class_declaration +  body: (_) @class.inside) @class.around + +(interface_declaration +  body: (_) @class.inside) @class.around + +(trait_declaration +  body: (_) @class.inside) @class.around + +(enum_declaration +  body: (_) @class.inside) @class.around + +(function_definition +  body: (_) @function.inside) @function.around + +(method_declaration +  body: (_) @function.inside) @function.around + +(arrow_function  +  body: (_) @function.inside) @function.around +   +(anonymous_function_creation_expression +  body: (_) @function.inside) @function.around +   +(formal_parameters +  [ +    (simple_parameter) +    (variadic_parameter) +    (property_promotion_parameter) +  ] @parameter.inside) + +(comment) @comment.inside + +(comment)+ @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/protobuf/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/protobuf/highlights.scm new file mode 100644 index 0000000..c35c430 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/protobuf/highlights.scm @@ -0,0 +1,58 @@ +[ +  "syntax" +  "package" +  "option" +  "import" +  "service" +  "rpc" +  "returns" +  "message" +  "enum" +  "oneof" +  "repeated" +  "reserved" +  "to" +  "stream" +  "extend" +  "optional" +] @keyword + +[ +  (keyType) +  (type) +] @type.builtin + +[ +  (mapName) +  (enumName) +  (messageName) +  (extendName) +  (serviceName) +  (rpcName) +] @type + +[ +  (fieldName) +  (optionName) +] @variable.other.member +(enumVariantName) @type.enum.variant + +(fullIdent) @namespace + +(intLit) @constant.numeric.integer +(floatLit) @constant.numeric.float +(boolLit) @constant.builtin.boolean +(strLit) @string + +(constant) @constant + +(comment) @comment + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +]  @punctuation.bracket
\ No newline at end of file diff --git a/helix-22.03-x86_64-windows/runtime/queries/protobuf/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/protobuf/indents.toml new file mode 100644 index 0000000..e655f8d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/protobuf/indents.toml @@ -0,0 +1,12 @@ +indent = [ +  "messageBody", +  "enumBody", +  "oneofBody", +  "serviceBody", +  "rpcBody", +  "msgLit", +] + +outdent = [ +  "}", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/protobuf/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/protobuf/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/protobuf/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/python/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/python/highlights.scm new file mode 100644 index 0000000..9131acc --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/python/highlights.scm @@ -0,0 +1,121 @@ +; Identifier naming conventions + +((identifier) @constructor + (#match? @constructor "^[A-Z]")) + +((identifier) @constant + (#match? @constant "^[A-Z][A-Z_]*$")) + +; Builtin functions + +((call +  function: (identifier) @function.builtin) + (#match? +   @function.builtin +   "^(abs|all|any|ascii|bin|bool|breakpoint|bytearray|bytes|callable|chr|classmethod|compile|complex|delattr|dict|dir|divmod|enumerate|eval|exec|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|isinstance|issubclass|iter|len|list|locals|map|max|memoryview|min|next|object|oct|open|ord|pow|print|property|range|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|vars|zip|__import__)$")) + +; Function calls + +(decorator) @function + +(call +  function: (attribute attribute: (identifier) @function.method)) +(call +  function: (identifier) @function) + +; Function definitions + +(function_definition +  name: (identifier) @function) + +(identifier) @variable +(attribute attribute: (identifier) @variable.other.member) +(type (identifier) @type) + +; Literals + +[ +  (none) +  (true) +  (false) +] @constant.builtin + +(integer) @constant.numeric.integer +(float) @constant.numeric.float +(comment) @comment +(string) @string +(escape_sequence) @constant.character.escape + +(interpolation +  "{" @punctuation.special +  "}" @punctuation.special) @embedded + +[ +  "-" +  "-=" +  "!=" +  "*" +  "**" +  "**=" +  "*=" +  "/" +  "//" +  "//=" +  "/=" +  "&" +  "%" +  "%=" +  "^" +  "+" +  "->" +  "+=" +  "<" +  "<<" +  "<=" +  "<>" +  "=" +  ":=" +  "==" +  ">" +  ">=" +  ">>" +  "|" +  "~" +  "and" +  "in" +  "is" +  "not" +  "or" +] @operator + +[ +  "as" +  "assert" +  "async" +  "await" +  "break" +  "class" +  "continue" +  "def" +  "del" +  "elif" +  "else" +  "except" +  "exec" +  "finally" +  "for" +  "from" +  "global" +  "if" +  "import" +  "lambda" +  "nonlocal" +  "pass" +  "print" +  "raise" +  "return" +  "try" +  "while" +  "with" +  "yield" +] @keyword diff --git a/helix-22.03-x86_64-windows/runtime/queries/python/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/python/indents.toml new file mode 100644 index 0000000..6bc6848 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/python/indents.toml @@ -0,0 +1,39 @@ +indent = [ +  "list", +  "tuple", +  "dictionary", +  "set", + +  "if_statement", +  "for_statement", +  "while_statement", +  "with_statement", +  "try_statement", +  "import_from_statement", + +  "parenthesized_expression", +  "generator_expression", +  "list_comprehension", +  "set_comprehension", +  "dictionary_comprehension", + +  "tuple_pattern", +  "list_pattern", +  "argument_list", +  "parameters", +  "binary_operator", + +  "function_definition", +  "class_definition", +] + +outdent = [ +  ")", +  "]", +  "}", +  "return_statement", +  "pass_statement", +  "raise_statement", +] + +ignore = ["string"] diff --git a/helix-22.03-x86_64-windows/runtime/queries/python/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/python/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/python/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/python/tags.scm b/helix-22.03-x86_64-windows/runtime/queries/python/tags.scm new file mode 100644 index 0000000..c5ca827 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/python/tags.scm @@ -0,0 +1,12 @@ +(class_definition +  name: (identifier) @name) @definition.class + +(function_definition +  name: (identifier) @name) @definition.function + +(call +  function: [ +      (identifier) @name +      (attribute +        attribute: (identifier) @name) +  ]) @reference.call diff --git a/helix-22.03-x86_64-windows/runtime/queries/python/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/python/textobjects.scm new file mode 100644 index 0000000..0ca2608 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/python/textobjects.scm @@ -0,0 +1,18 @@ +(function_definition +  body: (block)? @function.inside) @function.around + +(class_definition +  body: (block)? @class.inside) @class.around + +(parameters +  (_) @parameter.inside) +   +(lambda_parameters +  (_) @parameter.inside) + +(argument_list +  (_) @parameter.inside) + +(comment) @comment.inside + +(comment)+ @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/regex/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/regex/highlights.scm new file mode 100644 index 0000000..9376caa --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/regex/highlights.scm @@ -0,0 +1,53 @@ +; upstream: https://github.com/tree-sitter/tree-sitter-regex/blob/e1cfca3c79896ff79842f057ea13e529b66af636/queries/highlights.scm + +[ +  "(" +  ")" +  "(?" +  "(?:" +  "(?<" +  ">" +  "[" +  "]" +  "{" +  "}" +] @punctuation.bracket + +[ +  "*" +  "+" +  "|" +  "=" +  "<=" +  "!" +  "<!" +  "?" +] @operator + +[ +  (identity_escape) +  (control_letter_escape) +  (character_class_escape) +  (control_escape) +  (start_assertion) +  (end_assertion) +  (boundary_assertion) +  (non_boundary_assertion) +] @constant.character.escape + +(group_name) @property + +(count_quantifier +  [ +    (decimal_digits) @constant.numeric +    "," @punctuation.delimiter +  ]) + +(character_class +  [ +    "^" @operator +    (class_range "-" @operator) +  ]) + +(class_character) @constant.character +(pattern_character) @string diff --git a/helix-22.03-x86_64-windows/runtime/queries/rescript/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/rescript/highlights.scm new file mode 100644 index 0000000..a9cbeb5 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/rescript/highlights.scm @@ -0,0 +1,178 @@ +(comment) @comment + +; Identifiers +;------------ + +; Escaped identifiers like \"+." +((value_identifier) @function.macro + (#match? @function.macro "^\\.*$")) + +[ +  (type_identifier) +  (unit_type) +  "list" +] @type + +[ +  (variant_identifier) +  (polyvar_identifier) +] @constant + +(property_identifier) @variable.other.member +(module_identifier) @namespace + +(jsx_identifier) @tag +(jsx_attribute (property_identifier) @variable.parameter) + +; Parameters +;---------------- + +(list_pattern (value_identifier) @variable.parameter) +(spread_pattern (value_identifier) @variable.parameter) + +; String literals +;---------------- + +[ +  (string) +  (template_string) +] @string + +(template_substitution +  "${" @punctuation.bracket +  "}" @punctuation.bracket) @embedded + +(character) @constant.character +(escape_sequence) @constant.character.escape + +; Other literals +;--------------- + +[ +  (true) +  (false) +] @constant.builtin + +(number) @constant.numeric +(polyvar) @constant +(polyvar_string) @constant + +; Functions +;---------- + +[ + (formal_parameters (value_identifier)) + (labeled_parameter (value_identifier)) +] @variable.parameter + +(function parameter: (value_identifier) @variable.parameter) + +; Meta +;----- + +[ + "@" + "@@" + (decorator_identifier) +] @label + +(extension_identifier) @keyword +("%") @keyword + +; Misc +;----- + +(subscript_expression index: (string) @variable.other.member) +(polyvar_type_pattern "#" @constant) + +[ +  ("include") +  ("open") +] @keyword + +[ +  "as" +  "export" +  "external" +  "let" +  "module" +  "mutable" +  "private" +  "rec" +  "type" +  "and" +] @keyword + +[ +  "if" +  "else" +  "switch" +] @keyword + +[ +  "exception" +  "try" +  "catch" +  "raise" +] @keyword + +[ +  "." +  "," +  "|" +] @punctuation.delimiter + +[ +  "++" +  "+" +  "+." +  "-" +  "-." +  "*" +  "*." +  "/" +  "/." +  "<" +  "<=" +  "==" +  "===" +  "!" +  "!=" +  "!==" +  ">" +  ">=" +  "&&" +  "||" +  "=" +  ":=" +  "->" +  "|>" +  ":>" +  (uncurry) +] @operator + +[ +  "(" +  ")" +  "{" +  "}" +  "[" +  "]" +] @punctuation.bracket + +(polyvar_type +  [ +   "[" +   "[>" +   "[<" +   "]" +  ] @punctuation.bracket) + +[ +  "~" +  "?" +  "=>" +  "..." +] @punctuation + +(ternary_expression ["?" ":"] @operator) diff --git a/helix-22.03-x86_64-windows/runtime/queries/rescript/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/rescript/injections.scm new file mode 100644 index 0000000..201cce7 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/rescript/injections.scm @@ -0,0 +1,8 @@ +((comment) @injection.content + (#set! injection.language "comment")) + +((raw_js) @injection.content + (#set! injection.language "javascript")) + +((raw_gql) @injection.content + (#set! injection.language "graphql")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/rescript/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/rescript/textobjects.scm new file mode 100644 index 0000000..fa1c4ff --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/rescript/textobjects.scm @@ -0,0 +1,16 @@ +; Classes (modules) +;------------------ + +(module_declaration definition: ((_) @class.inside)) @class.around + +; Functions +;---------- + +(function body: (_) @function.inside) @function.around + +; Comments +;--------- + +(comment) @comment.inside + +(comment)+ @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/ruby/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/ruby/highlights.scm new file mode 100644 index 0000000..898f8f7 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ruby/highlights.scm @@ -0,0 +1,146 @@ +; Keywords + +[ +  "alias" +  "and" +  "begin" +  "break" +  "case" +  "class" +  "def" +  "do" +  "else" +  "elsif" +  "end" +  "ensure" +  "for" +  "if" +  "in" +  "module" +  "next" +  "or" +  "rescue" +  "retry" +  "return" +  "then" +  "unless" +  "until" +  "when" +  "while" +  "yield" +] @keyword + +((identifier) @keyword + (#match? @keyword "^(private|protected|public)$")) + +; Function calls + +((identifier) @function.method.builtin + (#eq? @function.method.builtin "require")) + +"defined?" @function.method.builtin + +(call +  method: [(identifier) (constant)] @function.method) + +; Function definitions + +(alias (identifier) @function.method) +(setter (identifier) @function.method) +(method name: [(identifier) (constant)] @function.method) +(singleton_method name: [(identifier) (constant)] @function.method) + +; Identifiers + +[ +  (class_variable) +  (instance_variable) +] @variable.other.member + +((identifier) @constant.builtin + (#match? @constant.builtin "^__(FILE|LINE|ENCODING)__$")) + +((constant) @constant + (#match? @constant "^[A-Z\\d_]+$")) + +(constant) @constructor + +(self) @variable.builtin +(super) @variable.builtin + +(block_parameter (identifier) @variable.parameter) +(block_parameters (identifier) @variable.parameter) +(destructured_parameter (identifier) @variable.parameter) +(hash_splat_parameter (identifier) @variable.parameter) +(lambda_parameters (identifier) @variable.parameter) +(method_parameters (identifier) @variable.parameter) +(splat_parameter (identifier) @variable.parameter) + +(keyword_parameter name: (identifier) @variable.parameter) +(optional_parameter name: (identifier) @variable.parameter) + +((identifier) @function.method + (#is-not? local)) +(identifier) @variable + +; Literals + +[ +  (string) +  (bare_string) +  (subshell) +  (heredoc_body) +  (heredoc_beginning) +] @string + +[ +  (simple_symbol) +  (delimited_symbol) +  (hash_key_symbol) +  (bare_symbol) +] @string.special.symbol + +(regex) @string.regexp +(escape_sequence) @constant.character.escape + +[ +  (integer) +  (float) +] @constant.numeric.integer + +[ +  (nil) +  (true) +  (false) +]@constant.builtin + +(interpolation +  "#{" @punctuation.special +  "}" @punctuation.special) @embedded + +(comment) @comment + +; Operators + +[ +"=" +"=>" +"->" +] @operator + +[ +  "," +  ";" +  "." +] @punctuation.delimiter + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +  "%w(" +  "%i(" +] @punctuation.bracket diff --git a/helix-22.03-x86_64-windows/runtime/queries/ruby/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/ruby/indents.toml new file mode 100644 index 0000000..b417751 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ruby/indents.toml @@ -0,0 +1,25 @@ +indent = [ +  "argument_list", +  "array", +  "begin", +  "block", +  "call", +  "class", +  "case", +  "do_block", +  "elsif", +  "if", +  "hash", +  "method", +  "module", +  "singleton_class", +  "singleton_method", +] + +outdent = [ +  ")", +  "}", +  "]", +  "end", +  "when", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/ruby/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/ruby/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ruby/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/ruby/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/ruby/locals.scm new file mode 100644 index 0000000..393caaf --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ruby/locals.scm @@ -0,0 +1,27 @@ +((method) @local.scope + (#set! local.scope-inherits false)) + +[ +  (lambda) +  (block) +  (do_block) +] @local.scope + +(block_parameter (identifier) @local.definition) +(block_parameters (identifier) @local.definition) +(destructured_parameter (identifier) @local.definition) +(hash_splat_parameter (identifier) @local.definition) +(lambda_parameters (identifier) @local.definition) +(method_parameters (identifier) @local.definition) +(splat_parameter (identifier) @local.definition) + +(keyword_parameter name: (identifier) @local.definition) +(optional_parameter name: (identifier) @local.definition) + +(identifier) @local.reference + +(assignment left: (identifier) @local.definition) +(operator_assignment left: (identifier) @local.definition) +(left_assignment_list (identifier) @local.definition) +(rest_assignment (identifier) @local.definition) +(destructured_left_assignment (identifier) @local.definition) diff --git a/helix-22.03-x86_64-windows/runtime/queries/ruby/tags.scm b/helix-22.03-x86_64-windows/runtime/queries/ruby/tags.scm new file mode 100644 index 0000000..47ba1eb --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/ruby/tags.scm @@ -0,0 +1,64 @@ +; Method definitions + +( +  (comment)* @doc +  . +  [ +    (method +      name: (_) @name) @definition.method +    (singleton_method +      name: (_) @name) @definition.method +  ] +  (#strip! @doc "^#\\s*") +  (#select-adjacent! @doc @definition.method) +) + +(alias +  name: (_) @name) @definition.method + +(setter +  (identifier) @ignore) + +; Class definitions + +( +  (comment)* @doc +  . +  [ +    (class +      name: [ +        (constant) @name +        (scope_resolution +          name: (_) @name) +      ]) @definition.class +    (singleton_class +      value: [ +        (constant) @name +        (scope_resolution +          name: (_) @name) +      ]) @definition.class +  ] +  (#strip! @doc "^#\\s*") +  (#select-adjacent! @doc @definition.class) +) + +; Module definitions + +( +  (module +    name: [ +      (constant) @name +      (scope_resolution +        name: (_) @name) +    ]) @definition.module +) + +; Calls + +(call method: (identifier) @name) @reference.call + +( +  [(identifier) (constant)] @name @reference.call +  (#is-not? local) +  (#not-match? @name "^(lambda|load|require|require_relative|__FILE__|__LINE__)$") +) diff --git a/helix-22.03-x86_64-windows/runtime/queries/rust/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/rust/highlights.scm new file mode 100644 index 0000000..26496c6 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/rust/highlights.scm @@ -0,0 +1,356 @@ +; ------- +; Tree-Sitter doesn't allow overrides in regards to captures, +; though it is possible to affect the child node of a captured +; node. Thus, the approach here is to flip the order so that +; overrides are unnecessary. +; ------- + + + +; ------- +; Types +; ------- + +; --- +; Primitives +; --- + +(escape_sequence) @constant.character.escape +(primitive_type) @type.builtin +(boolean_literal) @constant.builtin.boolean +(integer_literal) @constant.numeric.integer +(float_literal) @constant.numeric.float +(char_literal) @constant.character +[ +  (string_literal) +  (raw_string_literal) +] @string +[ +  (line_comment) +  (block_comment) +] @comment + +; --- +; Extraneous +; --- + +(self) @variable.builtin +(enum_variant (identifier) @type.enum.variant) + +(field_initializer +  (field_identifier) @variable.other.member) +(shorthand_field_initializer +  (identifier) @variable.other.member) +(shorthand_field_identifier) @variable.other.member + +(lifetime +  "'" @label +  (identifier) @label) +(loop_label +  (identifier) @type) + +; --- +; Punctuation +; --- + +[ +  "::" +  "." +  ";" +] @punctuation.delimiter + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +] @punctuation.bracket +(type_arguments +  [ +    "<" +    ">" +  ] @punctuation.bracket) +(type_parameters +  [ +    "<" +    ">" +  ] @punctuation.bracket) + +; --- +; Variables +; --- + +(let_declaration +  pattern: [ +    ((identifier) @variable) +    ((tuple_pattern +      (identifier) @variable)) +  ]) +   +; It needs to be anonymous to not conflict with `call_expression` further below.  +(_ + value: (field_expression +  value: (identifier)? @variable +  field: (field_identifier) @variable.other.member)) + +(arguments +  (identifier) @variable.parameter) +(parameter +	pattern: (identifier) @variable.parameter) +(closure_parameters +	(identifier) @variable.parameter) + + + +; ------- +; Keywords +; ------- + +(for_expression +  "for" @keyword.control) +((identifier) @keyword.control +  (#match? @keyword.control "^yield$")) +[ +  "while" +  "loop" +  "in" +  "break" +  "continue" + +  "match" +  "if" +  "else" +  "return" + +  "await" +] @keyword.control + +"use" @keyword.control.import +(mod_item "mod" @keyword.control.import !body) +(use_as_clause "as" @keyword.control.import) + +(type_cast_expression "as" @keyword.operator) + +[ +  (crate) +  (super) +  "as" +  "pub" +  "mod" +  "extern" + +  "fn" +  "struct" +  "enum" +  "impl" +  "where" +  "trait" +  "for" + +  "type" +  "union" +  "unsafe" +  "default" +  "macro_rules!" + +  "let" +  "ref" +  "move" + +  "dyn" +  "static" +  "const" +  "async" +] @keyword + +(mutable_specifier) @keyword.mut + +; TODO: variable.mut to highlight mutable identifiers via locals.scm + +; ------- +; Guess Other Types +; ------- + +((identifier) @constant + (#match? @constant "^[A-Z][A-Z\\d_]+$")) + +; --- +; PascalCase identifiers in call_expressions (e.g. `Ok()`) +; are assumed to be enum constructors. +; --- + +(call_expression +  function: [ +    ((identifier) @type.variant +      (#match? @type.variant "^[A-Z]")) +    (scoped_identifier +      name: ((identifier) @type.variant +        (#match? @type.variant "^[A-Z]"))) +  ]) + +; --- +; Assume that types in match arms are enums and not +; tuple structs. Same for `if let` expressions. +; --- + +(match_pattern +    (scoped_identifier +      name: (identifier) @constructor)) +(tuple_struct_pattern +    type: [ +      ((identifier) @constructor) +      (scoped_identifier   +        name: (identifier) @constructor) +      ]) +(struct_pattern +  type: [ +    ((type_identifier) @constructor) +    (scoped_type_identifier +      name: (type_identifier) @constructor) +    ]) + +; --- +; Other PascalCase identifiers are assumed to be structs. +; --- + +((identifier) @type +  (#match? @type "^[A-Z]")) + + + +; ------- +; Functions +; ------- + +(call_expression +  function: [ +    ((identifier) @function) +    (scoped_identifier +      name: (identifier) @function) +    (field_expression +      field: (field_identifier) @function) +  ]) +(generic_function +  function: [ +    ((identifier) @function) +    (scoped_identifier +      name: (identifier) @function) +    (field_expression +      field: (field_identifier) @function.method) +  ]) + +(function_item +  name: (identifier) @function) + +; --- +; Macros +; --- +(meta_item +  (identifier) @function.macro) + +(inner_attribute_item) @attribute + +(macro_definition +  name: (identifier) @function.macro) +(macro_invocation +  macro: [ +    ((identifier) @function.macro) +    (scoped_identifier +      name: (identifier) @function.macro) +  ] +  "!" @function.macro) + +(metavariable) @variable.parameter +(fragment_specifier) @type + + + +; ------- +; Operators +; ------- + +[ +  "*" +  "'" +  "->" +  "=>" +  "<=" +  "=" +  "==" +  "!" +  "!=" +  "%" +  "%=" +  "&" +  "&=" +  "&&" +  "|" +  "|=" +  "||" +  "^" +  "^=" +  "*" +  "*=" +  "-" +  "-=" +  "+" +  "+=" +  "/" +  "/=" +  ">" +  "<" +  ">=" +  ">>" +  "<<" +  ">>=" +  "@" +  ".." +  "..=" +  "'" +] @operator + + + +; ------- +; Paths +; ------- + +(use_declaration +  argument: (identifier) @namespace) +(use_wildcard +  (identifier) @namespace) +(extern_crate_declaration +  name: (identifier) @namespace) +(mod_item +  name: (identifier) @namespace) +(scoped_use_list +  path: (identifier)? @namespace) +(use_list +  (identifier) @namespace) +(use_as_clause +  path: (identifier)? @namespace +  alias: (identifier) @namespace) + +; --- +; Remaining Paths +; --- + +(scoped_identifier +  path: (identifier)? @namespace +  name: (identifier) @namespace) +(scoped_type_identifier +  path: (identifier) @namespace) + + + +; ------- +; Remaining Identifiers +; ------- + +"?" @special + +(type_identifier) @type +(identifier) @variable +(field_identifier) @variable.other.member diff --git a/helix-22.03-x86_64-windows/runtime/queries/rust/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/rust/indents.toml new file mode 100644 index 0000000..51a0cee --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/rust/indents.toml @@ -0,0 +1,28 @@ +indent = [ + "use_list", + "block", + "match_block", + "arguments", + "parameters", + "declaration_list", + "field_declaration_list", + "field_initializer_list", + "struct_pattern", + "tuple_pattern", + "unit_expression", + "enum_variant_list", + "call_expression", + "binary_expression", + "field_expression", + "tuple_expression", + "array_expression", + "where_clause", + "macro_invocation" +] + +outdent = [ + "where", + "}", + "]", + ")" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/rust/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/rust/injections.scm new file mode 100644 index 0000000..77c7080 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/rust/injections.scm @@ -0,0 +1,26 @@ +([(line_comment) (block_comment)] @injection.content + (#set! injection.language "comment")) + +((macro_invocation +  (token_tree) @injection.content) + (#set! injection.language "rust") + (#set! injection.include-children)) + +((macro_rule +  (token_tree) @injection.content) + (#set! injection.language "rust") + (#set! injection.include-children)) + +(call_expression +  function: (scoped_identifier +    path: (identifier) @_regex (#eq? @_regex "Regex") +    name: (identifier) @_new (#eq? @_new "new")) +  arguments: (arguments (raw_string_literal) @injection.content) +  (#set! injection.language "regex")) + +(call_expression +  function: (scoped_identifier +    path: (scoped_identifier (identifier) @_regex (#eq? @_regex "Regex") .) +    name: (identifier) @_new (#eq? @_new "new")) +  arguments: (arguments (raw_string_literal) @injection.content) +  (#set! injection.language "regex")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/rust/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/rust/locals.scm new file mode 100644 index 0000000..6428f9b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/rust/locals.scm @@ -0,0 +1,17 @@ +; Scopes + +(block) @local.scope + +; Definitions + +(parameter +  (identifier) @local.definition) + +(let_declaration +  pattern: (identifier) @local.definition) + +(closure_parameters (identifier)) @local.definition + +; References +(identifier) @local.reference + diff --git a/helix-22.03-x86_64-windows/runtime/queries/rust/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/rust/textobjects.scm new file mode 100644 index 0000000..086db67 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/rust/textobjects.scm @@ -0,0 +1,35 @@ +(function_item +  body: (_) @function.inside) @function.around + +(struct_item +  body: (_) @class.inside) @class.around + +(enum_item +  body: (_) @class.inside) @class.around + +(union_item +  body: (_) @class.inside) @class.around + +(trait_item +  body: (_) @class.inside) @class.around + +(impl_item +  body: (_) @class.inside) @class.around + +(parameters +  (_) @parameter.inside) + +(closure_parameters +  (_) @parameter.inside) + +(arguments +  (_) @parameter.inside) + +[ +  (line_comment) +  (block_comment) +] @comment.inside + +(line_comment)+ @comment.around + +(block_comment) @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/scala/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/scala/highlights.scm new file mode 100644 index 0000000..50a6e18 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/scala/highlights.scm @@ -0,0 +1,203 @@ +; CREDITS @stumash (stuart.mashaal@gmail.com) + +;; variables + + +((identifier) @variable.builtin + (#match? @variable.builtin "^this$")) + +(interpolation) @none + +; Assume other uppercase names constants. +; NOTE: In order to distinguish constants we highlight +; all the identifiers that are uppercased. But this solution +; is not suitable for all occurrences e.g. it will highlight +; an uppercased method as a constant if used with no params. +; Introducing highlighting for those specific cases, is probably +; best way to resolve the issue. +((identifier) @constant (#match? @constant "^[A-Z]")) + +;; types + +(type_identifier) @type + +(class_definition +  name: (identifier) @type) + +(object_definition +  name: (identifier) @type) + +(trait_definition +  name: (identifier) @type) + +(type_definition +  name: (type_identifier) @type) + +; method definition + +(class_definition +  body: (template_body +    (function_definition +      name: (identifier) @function.method))) +(object_definition +  body: (template_body +    (function_definition +      name: (identifier) @function.method))) +(trait_definition +  body: (template_body +    (function_definition +      name: (identifier) @function.method))) + +; imports + +(import_declaration +  path: (identifier) @namespace) +((stable_identifier (identifier) @namespace)) + +((import_declaration +  path: (identifier) @type) (#match? @type "^[A-Z]")) +((stable_identifier (identifier) @type) (#match? @type "^[A-Z]")) + +((import_selectors (identifier) @type) (#match? @type "^[A-Z]")) + +; method invocation + + +(call_expression +  function: (identifier) @function) + +(call_expression +  function: (field_expression +    field: (identifier) @function.method)) + +((call_expression +   function: (identifier) @variable.other.member) + (#match? @variable.other.member "^[A-Z]")) + +(generic_function +  function: (identifier) @function) + +( +  (identifier) @function.builtin +  (#match? @function.builtin "^super$") +) + +; function definitions + +(function_definition +  name: (identifier) @function) + +(parameter +  name: (identifier) @variable.parameter) + +; expressions + + +(field_expression field: (identifier) @variable.other.member) +(field_expression value: (identifier) @type + (#match? @type "^[A-Z]")) + +(infix_expression operator: (identifier) @operator) +(infix_expression operator: (operator_identifier) @operator) +(infix_type operator: (operator_identifier) @operator) +(infix_type operator: (operator_identifier) @operator) + +; literals +(boolean_literal) @constant.builtin.boolean +(integer_literal) @constant.numeric.integer +(floating_point_literal) @constant.numeric.float + + +(symbol_literal) @string.special.symbol +  +[ +(string) +(character_literal) +(interpolated_string_expression) +] @string + +(interpolation "$" @punctuation.special) + +;; keywords + +[ +  "abstract" +  "case" +  "class" +  "extends" +  "final" +  "finally" +;; `forSome` existential types not implemented yet +  "implicit" +  "lazy" +;; `macro` not implemented yet +  "object" +  "override" +  "package" +  "private" +  "protected" +  "sealed" +  "trait" +  "type" +  "val" +  "var" +  "with" +] @keyword + +(null_literal) @constant.builtin +(wildcard) @keyword + +;; special keywords + +"new" @keyword.operator + +[ + "else" + "if" + "match" + "try" + "catch" + "throw" +] @keyword.control.conditional + +[ + "(" + ")" + "[" + "]" + "{" + "}" +] @punctuation.bracket + +[ + "." + "," +] @punctuation.delimiter + +[ + "do" + "for" + "while" + "yield" +] @keyword.control.repeat + +"def" @keyword.function + +[ +  "=>" +  "<-" +  "@" +] @keyword.operator + +"import" @keyword.control.import + +"return" @keyword.control.return + +(comment) @comment + +;; `case` is a conditional keyword in case_block + +(case_block +  (case_clause ("case") @keyword.control.conditional)) + +(identifier) @variable
\ No newline at end of file diff --git a/helix-22.03-x86_64-windows/runtime/queries/scala/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/scala/indents.toml new file mode 100644 index 0000000..6de5484 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/scala/indents.toml @@ -0,0 +1,23 @@ + +indent = [ + "block", + "arguments", + "parameter", + "class_definition", + "trait_definition", + "object_definition", + "function_definition", + "val_definition", + "import_declaration", + "while_expression", + "do_while_expression", + "for_expression", + "try_expression", + "match_expression" +] + +outdent = [ + "}", + "]", + ")" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/scala/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/scala/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/scala/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/solidity/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/solidity/highlights.scm new file mode 100644 index 0000000..61c89ac --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/solidity/highlights.scm @@ -0,0 +1,189 @@ +(comment) @comment + +; Pragma +(pragma_directive) @tag +(solidity_version_comparison_operator ">=" @tag) +(solidity_version_comparison_operator "<=" @tag) +(solidity_version_comparison_operator "=" @tag) +(solidity_version_comparison_operator "~" @tag) +(solidity_version_comparison_operator "^" @tag) + + +; Literals +[ + (string) + (hex_string_literal) + (unicode_string_literal) + (yul_string_literal) +] @string +[ + (number_literal) + (yul_decimal_number) + (yul_hex_number) +] @constant.numeric +[ + (true) + (false) +] @constant.builtin + + +; Type +(type_name) @type +(primitive_type) @type +(struct_declaration struct_name: (identifier) @type) +(enum_declaration enum_type_name: (identifier) @type) +; Color payable in payable address conversion as type and not as keyword +(payable_conversion_expression "payable" @type) +(emit_statement . (identifier) @type) +; Handles ContractA, ContractB in function foo() override(ContractA, contractB) {} +(override_specifier (identifier) @type) +; Ensures that delimiters in mapping( ... => .. ) are not colored like types +(type_name "(" @punctuation.bracket "=>" @punctuation.delimiter ")" @punctuation.bracket) + + + +; Functions and parameters + +(function_definition +  function_name:  (identifier) @function) +(modifier_definition +  name:  (identifier) @function) +(yul_evm_builtin) @function.builtin + +; Use contructor coloring for special functions +(constructor_definition "constructor" @constructor) +(fallback_receive_definition "receive" @constructor) +(fallback_receive_definition "fallback" @constructor) + +(modifier_invocation (identifier) @function) + +; Handles expressions like structVariable.g(); +(call_expression . (member_expression (property_identifier) @function.method)) + +; Handles expressions like g(); +(call_expression . (identifier) @function) + +; Function parameters +(event_paramater name: (identifier) @variable.parameter) +(function_definition +  function_name:  (identifier) @variable.parameter) + +; Yul functions +(yul_function_call function: (yul_identifier) @function) + +; Yul function parameters +(yul_function_definition . (yul_identifier) @function (yul_identifier) @variable.parameter) + +(meta_type_expression "type" @keyword) + +(member_expression (property_identifier) @variable.other.member) +(property_identifier) @variable.other.member +(struct_expression ((identifier) @variable.other.member . ":")) +(enum_value) @variable.other.member + + +; Keywords +[ + "pragma" + "import" + "contract" + "interface" + "library" + "is" + "struct" + "enum" + "event" + "using" + "assembly" + "switch" + "case" + "default" + "break" + "continue" + "if" + "else" + "for" + "while" + "do" + "try" + "catch" + "return" + "emit" + "public" + "internal" + "private" + "external" + "pure" + "view" + "payable" + "modifier" + "returns" + "memory" + "storage" + "calldata" + "function" + "var" + (constant) + (virtual) + (override_specifier) + (yul_leave) +] @keyword + +(import_directive "as" @keyword) +(import_directive "from" @keyword) +(event_paramater "indexed" @keyword) + +; Punctuation + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +]  @punctuation.bracket + + +[ +  "." +  "," +] @punctuation.delimiter + + +; Operators + +[ +  "&&" +  "||" +  ">>" +  ">>>" +  "<<" +  "&" +  "^" +  "|" +  "+" +  "-" +  "*" +  "/" +  "%" +  "**" +  "<" +  "<=" +  "==" +  "!=" +  "!==" +  ">=" +  ">" +  "!" +  "~" +  "-" +  "+" +  "delete" +  "new" +  "++" +  "--" +] @operator + +(identifier) @variable +(yul_identifier) @variable diff --git a/helix-22.03-x86_64-windows/runtime/queries/svelte/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/svelte/highlights.scm new file mode 100644 index 0000000..22b0c55 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/svelte/highlights.scm @@ -0,0 +1,68 @@ +; Special identifiers +;-------------------- + +; TODO: +((element (start_tag (tag_name) @_tag) (text) @markup.heading) + (#match? @_tag "^(h[0-9]|title)$")) + +((element (start_tag (tag_name) @_tag) (text) @markup.bold) + (#match? @_tag "^(strong|b)$")) + +((element (start_tag (tag_name) @_tag) (text) @markup.italic) + (#match? @_tag "^(em|i)$")) + +; ((element (start_tag (tag_name) @_tag) (text) @markup.strike) +; (#match? @_tag "^(s|del)$")) + +((element (start_tag (tag_name) @_tag) (text) @markup.underline) + (#eq? @_tag "u")) + +((element (start_tag (tag_name) @_tag) (text) @markup.inline) + (#match? @_tag "^(code|kbd)$")) + +((element (start_tag (tag_name) @_tag) (text) @markup.link.url) + (#eq? @_tag "a")) + +((attribute +   (attribute_name) @_attr +   (quoted_attribute_value (attribute_value) @markup.link.url)) + (#match? @_attr "^(href|src)$")) + +(tag_name) @tag +(attribute_name) @variable.other.member +(erroneous_end_tag_name) @error +(comment) @comment + +[ +  (attribute_value) +  (quoted_attribute_value) +] @string + +[ +  (text) +  (raw_text_expr) +] @none + +[ +  (special_block_keyword) +  (then) +  (as) +] @keyword + +[ +  "{" +  "}" +] @punctuation.brackets + +"=" @operator + +[ +  "<" +  ">" +  "</" +  "/>" +  "#" +  ":" +  "/" +  "@" +] @punctuation.definition.tag diff --git a/helix-22.03-x86_64-windows/runtime/queries/svelte/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/svelte/indents.toml new file mode 100644 index 0000000..693db8e --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/svelte/indents.toml @@ -0,0 +1,18 @@ +indent = [ +  "element" +  "if_statement" +  "each_statement" +  "await_statement" +] + +outdent = [ +  "end_tag" +  "else_statement" +  "if_end_expr" +  "each_end_expr" +  "await_end_expr" +  ">" +  "/>" +] + +ignore = "comment"  diff --git a/helix-22.03-x86_64-windows/runtime/queries/svelte/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/svelte/injections.scm new file mode 100644 index 0000000..04e860c --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/svelte/injections.scm @@ -0,0 +1,30 @@ +; injections.scm +; -------------- +((style_element +  (raw_text) @injection.content) +  (#set! injection.language "css")) + +((attribute +   (attribute_name) @_attr +   (quoted_attribute_value (attribute_value) @css)) + (#eq? @_attr "style")) + +((script_element +  (raw_text) @injection.content) +  (#set! injection.language "javascript")) + +((raw_text_expr) @injection.content + (#set! injection.language "javascript")) + +( +  (script_element +    (start_tag +      (attribute +        (quoted_attribute_value (attribute_value) @_lang))) +    (raw_text) @injection.content) +  (#match? @_lang "(ts|typescript)") +  (#set! injection.language "typescript") +) + +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/tablegen/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/tablegen/highlights.scm new file mode 100644 index 0000000..8ade5ba --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/tablegen/highlights.scm @@ -0,0 +1,90 @@ +[ +  (comment) +  (multiline_comment) +] @comment + +[ +  "(" +  ")" +  "[" +  "]" +  "{" +  "}" +  "<" +  ">" +] @punctuation.bracket + +[ +  "," +  ";" +  "." +] @punctuation.delimiter + +[ +  "#" +  "-" +  "..." +  ":" +] @operator + +[ +  "=" +  "!cond" +  (operator_keyword) +] @function + +[ +  "true" +  "false" +] @constant.builtin.boolean + +[ +  "?" +] @constant.builtin + +(var) @variable + +(template_arg (identifier) @variable.parameter) + +(_ argument: (value (identifier) @variable.parameter)) + +(type) @type + +"code" @type.builtin + +(number) @constant.numeric.integer +[ +  (string_string) +  (code_string) +] @string + +(preprocessor) @keyword.directive + +[ +  "class" +  "field" +  "let" +  "defvar" +  "def" +  "defset" +  "defvar" +  "assert" +] @keyword + +[ +  "let" +  "in" +  "foreach" +  "if" +  "then" +  "else" +] @keyword.operator + +"include" @keyword.control.import + +[ +  "multiclass" +  "defm" +] @namespace + +(ERROR) @error diff --git a/helix-22.03-x86_64-windows/runtime/queries/tablegen/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/tablegen/indents.toml new file mode 100644 index 0000000..43532f4 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/tablegen/indents.toml @@ -0,0 +1,7 @@ +indent = [ +  "statement", +] + +outdent = [ +  "}", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/tablegen/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/tablegen/injections.scm new file mode 100644 index 0000000..0b476f8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/tablegen/injections.scm @@ -0,0 +1,2 @@ +([ (comment) (multiline_comment)] @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/tablegen/textobjects.scm b/helix-22.03-x86_64-windows/runtime/queries/tablegen/textobjects.scm new file mode 100644 index 0000000..89645b3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/tablegen/textobjects.scm @@ -0,0 +1,16 @@ +(class +  body: (_) @class.inside) @class.around + +(multiclass +  body: (_) @class.inside) @class.around + +(_ argument: _ @parameter.inside) + +[ +  (comment) +  (multiline_comment) +] @comment.inside + +(comment)+ @comment.around + +(multiline_comment) @comment.around diff --git a/helix-22.03-x86_64-windows/runtime/queries/toml/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/toml/highlights.scm new file mode 100644 index 0000000..2742b2b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/toml/highlights.scm @@ -0,0 +1,33 @@ +; Properties +;----------- + +(bare_key) @variable.other.member +(quoted_key) @string + +; Literals +;--------- + +(boolean) @constant.builtin.boolean +(comment) @comment +(string) @string +(integer) @constant.numeric.integer +(float) @constant.numeric.float +(offset_date_time) @string.special +(local_date_time) @string.special +(local_date) @string.special +(local_time) @string.special + +; Punctuation +;------------ + +"." @punctuation.delimiter +"," @punctuation.delimiter + +"=" @operator + +"[" @punctuation.bracket +"]" @punctuation.bracket +"[[" @punctuation.bracket +"]]" @punctuation.bracket +"{" @punctuation.bracket +"}" @punctuation.bracket diff --git a/helix-22.03-x86_64-windows/runtime/queries/toml/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/toml/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/toml/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/tsq/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/tsq/highlights.scm new file mode 100644 index 0000000..549895c --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/tsq/highlights.scm @@ -0,0 +1,46 @@ +; mark the string passed #match? as a regex +(((predicate_name) @function +  (capture) +  (string) @string.regexp) + (#eq? @function "#match?")) + +; highlight inheritance comments +((query . (comment) @keyword.directive) + (#match? @keyword.directive "^;\ +inherits *:")) + +[ +  "(" +  ")" +  "[" +  "]" +] @punctuation.bracket + +":" @punctuation.delimiter + +[ +  (one_or_more) +  (zero_or_one) +  (zero_or_more) +] @operator + +[ +  (wildcard_node) +  (anchor) +] @constant.builtin + +[ +  (anonymous_leaf) +  (string) +] @string + +(comment) @comment + +(field_name) @variable.other.member + +(capture) @label + +(predicate_name) @function + +(escape_sequence) @constant.character.escape + +(node_name) @variable diff --git a/helix-22.03-x86_64-windows/runtime/queries/tsq/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/tsq/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/tsq/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/tsx/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/tsx/highlights.scm new file mode 100644 index 0000000..1b61e36 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/tsx/highlights.scm @@ -0,0 +1 @@ +; inherits: typescript diff --git a/helix-22.03-x86_64-windows/runtime/queries/tsx/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/tsx/injections.scm new file mode 100644 index 0000000..1b61e36 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/tsx/injections.scm @@ -0,0 +1 @@ +; inherits: typescript diff --git a/helix-22.03-x86_64-windows/runtime/queries/twig/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/twig/highlights.scm new file mode 100644 index 0000000..2c95ab6 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/twig/highlights.scm @@ -0,0 +1,16 @@ +(comment_directive) @comment + +[ +  "{%" +  "{%-" +  "{%~" +  "%}" +  "-%}" +  "~%}" +  "{{" +  "{{-" +  "{{~" +  "}}" +  "-}}" +  "~}}" +] @keyword diff --git a/helix-22.03-x86_64-windows/runtime/queries/twig/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/twig/injections.scm new file mode 100644 index 0000000..f082273 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/twig/injections.scm @@ -0,0 +1,3 @@ +((content) @injection.content + (#set! injection.language "html") + (#set! injection.combined)) diff --git a/helix-22.03-x86_64-windows/runtime/queries/typescript/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/typescript/highlights.scm new file mode 100644 index 0000000..a3212a3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/typescript/highlights.scm @@ -0,0 +1,36 @@ +; inherits: javascript + +; Types + +(type_identifier) @type +(predefined_type) @type.builtin + +((identifier) @type + (#match? @type "^[A-Z]")) + +(type_arguments +  "<" @punctuation.bracket +  ">" @punctuation.bracket) + +; Variables + +(required_parameter (identifier) @variable.parameter) +(optional_parameter (identifier) @variable.parameter) + +; Keywords + +[ +  "abstract" +  "declare" +  "enum" +  "export" +  "implements" +  "interface" +  "keyof" +  "namespace" +  "private" +  "protected" +  "public" +  "type" +  "readonly" +] @keyword diff --git a/helix-22.03-x86_64-windows/runtime/queries/typescript/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/typescript/indents.toml new file mode 100644 index 0000000..9d711ab --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/typescript/indents.toml @@ -0,0 +1,28 @@ +indent = [ + "array", + "object", + "arguments", + "formal_parameters", + + "statement_block", + "object_pattern", + "class_body", + "named_imports", + + "binary_expression", + "return_statement", + "template_substitution", + # (expression_statement (call_expression)) + "export_clause", + + # typescript + "enum_declaration", + "interface_declaration", + "object_type", +] + +outdent = [ + "}", + "]", + ")" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/typescript/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/typescript/injections.scm new file mode 100644 index 0000000..ff0ddfa --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/typescript/injections.scm @@ -0,0 +1 @@ +; inherits: javascript diff --git a/helix-22.03-x86_64-windows/runtime/queries/typescript/locals.scm b/helix-22.03-x86_64-windows/runtime/queries/typescript/locals.scm new file mode 100644 index 0000000..aa6d6ff --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/typescript/locals.scm @@ -0,0 +1,2 @@ +(required_parameter (identifier) @local.definition) +(optional_parameter (identifier) @local.definition) diff --git a/helix-22.03-x86_64-windows/runtime/queries/typescript/tags.scm b/helix-22.03-x86_64-windows/runtime/queries/typescript/tags.scm new file mode 100644 index 0000000..ccae934 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/typescript/tags.scm @@ -0,0 +1,23 @@ +(function_signature +  name: (identifier) @name) @definition.function + +(method_signature +  name: (property_identifier) @name) @definition.method + +(abstract_method_signature +  name: (property_identifier) @name) @definition.method + +(abstract_class_declaration +  name: (type_identifier) @name) @definition.class + +(module +  name: (identifier) @name) @definition.module + +(interface_declaration +  name: (type_identifier) @name) @definition.interface + +(type_annotation +  (type_identifier) @name) @reference.type + +(new_expression +  constructor: (identifier) @name) @reference.class diff --git a/helix-22.03-x86_64-windows/runtime/queries/vue/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/vue/highlights.scm new file mode 100644 index 0000000..f90ae42 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/vue/highlights.scm @@ -0,0 +1,21 @@ +(tag_name) @tag +(end_tag) @tag + +(directive_name) @keyword +(directive_argument) @constant + +(attribute +  (attribute_name) @attribute +  (quoted_attribute_value +    (attribute_value) @string) +) + +(comment) @comment + +[ +  "<" +  ">" +  "</" +  "{{" +  "}}" +] @punctuation.bracket
\ No newline at end of file diff --git a/helix-22.03-x86_64-windows/runtime/queries/vue/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/vue/injections.scm new file mode 100644 index 0000000..73df868 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/vue/injections.scm @@ -0,0 +1,20 @@ +(directive_attribute +  (directive_name) @keyword +  (quoted_attribute_value +    (attribute_value) @injection.content) + (#set! injection.language "javascript")) + +((interpolation +  (raw_text) @injection.content) + (#set! injection.language "javascript")) + +((script_element +  (raw_text) @injection.content) + (#set! injection.language "javascript")) + +((style_element +  (raw_text) @injection.content) + (#set! injection.language "css")) + +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/wgsl/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/wgsl/highlights.scm new file mode 100644 index 0000000..7fbc87d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/wgsl/highlights.scm @@ -0,0 +1,102 @@ +(const_literal) @constant.numeric + +(type_declaration) @type + +(function_declaration +    (identifier) @function) + +(struct_declaration +    (identifier) @type) + +(type_constructor_or_function_call_expression +    (type_declaration) @function) + +(parameter +    (variable_identifier_declaration (identifier) @variable.parameter)) + +[ +    "struct" +    "bitcast" +    ; "block" +    "discard" +    "enable" +    "fallthrough" +    "fn" +    "let" +    "private" +    "read" +    "read_write" +    "return" +    "storage" +    "type" +    "uniform" +    "var" +    "workgroup" +    "write" +    (texel_format) +] @keyword ; TODO reserved keywords + +[ +    (true) +    (false) +] @constant.builtin.boolean + +[ "," "." ":" ";" ] @punctuation.delimiter + +;; brackets +[ +    "(" +    ")" +    "[" +    "]" +    "{" +    "}" +] @punctuation.bracket + +[ +    "loop" +    "for" +    "break" +    "continue" +    "continuing" +] @keyword.control.repeat + +[ +    "if" +    "else" +    "elseif" +    "switch" +    "case" +    "default" +] @keyword.control.conditional + +[ +    "&" +    "&&" +    "/" +    "!" +    "=" +    "==" +    "!=" +    ">" +    ">=" +    ">>" +    "<" +    "<=" +    "<<" +    "%" +    "-" +    "+" +    "|" +    "||" +    "*" +    "~" +    "^" +] @operator + +(attribute +    (identifier) @variable.other.member) + +(comment) @comment + +(ERROR) @error diff --git a/helix-22.03-x86_64-windows/runtime/queries/wgsl/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/wgsl/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/wgsl/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/yaml/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/yaml/highlights.scm new file mode 100644 index 0000000..e4fed27 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/yaml/highlights.scm @@ -0,0 +1,43 @@ +(block_mapping_pair +  key: (flow_node [(double_quote_scalar) (single_quote_scalar)] @variable.other.member)) +(block_mapping_pair +  key: (flow_node (plain_scalar (string_scalar) @variable.other.member))) + +(flow_mapping +  (_ key: (flow_node [(double_quote_scalar) (single_quote_scalar)] @variable.other.member))) +(flow_mapping +  (_ key: (flow_node (plain_scalar (string_scalar) @variable.other.member)))) + +(boolean_scalar) @constant.builtin.boolean +(null_scalar) @constant.builtin +(double_quote_scalar) @string +(single_quote_scalar) @string +(block_scalar) @string +(string_scalar) @string +(escape_sequence) @constant.character.escape +(integer_scalar) @constant.numeric.integer +(float_scalar) @constant.numeric.float +(comment) @comment +(anchor_name) @type +(alias_name) @type +(tag) @type +(yaml_directive) @keyword +(ERROR) @error + +[ +"," +"-" +":" +">" +"?" +"|" +] @punctuation.delimiter + +[ +"[" +"]" +"{" +"}" +] @punctuation.bracket + +["*" "&" "---" "..."] @punctuation.special diff --git a/helix-22.03-x86_64-windows/runtime/queries/yaml/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/yaml/indents.toml new file mode 100644 index 0000000..ddc3578 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/yaml/indents.toml @@ -0,0 +1,3 @@ +indent = [ +    "block_mapping_pair", +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/yaml/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/yaml/injections.scm new file mode 100644 index 0000000..321c90a --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/yaml/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/queries/zig/highlights.scm b/helix-22.03-x86_64-windows/runtime/queries/zig/highlights.scm new file mode 100644 index 0000000..62c99ac --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/zig/highlights.scm @@ -0,0 +1,234 @@ +[ +  (container_doc_comment) +  (doc_comment) +  (line_comment) +] @comment + +[ +  variable: (IDENTIFIER) +  variable_type_function: (IDENTIFIER) +] @variable + +parameter: (IDENTIFIER) @variable.parameter + +[ +  field_member: (IDENTIFIER) +  field_access: (IDENTIFIER) +] @variable.other.member + +;; assume TitleCase is a type +( +  [ +    variable_type_function: (IDENTIFIER) +    field_access: (IDENTIFIER) +    parameter: (IDENTIFIER) +  ] @type +  (#match? @type "^[A-Z]([a-z]+[A-Za-z0-9]*)*$") +) +;; assume camelCase is a function +( +  [ +    variable_type_function: (IDENTIFIER) +    field_access: (IDENTIFIER) +    parameter: (IDENTIFIER) +  ] @function +  (#match? @function "^[a-z]+([A-Z][a-z0-9]*)+$") +) + +;; assume all CAPS_1 is a constant +( +  [ +    variable_type_function: (IDENTIFIER) +    field_access: (IDENTIFIER) +  ] @constant +  (#match? @constant "^[A-Z][A-Z_0-9]+$") +) + +[ +  function_call: (IDENTIFIER) +  function: (IDENTIFIER) +] @function + +exception: "!" @function.macro + +( +  (IDENTIFIER) @variable.builtin +  (#eq? @variable.builtin "_") +) + +(PtrTypeStart "c" @variable.builtin) + +( +  (ContainerDeclType +    [ +      (ErrorUnionExpr) +      "enum" +    ] +  ) +  (ContainerField (IDENTIFIER) @constant) +) + +field_constant: (IDENTIFIER) @constant + +(BUILTINIDENTIFIER) @function.builtin + +((BUILTINIDENTIFIER) @keyword.control.import +  (#any-of? @keyword.control.import "@import" "@cImport")) + +(INTEGER) @constant.numeric.integer + +(FLOAT) @constant.numeric.float + +[ +  (LINESTRING) +  (STRINGLITERALSINGLE) +] @string + +(CHAR_LITERAL) @constant.character +(EscapeSequence) @constant.character.escape +(FormatSequence) @string.special + +[ +  "allowzero" +  "volatile" +  "anytype" +  "anyframe" +  (BuildinTypeExpr) +] @type.builtin + +(BreakLabel (IDENTIFIER) @label) +(BlockLabel (IDENTIFIER) @label) + +[ +  "true" +  "false" +] @constant.builtin.boolean + +[ +  "undefined" +  "unreachable" +  "null" +] @constant.builtin + +[ +  "else" +  "if" +  "switch" +] @keyword.control.conditional + +[ +  "for" +  "while" +] @keyword.control.repeat + +[ +  "or" +  "and" +  "orelse" +] @operator + +[ +  "struct" +  "enum" +  "union" +  "error" +  "packed" +  "opaque" +] @keyword + +[ +  "try" +  "error" +  "catch" +] @function.macro + +; VarDecl +[ +  "threadlocal" +  "fn" +] @keyword.function + +[ +  "const" +  "var" +  "test" +  "pub" +  "usingnamespace" +] @keyword + +[ +  "return" +  "break" +  "continue" +] @keyword.control + +; Macro +[ +  "defer" +  "errdefer" +  "async" +  "nosuspend" +  "await" +  "suspend" +  "resume" +  "export" +  "extern" +] @function.macro + +; PrecProc +[ +  "comptime" +  "inline" +  "noinline" +  "asm" +  "callconv" +  "noalias" +] @keyword.directive + +[ +  "linksection" +  "align" +] @function.builtin + +[ +  (CompareOp) +  (BitwiseOp) +  (BitShiftOp) +  (AdditionOp) +  (AssignOp) +  (MultiplyOp) +  (PrefixOp) +  "*" +  "**" +  "->" +  ".?" +  ".*" +  "?" +] @operator + +[ +  ";" +  "." +  "," +  ":" +] @punctuation.delimiter + +[ +  ".." +  "..." +] @punctuation.special + +[ +  "[" +  "]" +  "(" +  ")" +  "{" +  "}" +  (Payload "|") +  (PtrPayload "|") +  (PtrIndexPayload "|") +] @punctuation.bracket + +; Error +(ERROR) @keyword diff --git a/helix-22.03-x86_64-windows/runtime/queries/zig/indents.toml b/helix-22.03-x86_64-windows/runtime/queries/zig/indents.toml new file mode 100644 index 0000000..36ba8e5 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/zig/indents.toml @@ -0,0 +1,16 @@ +indent = [ + "Block", + "BlockExpr", + "ContainerDecl", + "SwitchExpr", + "AssignExpr", + "ErrorUnionExpr", + "Statement", + "InitList" +] + +outdent = [ + "}", + "]", + ")" +] diff --git a/helix-22.03-x86_64-windows/runtime/queries/zig/injections.scm b/helix-22.03-x86_64-windows/runtime/queries/zig/injections.scm new file mode 100644 index 0000000..3df9589 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/queries/zig/injections.scm @@ -0,0 +1,2 @@ +([(line_comment) (doc_comment)] @injection.content + (#set! injection.language "comment")) diff --git a/helix-22.03-x86_64-windows/runtime/themes/README.md b/helix-22.03-x86_64-windows/runtime/themes/README.md new file mode 100644 index 0000000..1c9c5ae --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/README.md @@ -0,0 +1,9 @@ +# User submitted themes + +If you submit a theme, please include a comment at the top with your name and email address: + +```toml +# Author : Name <email@my.domain> +``` + +We have a preview page for themes on our [wiki](https://github.com/helix-editor/helix/wiki/Themes)! diff --git a/helix-22.03-x86_64-windows/runtime/themes/base16_default_dark.toml b/helix-22.03-x86_64-windows/runtime/themes/base16_default_dark.toml new file mode 100644 index 0000000..c8dd1b0 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/base16_default_dark.toml @@ -0,0 +1,73 @@ +# Author: RayGervais <raygervais@hotmail.ca> + +"ui.background" = { bg = "base00" } +"ui.menu" = { fg = "base05", bg = "base01" } +"ui.menu.selected" = { fg = "base01", bg = "base04" } +"ui.linenr" = { fg = "base03", bg = "base01" } +"ui.popup" = { bg = "base01" } +"ui.window" = { bg = "base01" } +"ui.linenr.selected" = { fg = "base04", bg = "base01", modifiers = ["bold"] } +"ui.selection" = { bg = "base02" } +"comment" = { fg = "base03", modifiers = ["italic"] } +"ui.statusline" = { fg = "base04", bg = "base01" } +"ui.help" = { fg = "base04", bg = "base01" } +"ui.cursor" = { fg = "base04", modifiers = ["reversed"] } +"ui.cursor.primary" = { fg = "base05", modifiers = ["reversed"] } +"ui.text" = "base05" +"operator" = "base05" +"ui.text.focus" = "base05" +"variable" = "base08" +"constant.numeric" = "base09" +"constant" = "base09" +"attributes" = "base09" +"type" = "base0A" +"ui.cursor.match" = { fg = "base0A", modifiers = ["underlined"] } +"string"  = "base0B" +"variable.other.member" = "base0B" +"constant.character.escape" = "base0C" +"function" = "base0D" +"constructor" = "base0D" +"special" = "base0D" +"keyword" = "base0E" +"label" = "base0E" +"namespace" = "base0E" +"ui.help" = { fg = "base06", bg = "base01" } + +"markup.heading" = "base0D" +"markup.list" = "base08" +"markup.bold" = { fg = "base0A", modifiers = ["bold"] } +"markup.italic" = { fg = "base0E", modifiers = ["italic"] } +"markup.link.url" = { fg = "base09", modifiers = ["underlined"] } +"markup.link.text" = "base08" +"markup.quote" = "base0C" +"markup.raw" = "base0B" + +"diff.plus" = "base0B" +"diff.delta" = "base09" +"diff.minus" = "base08" + +"diagnostic" = { modifiers = ["underlined"] } +"ui.gutter" = { bg = "base01" } +"info" = "base0D" +"hint" = "base03" +"debug" = "base03" +"warning" = "base09" +"error" = "base08" + +[palette] +base00 = "#181818" # Default Background +base01 = "#282828" # Lighter Background (Used for status bars, line number and folding marks) +base02 = "#383838" # Selection Background +base03 = "#585858" # Comments, Invisibles, Line Highlighting +base04 = "#b8b8b8" # Dark Foreground (Used for status bars) +base05 = "#d8d8d8" # Default Foreground, Caret, Delimiters, Operators +base06 = "#e8e8e8" # Light Foreground (Not often used) +base07 = "#f8f8f8" # Light Background (Not often used) +base08 = "#ab4642" # Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted +base09 = "#dc9656" # Integers, Boolean, Constants, XML Attributes, Markup Link Url +base0A = "#f7ca88" # Classes, Markup Bold, Search Text Background +base0B = "#a1b56c" # Strings, Inherited Class, Markup Code, Diff Inserted +base0C = "#86c1b9" # Support, Regular Expressions, Escape Characters, Markup Quotes +base0D = "#7cafc2" # Functions, Methods, Attribute IDs, Headings +base0E = "#ba8baf" # Keywords, Storage, Selector, Markup Italic, Diff Changed +base0F = "#a16946" # Deprecated, Opening/Closing Embedded Language Tags, e.g. <?php ?> diff --git a/helix-22.03-x86_64-windows/runtime/themes/base16_default_light.toml b/helix-22.03-x86_64-windows/runtime/themes/base16_default_light.toml new file mode 100644 index 0000000..50be51b --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/base16_default_light.toml @@ -0,0 +1,73 @@ +# Author: NNB <nnbnh@protonmail.com> + +"ui.background" = { bg = "base00" } +"ui.menu" = { fg = "base05", bg = "base01" } +"ui.menu.selected" = { fg = "base01", bg = "base04" } +"ui.linenr" = { fg = "base03", bg = "base01" } +"ui.popup" = { bg = "base01" } +"ui.window" = { bg = "base01" } +"ui.linenr.selected" = { fg = "base04", bg = "base01", modifiers = ["bold"] } +"ui.selection" = { bg = "base02" } +"comment" = { fg = "base03", modifiers = ["italic"] } +"ui.statusline" = { fg = "base04", bg = "base01" } +"ui.help" = { fg = "base04", bg = "base01" } +"ui.cursor" = { fg = "base04", modifiers = ["reversed"] } +"ui.cursor.primary" = { fg = "base05", modifiers = ["reversed"] } +"ui.text" = "base05" +"operator" = "base05" +"ui.text.focus" = "base05" +"variable" = "base08" +"constant.numeric" = "base09" +"constant" = "base09" +"attributes" = "base09" +"type" = "base0A" +"ui.cursor.match" = { fg = "base0A", modifiers = ["underlined"] } +"string"  = "base0B" +"variable.other.member" = "base0B" +"constant.character.escape" = "base0C" +"function" = "base0D" +"constructor" = "base0D" +"special" = "base0D" +"keyword" = "base0E" +"label" = "base0E" +"namespace" = "base0E" +"ui.help" = { fg = "base06", bg = "base01" } + +"markup.heading" = "base0D" +"markup.list" = "base08" +"markup.bold" = { fg = "base0A", modifiers = ["bold"] } +"markup.italic" = { fg = "base0E", modifiers = ["italic"] } +"markup.link.url" = { fg = "base09", modifiers = ["underlined"] } +"markup.link.text" = "base08" +"markup.quote" = "base0C" +"markup.raw" = "base0B" + +"diff.plus" = "base0B" +"diff.delta" = "base09" +"diff.minus" = "base08" + +"diagnostic" = { modifiers = ["underlined"] } +"ui.gutter" = { bg = "base01" } +"info" = "base0D" +"hint" = "base03" +"debug" = "base03" +"warning" = "base09" +"error" = "base08" + +[palette] +base00 = "#f8f8f8" # Default Background +base01 = "#e8e8e8" # Lighter Background (Used for status bars, line number and folding marks) +base02 = "#d8d8d8" # Selection Background +base03 = "#b8b8b8" # Comments, Invisibles, Line Highlighting +base04 = "#585858" # Dark Foreground (Used for status bars) +base05 = "#383838" # Default Foreground, Caret, Delimiters, Operators +base06 = "#282828" # Light Foreground (Not often used) +base07 = "#181818" # Light Background (Not often used) +base08 = "#ab4642" # Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted +base09 = "#dc9656" # Integers, Boolean, Constants, XML Attributes, Markup Link Url +base0A = "#f7ca88" # Classes, Markup Bold, Search Text Background +base0B = "#a1b56c" # Strings, Inherited Class, Markup Code, Diff Inserted +base0C = "#86c1b9" # Support, Regular Expressions, Escape Characters, Markup Quotes +base0D = "#7cafc2" # Functions, Methods, Attribute IDs, Headings +base0E = "#ba8baf" # Keywords, Storage, Selector, Markup Italic, Diff Changed +base0F = "#a16946" # Deprecated, Opening/Closing Embedded Language Tags, e.g. <?php ?> diff --git a/helix-22.03-x86_64-windows/runtime/themes/base16_terminal.toml b/helix-22.03-x86_64-windows/runtime/themes/base16_terminal.toml new file mode 100644 index 0000000..a6ca71d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/base16_terminal.toml @@ -0,0 +1,51 @@ +# Author: NNB <nnbnh@protonmail.com> + +"ui.menu" = { fg = "light-gray", bg = "gray" } +"ui.menu.selected" = { modifiers = ["reversed"] } +"ui.linenr" = { fg = "light-gray", bg = "black" } +"ui.popup" = { bg = "black" } +"ui.window" = { bg = "black" } +"ui.linenr.selected" = { fg = "white", bg = "black", modifiers = ["bold"] } +"ui.selection" = { fg = "gray", modifiers = ["reversed"] } +"comment" = { fg = "light-gray", modifiers = ["italic"] } +"ui.statusline" = { fg = "white", bg = "black" } +"ui.statusline.inactive" = { fg = "gray", bg = "black" } +"ui.help" = { fg = "white", bg = "black" } +"ui.cursor" = { fg = "light-gray", modifiers = ["reversed"] } +"ui.cursor.primary" = { fg = "light-white", modifiers = ["reversed"] } +"variable" = "light-red" +"constant.numeric" = "yellow" +"constant" = "yellow" +"attributes" = "yellow" +"type" = "light-yellow" +"ui.cursor.match" = { fg = "light-yellow", modifiers = ["underlined"] } +"string"  = "light-green" +"variable.other.member" = "light-green" +"constant.character.escape" = "light-cyan" +"function" = "light-blue" +"constructor" = "light-blue" +"special" = "light-blue" +"keyword" = "light-magenta" +"label" = "light-magenta" +"namespace" = "light-magenta" + +"markup.heading" = "light-blue" +"markup.list" = "light-red" +"markup.bold" = { fg = "light-yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "light-magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "light-red" +"markup.quote" = "light-cyan" +"markup.raw" = "light-green" + +"diff.plus" = "light-green" +"diff.delta" = "yellow" +"diff.minus" = "light-red" + +"diagnostic" = { modifiers = ["underlined"] } +"ui.gutter" = { bg = "black" } +"info" = "light-blue" +"hint" = "gray" +"debug" = "gray" +"warning" = "yellow" +"error" = "light-red" diff --git a/helix-22.03-x86_64-windows/runtime/themes/bogster.toml b/helix-22.03-x86_64-windows/runtime/themes/bogster.toml new file mode 100644 index 0000000..e2b4277 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/bogster.toml @@ -0,0 +1,69 @@ +# Author : Wojciech Kępka <wojciech@wkepka.dev> + +"attribute" = "#dc7759" +"keyword" = { fg = "#dcb659", modifiers = ["bold"] } +"keyword.directive" = "#dcb659" +"namespace" = "#d32c5d" +"punctuation" = "#dc7759" +"punctuation.delimiter" = "#dc7759" +"operator" = { fg = "#dc7759", modifiers = ["bold"] } +"special" = "#7fdc59" +"variable.other.member" = "#c6b8ad" +"variable" = "#c6b8ad" +"variable.parameter" = "#c6b8ad" +"type" = "#dc597f" +"type.builtin" = { fg = "#d32c5d", modifiers = ["bold"] } +"constructor" = "#dc597f" +"function" = "#59dcd8" +"function.macro" = { fg = "#dc7759", modifiers = ["bold"] } +"function.builtin" = { fg = "#59dcd8", modifiers = ["bold"] } +"comment" = "#627d9d" +"variable.builtin" = "#c6b8ad" +"constant" = "#59dcb7" +"constant.builtin" = "#59dcb7" +"string" = "#59dcb7" +"constant.numeric" = "#59c0dc" +"constant.character.escape" = { fg = "#7fdc59", modifiers = ["bold"] } +"label" = "#59c0dc" + +"module" = "#d32c5d" + +# TODO +"markup.heading" = "blue" +"markup.list" = "red" +"markup.bold" = { fg = "yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "red" +"markup.quote" = "cyan" +"markup.raw" = "green" + +"diff.plus" = "#59dcb7" +"diff.delta" = "#dc7759" +"diff.minus" = "#dc597f" + +"ui.background" = { bg = "#161c23" } +"ui.linenr" = { fg = "#415367" } +"ui.linenr.selected" = { fg = "#e5ded6" }  # TODO +"ui.statusline" = { fg = "#e5ded6", bg = "#232d38" } +"ui.statusline.inactive" = { fg = "#c6b8ad", bg = "#232d38" } +"ui.popup" = { bg = "#232d38" } +"ui.window" = { bg = "#232d38" } +"ui.help" = { bg = "#232d38", fg = "#e5ded6" } + +"ui.text" = { fg = "#e5ded6" } +"ui.text.focus" = { fg = "#e5ded6", modifiers= ["bold"] } + +"ui.selection" = { bg = "#313f4e" } +# "ui.cursor.match"  # TODO might want to override this because dimmed is not widely supported +"ui.cursor.match" = { fg = "#313f4e", bg = "#dc7759" } +"ui.cursor" = { fg = "#ABB2BF", modifiers = ["reversed"] } +"ui.menu.selected" = { fg = "#e5ded6", bg = "#313f4e" } + +"warning" = "#dc7759" +"error" = "#dc597f" +"info" = "#59dcb7" +"hint" = "#59c0dc" + +# make diagnostic underlined, to distinguish with selection text. +diagnostic = { modifiers = ["underlined"] } diff --git a/helix-22.03-x86_64-windows/runtime/themes/dark_plus.toml b/helix-22.03-x86_64-windows/runtime/themes/dark_plus.toml new file mode 100644 index 0000000..ab7c16e --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/dark_plus.toml @@ -0,0 +1,114 @@ +# Author: Shafkath Shuhan <shafkathshuhannyc@gmail.com> + +"namespace" = { fg = "type" } +"module" = { fg = "type" } + +"type" = { fg = "type" } +"type.builtin" = { fg = "type" } +"type.enum.variant" = { fg = "constant" }  +"constructor" = { fg = "constant" } +"variable.other.member" = { fg = "variable" } + +"keyword" = { fg = "keyword" } +"keyword.directive" = { fg = "keyword" } +"keyword.control" = { fg = "special" } +"label" = { fg = "keyword" } + +"special" = { fg = "text" } +"operator" = { fg = "text" } + +"punctuation" = { fg = "text" } +"punctuation.delimiter" = { fg = "text" } + +"variable" = { fg = "variable" } +"variable.parameter" = { fg = "variable" } +"variable.builtin" = { fg = "keyword" } +"constant" = { fg = "constant" } +"constant.builtin" = { fg = "keyword" } + +"function" = { fg = "fn_declaration" } +"function.builtin" = { fg = "fn_declaration" } +"function.macro" = { fg = "keyword" } +"attribute" = { fg = "fn_declaration" } + +"comment" = { fg = "dark_green" } + +"string" = { fg = "orange" } +"constant.character" = { fg = "orange" } +"string.regexp" = { fg = "gold" } +"constant.numeric" = { fg = "pale_green" } +"constant.character.escape" = { fg = "gold" } + +# TODO +"markup.heading" = "blue" +"markup.list" = "red" +"markup.bold" = { fg = "yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "red" +"markup.quote" = "cyan" +"markup.raw" = "green" + +"diff.plus" = { fg = "pale_green" } +"diff.delta" = { fg = "gold" } +"diff.minus" = { fg = "red" } + +"ui.background" = { fg = "light_gray", bg = "dark_gray2" } + +"ui.window" = { bg = "widget" } +"ui.popup" = { bg = "widget" } +"ui.help" = { bg = "widget" } +"ui.menu.selected" = { bg = "widget" } + +# TODO: Alternate bg colour for `ui.cursor.match` and `ui.selection`. +"ui.cursor" = { fg = "cursor", modifiers = ["reversed"] } +"ui.cursor.primary" = { fg = "cursor", modifiers = ["reversed"] } +"ui.cursor.match" = { bg = "#3a3d41", modifiers = ["underlined"] } + +"ui.selection" = { bg = "#3a3d41" } +"ui.selection.primary" = { bg = "dark_blue" } + +"ui.linenr" = { fg = "dark_gray" } +"ui.linenr.selected" = { fg = "light_gray2" } + +"ui.statusline" = { fg = "white", bg = "blue" } +"ui.statusline.inactive" = { fg = "white", bg = "blue" } + +"ui.text" = { fg = "text", bg = "background" } +"ui.text.focus" = { fg = "white" } + +"warning" = { fg = "gold2" } +"error" = { fg = "red" } +"info" = { fg = "light_blue" } +"hint" = { fg = "light_gray3" } + +diagnostic = { modifiers = ["underlined"] } + +[palette] +white = "#ffffff" +orange = "#ce9178" +gold = "#d7ba7d" +gold2 = "#cca700" +pale_green = "#b5cea8" +dark_green = "#6A9955" +light_gray = "#d4d4d4" +light_gray2 = "#c6c6c6" +light_gray3 = "#eeeeee" +dark_gray = "#858585" +dark_gray2 = "#1e1e1e" +blue = "#007acc" +light_blue = "#75beff" +dark_blue = "#264f78" +red = "#ff1212" + +type = "#4EC9B0" +keyword = "#569CD6" +special = "#C586C0" +variable = "#9CDCFE" +fn_declaration = "#DCDCAA" +constant = "#4FC1FF" + +background = "#1e1e1e" +text = "#d4d4d4" +cursor = "#a6a6a6" +widget = "#252526" diff --git a/helix-22.03-x86_64-windows/runtime/themes/dracula.toml b/helix-22.03-x86_64-windows/runtime/themes/dracula.toml new file mode 100644 index 0000000..1db25d8 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/dracula.toml @@ -0,0 +1,63 @@ +# Author : Sebastian Zivota <loewenheim@mailbox.org> +"comment" = { fg = "comment" } +"constant" = { fg = "purple" } +"constant.character.escape" = { fg = "pink" } +"function" = { fg = "green" } +"keyword" = { fg = "pink" } +"operator" = { fg = "pink" } +"punctuation" = { fg = "foreground" } +"string" = { fg = "yellow" } +"string.regexp" = { fg = "red" } +"tag" = { fg = "pink" } +"type" = { fg = "cyan", modifiers = ["italic"] } +"type.enum.variant" = { fg = "foreground", modifiers = ["italic"] } +"variable" = { fg = "foreground" } +"variable.builtin" = { fg = "cyan", modifiers = ["italic"] } +"variable.parameter" = { fg ="orange", modifiers = ["italic"] } + +"diff.plus" = { fg = "green" } +"diff.delta" = { fg = "orange" } +"diff.minus" = { fg = "red" } + +"ui.background" = { fg = "foreground", bg = "background" } +"ui.cursor" =  { fg = "background", bg = "orange", modifiers = ["dim"] } +"ui.cursor.match" = { fg = "green", modifiers = ["underlined"] } +"ui.cursor.primary" = { fg = "background", bg = "cyan", modifier = ["dim"] } +"ui.help" = { fg = "foreground", bg = "background_dark" } +"ui.linenr" = { fg = "comment" } +"ui.linenr.selected" = { fg = "foreground" } +"ui.menu" = { fg = "foreground", bg = "background_dark" } +"ui.menu.selected" = { fg = "cyan", bg = "background_dark" } +"ui.popup" = { fg = "foreground", bg = "background_dark" } +"ui.selection" = { fg = "background", bg = "purple", modifiers = ["dim"] } +"ui.selection.primary" = { fg = "background", bg = "pink" } +"ui.statusline" = { fg = "foreground", bg = "background_dark" } +"ui.statusline.inactive" = { fg = "comment", bg = "background_dark" } +"ui.text" = { fg = "foreground" } +"ui.text.focus" = { fg = "cyan" } +"ui.window" = { fg = "foreground" } + +"error" = { fg = "red" } +"warning" = { fg = "cyan" } + +"markup.heading" = { fg = "purple", modifiers = ["bold"] } +"markup.list" = "cyan" +"markup.bold" = { fg = "orange", modifiers = ["bold"] } +"markup.italic" = { fg = "yellow", modifiers = ["italic"] } +"markup.link.url" = "cyan" +"markup.link.text" = "pink" +"markup.quote" = { fg = "yellow", modifiers = ["italic"] } +"markup.raw" = { fg = "foreground" } + +[palette] +background = "#282a36" +background_dark = "#21222c" +foreground = "#f8f8f2" +comment = "#6272a4" +red = "#ff5555" +orange = "#ffb86c" +yellow = "#f1fa8c" +green = "#50fa7b" +purple = "#bd93f9" +cyan = "#8be9fd" +pink = "#ff79c6" diff --git a/helix-22.03-x86_64-windows/runtime/themes/everforest_dark.toml b/helix-22.03-x86_64-windows/runtime/themes/everforest_dark.toml new file mode 100644 index 0000000..8b8e9bb --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/everforest_dark.toml @@ -0,0 +1,105 @@ +# Everforest (Dark Hard) +# Author: CptPotato + +# Original Author: +# URL: https://github.com/sainnhe/everforest +# Filename: autoload/everforest.vim +# Author: sainnhe +# Email: sainnhe@gmail.com +# License: MIT License + +"constant.character.escape" = "orange" +"type" = "yellow" +"constant" = "purple" +"constant.numeric" = "purple" +"string" = "green" +"comment" = "grey0" +"variable" = "fg" +"variable.builtin" = "blue" +"variable.parameter" = "fg" +"variable.other.member" = "fg" +"label" = "aqua" +"punctuation" = "grey2" +"punctuation.delimiter" = "grey2" +"punctuation.bracket" = "fg" +"keyword" = "red" +"operator" = "orange" +"function" = "green" +"function.builtin" = "blue" +"function.macro" = "aqua" +"tag" = "yellow" +"namespace" = "aqua" +"attribute" = "aqua" +"constructor" = "yellow" +"module" = "blue" +"special" = "orange" + +"markup.heading.marker" = "grey2" +"markup.heading.1" = { fg = "red", modifiers = ["bold"] } +"markup.heading.2" = { fg = "orange", modifiers = ["bold"] } +"markup.heading.3" = { fg = "yellow", modifiers = ["bold"] } +"markup.heading.4" = { fg = "green", modifiers = ["bold"] } +"markup.heading.5" = { fg = "blue", modifiers = ["bold"] } +"markup.heading.6" = { fg = "fg", modifiers = ["bold"] } +"markup.list" = "red" +"markup.bold" = { modifiers = ["bold"] } +"markup.italic" = { modifiers = ["italic"] } +"markup.link.url" = { fg = "blue", modifiers = ["underlined"] } +"markup.link.text" = "purple" +"markup.quote" = "grey2" +"markup.raw" = "green" + +"diff.plus" = "green" +"diff.delta" = "orange" +"diff.minus" = "red" + +"ui.background" = { bg = "bg0" } +"ui.cursor" = { fg = "bg0", bg = "fg" } +"ui.cursor.match" = { fg = "orange", bg = "bg_yellow" } +"ui.cursor.insert" = { fg = "bg0", bg = "grey1" } +"ui.cursor.select" = { fg = "bg0", bg = "blue" } +"ui.linenr" = "grey0" +"ui.linenr.selected" = "fg" +"ui.statusline" = { fg = "grey2", bg = "bg2" } +"ui.statusline.inactive" = { fg = "grey0", bg = "bg1" } +"ui.popup" = { fg = "grey2", bg = "bg1" } +"ui.window" = { fg = "grey2", bg = "bg1" } +"ui.help" = { fg = "fg", bg = "bg1" } +"ui.text" = "fg" +"ui.text.focus" = "fg" +"ui.menu" = { fg = "fg", bg = "bg2" } +"ui.menu.selected" = { fg = "bg0", bg = "green" } +"ui.selection" = { bg = "bg3" } + +"hint" = "blue" +"info" = "aqua" +"warning" = "yellow" +"error" = "red" +"diagnostic" = { modifiers = ["underlined"] } + + +[palette] + +bg0 = "#2b3339" +bg1 = "#323c41" +bg2 = "#3a454a" +bg3 = "#445055" +bg4 = "#4c555b" +bg5 = "#53605c" +bg_visual = "#503946" +bg_red = "#4e3e43" +bg_green = "#404d44" +bg_blue = "#394f5a" +bg_yellow = "#4a4940" + +fg = "#d3c6aa" +red = "#e67e80" +orange = "#e69875" +yellow = "#dbbc7f" +green = "#a7c080" +aqua = "#83c092" +blue = "#7fbbb3" +purple = "#d699b6" +grey0 = "#7a8478" +grey1 = "#859289" +grey2 = "#9da9a0" diff --git a/helix-22.03-x86_64-windows/runtime/themes/everforest_light.toml b/helix-22.03-x86_64-windows/runtime/themes/everforest_light.toml new file mode 100644 index 0000000..d977bdf --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/everforest_light.toml @@ -0,0 +1,105 @@ +# Everforest (Dark Hard) +# Author: CptPotato + +# Original Author: +# URL: https://github.com/sainnhe/everforest +# Filename: autoload/everforest.vim +# Author: sainnhe +# Email: sainnhe@gmail.com +# License: MIT License + +"constant.character.escape" = "orange" +"type" = "yellow" +"constant" = "purple" +"constant.numeric" = "purple" +"string" = "green" +"comment" = "grey0" +"variable" = "fg" +"variable.builtin" = "blue" +"variable.parameter" = "fg" +"variable.other.member" = "fg" +"label" = "aqua" +"punctuation" = "grey2" +"punctuation.delimiter" = "grey2" +"punctuation.bracket" = "fg" +"keyword" = "red" +"operator" = "orange" +"function" = "green" +"function.builtin" = "blue" +"function.macro" = "aqua" +"tag" = "yellow" +"namespace" = "aqua" +"attribute" = "aqua" +"constructor" = "yellow" +"module" = "blue" +"special" = "orange" + +"markup.heading.marker" = "grey2" +"markup.heading.1" = { fg = "red", modifiers = ["bold"] } +"markup.heading.2" = { fg = "orange", modifiers = ["bold"] } +"markup.heading.3" = { fg = "yellow", modifiers = ["bold"] } +"markup.heading.4" = { fg = "green", modifiers = ["bold"] } +"markup.heading.5" = { fg = "blue", modifiers = ["bold"] } +"markup.heading.6" = { fg = "fg", modifiers = ["bold"] } +"markup.list" = "red" +"markup.bold" = { modifiers = ["bold"] } +"markup.italic" = { modifiers = ["italic"] } +"markup.link.url" = { fg = "blue", modifiers = ["underlined"] } +"markup.link.text" = "purple" +"markup.quote" = "grey2" +"markup.raw" = "green" + +"diff.plus" = "green" +"diff.delta" = "orange" +"diff.minus" = "red" + +"ui.background" = { bg = "bg0" } +"ui.cursor" = { fg = "bg0", bg = "fg" } +"ui.cursor.match" = { fg = "orange", bg = "bg_yellow" } +"ui.cursor.insert" = { fg = "bg0", bg = "grey1" } +"ui.cursor.select" = { fg = "bg0", bg = "blue" } +"ui.linenr" = "grey0" +"ui.linenr.selected" = "fg" +"ui.statusline" = { fg = "grey2", bg = "bg2" } +"ui.statusline.inactive" = { fg = "grey0", bg = "bg1" } +"ui.popup" = { fg = "grey2", bg = "bg1" } +"ui.window" = { fg = "grey2", bg = "bg1" } +"ui.help" = { fg = "fg", bg = "bg1" } +"ui.text" = "fg" +"ui.text.focus" = "fg" +"ui.menu" = { fg = "fg", bg = "bg2" } +"ui.menu.selected" = { fg = "bg0", bg = "green" } +"ui.selection" = { bg = "bg3" } + +"hint" = "blue" +"info" = "aqua" +"warning" = "yellow" +"error" = "red" +"diagnostic" = { modifiers = ["underlined"] } + + +[palette] + +bg0 = "#fff9e8" +bg1 = "#f7f4e0" +bg2 = "#f0eed9" +bg3 = "#e9e8d2" +bg4 = "#e1ddcb" +bg5 = "#bec5b2" +bg_visual = "#edf0cd" +bg_red = "#fce5dc" +bg_green = "#f1f3d4" +bg_blue = "#eaf2eb" +bg_yellow = "#fbefd0" + +fg = "#5c6a72" +red = "#f85552" +orange = "#f57d26" +yellow = "#dfa000" +green = "#8da101" +aqua = "#35a77c" +blue = "#3a94c5" +purple = "#df69ba" +grey0 = "#a6b0a0" +grey1 = "#939f91" +grey2 = "#829181" diff --git a/helix-22.03-x86_64-windows/runtime/themes/gruvbox.toml b/helix-22.03-x86_64-windows/runtime/themes/gruvbox.toml new file mode 100644 index 0000000..f27b993 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/gruvbox.toml @@ -0,0 +1,95 @@ +# Author : Jakub Bartodziej <kubabartodziej@gmail.com> +# The theme uses the gruvbox dark palette with standard contrast: github.com/morhetz/gruvbox + +"attribute" = "aqua1" +"keyword" = { fg = "red1" } +"keyword.directive" = "red0" +"namespace" = "aqua1" +"punctuation" = "orange1" +"punctuation.delimiter" = "orange1" +"operator" = "purple1" +"special" = "purple0" +"variable.other.member" = "blue1" +"variable" = "fg1" +"variable.builtin" = "orange1" +"variable.parameter" = "fg2" +"type" = "yellow1" +"type.builtin" = "yellow1" +"constructor" = { fg = "purple1", modifiers = ["bold"] } +"function" = { fg = "green1", modifiers = ["bold"] } +"function.macro" = "aqua1" +"function.builtin" = "yellow1" +"tag" = "red1" +"comment" = { fg = "gray1", modifiers = ["italic"]  } +"constant" = { fg = "purple1" } +"constant.builtin" = { fg = "purple1", modifiers = ["bold"] } +"string" = "green1" +"constant.numeric" = "purple1" +"constant.character.escape" = { fg = "fg2", modifiers = ["bold"] } +"label" = "aqua1" +"module" = "aqua1" + +"diff.plus" = "green1" +"diff.delta" = "orange1" +"diff.minus" = "red1" + +"warning" = { fg = "orange1", bg = "bg1" } +"error" = { fg = "red1", bg = "bg1" } +"info" = { fg = "aqua1", bg = "bg1" } +"hint" = { fg = "blue1", bg = "bg1" } + +"ui.background" = { bg = "bg0" } +"ui.linenr" = { fg = "bg4" } +"ui.linenr.selected" = { fg = "yellow1" } +"ui.statusline" = { fg = "fg1", bg = "bg2" } +"ui.statusline.inactive" = { fg = "fg4", bg = "bg1" } +"ui.popup" = { bg = "bg1" } +"ui.window" = { bg = "bg1" } +"ui.help" = { bg = "bg1", fg = "fg1" } +"ui.text" = { fg = "fg1" } +"ui.text.focus" = { fg = "fg1" } +"ui.selection" = { bg = "bg3", modifiers = ["reversed"] } +"ui.cursor.primary" = { modifiers = ["reversed"] } +"ui.cursor.match" = { bg = "bg2" } +"ui.menu" = { fg = "fg1", bg = "bg2" } +"ui.menu.selected" = { fg = "bg2", bg = "blue1", modifiers = ["bold"] } + +"diagnostic" = { modifiers = ["underlined"] } + +"markup.heading" = "aqua1" +"markup.bold" = { modifiers = ["bold"] } +"markup.italic" = { modifiers = ["italic"] } +"markup.link.url" = { fg = "green1", modifiers = ["underlined"] } +"markup.link.text" = "red1" +"markup.raw" = "red1" + +[palette] +bg0 = "#282828" # main background +bg1 = "#3c3836" +bg2 = "#504945" +bg3 = "#665c54" +bg4 = "#7c6f64" + +fg0 = "#fbf1c7" +fg1 = "#ebdbb2" # main foreground +fg2 = "#d5c4a1" +fg3 = "#bdae93" +fg4 = "#a89984" # gray0 + +gray0 = "#a89984" +gray1 = "#928374" + +red0 = "#cc241d" # neutral +red1 = "#fb4934" # bright +green0 = "#98971a" +green1 = "#b8bb26" +yellow0 = "#d79921" +yellow1 = "#fabd2f" +blue0 = "#458588" +blue1 = "#83a598" +purple0 = "#b16286" +purple1 = "#d3869b" +aqua0 = "#689d6a" +aqua1 = "#8ec07c" +orange0 = "#d65d0e" +orange1 = "#fe8019" diff --git a/helix-22.03-x86_64-windows/runtime/themes/gruvbox_light.toml b/helix-22.03-x86_64-windows/runtime/themes/gruvbox_light.toml new file mode 100644 index 0000000..ab8325c --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/gruvbox_light.toml @@ -0,0 +1,96 @@ +# Author : Rohan Jain <crodjer@pm.me>  +# Author : Jakub Bartodziej <kubabartodziej@gmail.com> +# The theme uses the gruvbox light palette with standard contrast: github.com/morhetz/gruvbox + +"attribute" = "aqua1" +"keyword" = { fg = "red1" } +"keyword.directive" = "red0" +"namespace" = "aqua1" +"punctuation" = "orange1" +"punctuation.delimiter" = "orange1" +"operator" = "purple1" +"special" = "purple0" +"variable.other.member" = "blue1" +"variable" = "fg1" +"variable.builtin" = "orange1" +"variable.parameter" = "fg2" +"type" = "yellow1" +"type.builtin" = "yellow1" +"constructor" = { fg = "purple1", modifiers = ["bold"] } +"function" = { fg = "green1", modifiers = ["bold"] } +"function.macro" = "aqua1" +"function.builtin" = "yellow1" +"tag" = "red1" +"comment" = { fg = "gray1", modifiers = ["italic"]  } +"constant" = { fg = "purple1" } +"constant.builtin" = { fg = "purple1", modifiers = ["bold"] } +"string" = "green1" +"constant.numeric" = "purple1" +"constant.character.escape" = { fg = "fg2", modifiers = ["bold"] } +"label" = "aqua1" +"module" = "aqua1" + +"diff.plus" = "green1" +"diff.delta" = "orange1" +"diff.minus" = "red1" + +"warning" = { fg = "orange1", bg = "bg1" } +"error" = { fg = "red1", bg = "bg1" } +"info" = { fg = "aqua1", bg = "bg1" } +"hint" = { fg = "blue1", bg = "bg1" } + +"ui.background" = { bg = "bg0" } +"ui.linenr" = { fg = "bg4" } +"ui.linenr.selected" = { fg = "yellow1" } +"ui.statusline" = { fg = "fg1", bg = "bg2" } +"ui.statusline.inactive" = { fg = "fg4", bg = "bg1" } +"ui.popup" = { bg = "bg1" } +"ui.window" = { bg = "bg1" } +"ui.help" = { bg = "bg1", fg = "fg1" } +"ui.text" = { fg = "fg1" } +"ui.text.focus" = { fg = "fg1" } +"ui.selection" = { bg = "bg3", modifiers = ["reversed"] } +"ui.cursor.primary" = { modifiers = ["reversed"] } +"ui.cursor.match" = { bg = "bg2" } +"ui.menu" = { fg = "fg1", bg = "bg2" } +"ui.menu.selected" = { fg = "bg2", bg = "blue1", modifiers = ["bold"] } + +"diagnostic" = { modifiers = ["underlined"] } + +"markup.heading" = "aqua1" +"markup.bold" = { modifiers = ["bold"] } +"markup.italic" = { modifiers = ["italic"] } +"markup.link.url" = { fg = "green1", modifiers = ["underlined"] } +"markup.link.text" = "red1" +"markup.raw" = "red1" + +[palette] +bg0 = "#fbf1c7" # main background +bg1 = "#ebdbb2" +bg2 = "#d5c4a1" +bg3 = "#bdae93" +bg4 = "#a89984" + +fg0 = "#282828" # main foreground +fg1 = "#3c3836" +fg2 = "#504945" +fg3 = "#665c54" +fg4 = "#7c6f64" # gray0 + +gray0 = "#7c6f64" +gray1 = "#928374" + +red0 = "#cc241d" # neutral +red1 = "#9d0006" # bright +green0 = "#98971a" +green1 = "#79740e" +yellow0 = "#d79921" +yellow1 = "#b57614" +blue0 = "#458588" +blue1 = "#076678" +purple0 = "#b16286" +purple1 = "#8f3f71" +aqua0 = "#689d6a" +aqua1 = "#427b58" +orange0 = "#d65d0e" +orange1 = "#af3a03" diff --git a/helix-22.03-x86_64-windows/runtime/themes/ingrid.toml b/helix-22.03-x86_64-windows/runtime/themes/ingrid.toml new file mode 100644 index 0000000..a7c33e2 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/ingrid.toml @@ -0,0 +1,64 @@ +# Author : Ingrid Rebecca Abraham <git@ingrids.email> + +"attribute" = "#839A53" +"keyword" = { fg = "#D74E50", modifiers = ["bold"] } +"keyword.directive" = "#6F873E" +"namespace" = "#839A53" +"punctuation" = "#C97270" +"punctuation.delimiter" = "#C97270" +"operator" = { fg = "#D74E50", modifiers = ["bold"] } +"special" = "#D68482" +"variable.other.member" = "#89BEB7" +"variable" = "#A6B6CE" +"variable.parameter" = "#89BEB7" +"type" = { fg = "#A6B6CE", modifiers = ["bold"] } +"type.builtin" = "#839A53" +"constructor" = { fg = "#839A53", modifiers = ["bold"] } +"function" = { fg = "#89BEB7", modifiers = ["bold"] } +"function.macro" = { fg = "#D4A520", modifiers = ["bold"] } +"function.builtin" = "#89BEB7" +"comment" = "#A6B6CE" +"variable.builtin" = "#D4A520" +"constant" = "#D4A520" +"constant.builtin" = "#D4A520" +"string" = "#D74E50" +"constant.numeric" = "#D74E50" +"constant.character.escape" = { fg = "#D74E50", modifiers = ["bold"] } +"label" = "#D68482" + +"module" = "#839A53" + +# TODO +"markup.heading" = "blue" +"markup.list" = "red" +"markup.bold" = { fg = "yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "red" +"markup.quote" = "cyan" +"markup.raw" = "green" + +"diff.plus" = "#839A53" +"diff.delta" = "#D4A520" +"diff.minus" = "#D74E50" + +"ui.background" = { bg = "#FFFCFD" } +"ui.linenr" = { fg = "#bbbbbb" } +"ui.linenr.selected" = { fg = "#F3EAE9" }  # TODO +"ui.statusline" = { fg = "#250E07", bg = "#F3EAE9" } +"ui.statusline.inactive" = { fg = "#7b91b3", bg = "#F3EAE9" } +"ui.popup" = { bg = "#F3EAE9" } +"ui.window" = { bg = "#D8B8B3" } +"ui.help" = { bg = "#D8B8B3", fg = "#250E07" } + +"ui.text" = { fg = "#7B91B3" } +"ui.text.focus" = { fg = "#250E07", modifiers= ["bold"] } + +"ui.selection" = { bg = "#540099" } +# "ui.cursor.match"  # TODO might want to override this because dimmed is not widely supported +"ui.menu.selected" = { fg = "#D74E50", bg = "#F3EAE9" } + +"warning" = "#D4A520" +"error" = "#D74E50" +"info" = "#839A53" +"hint" = "#A6B6CE" diff --git a/helix-22.03-x86_64-windows/runtime/themes/monokai.toml b/helix-22.03-x86_64-windows/runtime/themes/monokai.toml new file mode 100644 index 0000000..e6ff0a5 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/monokai.toml @@ -0,0 +1,99 @@ +# Author: Shafkath Shuhan <shafkathshuhannyc@gmail.com> + +"namespace" = { fg = "type" } +"module" = { fg = "type" } + +"type" = { fg = "type" } +"type.builtin" = { fg = "#66D9EF" } +"type.enum.variant" = { fg = "text" }  +"constructor" = { fg = "text" } +"variable.other.member" = { fg = "variable" } + +"keyword" = { fg = "keyword" } +"keyword.directive" = { fg = "keyword" } +"keyword.control" = { fg = "keyword" } +"label" = { fg = "keyword" } + +"special" = { fg = "keyword" } +"operator" = { fg = "text" } + +"punctuation" = { fg = "text" } +"punctuation.delimiter" = { fg = "text" } + +"variable" = { fg = "variable" } +"variable.parameter" = { fg = "#fd971f" } +"variable.builtin" = { fg = "keyword" } +"constant" = { fg = "variable" } +"constant.builtin" = { fg = "#ae81ff" } + +"function" = { fg = "fn_declaration" } +"function.builtin" = { fg = "fn_declaration" } +"function.macro" = { fg = "keyword" } +"attribute" = { fg = "fn_declaration" } + +"comment" = { fg = "#88846F" } + +"string" = { fg = "#e6db74" } +"constant.character" = { fg = "#e6db74" } +"string.regexp" = { fg = "regex" } +"constant.numeric" = { fg = "#ae81ff" } +"constant.character.escape" = { fg = "#ae81ff" } + +# TODO +"markup.heading" = "blue" +"markup.list" = "red" +"markup.bold" = { fg = "yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "red" +"markup.quote" = "cyan" +"markup.raw" = "green" + +"diff.plus" = { fg = "#a6e22e" } +"diff.delta" = { fg = "#fd971f" } +"diff.minus" = { fg = "#f92672" } + +"ui.background" = { fg = "text", bg = "background" } + +"ui.window" = { bg = "widget" } +"ui.popup" = { bg = "widget" } +"ui.help" = { bg = "widget" } +"ui.menu.selected" = { bg = "widget" } + +"ui.cursor" = { fg = "cursor", modifiers = ["reversed"] } +"ui.cursor.primary" = { fg = "cursor", modifiers = ["reversed"] } +"ui.cursor.match" = { fg = "#888888", modifiers = ["reversed"] } + +"ui.selection" = { bg = "#878b91" } +"ui.selection.primary" = { bg = "#575b61" } + +"ui.linenr" = { fg = "#90908a" } +"ui.linenr.selected" = { fg = "#c2c2bf" } + +"ui.statusline" = { fg = "active_text", bg = "#75715e" } +"ui.statusline.inactive" = { fg = "active_text", bg = "#75715e" } + +"ui.text" = { fg = "text", bg = "background" } +"ui.text.focus" = { fg = "active_text" } + +"warning" = { fg = "#cca700" } +"error" = { fg = "#f48771" } +"info" = { fg = "#75beff" } +"hint" = { fg = "#eeeeeb3" } + +diagnostic = { modifiers = ["underlined"] } + +[palette] +type = "#A6E22E" +keyword = "#F92672" +regex = "#CE9178" +special = "#C586C0" +variable = "#F8F8F2" +fn_declaration = "#A6E22E" + +background = "#272822" +text = "#f8f8f2" +active_text = "#ffffff" +cursor = "#a6a6a6" +inactive_cursor = "#878b91" +widget = "#1e1f1c" diff --git a/helix-22.03-x86_64-windows/runtime/themes/monokai_pro.toml b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro.toml new file mode 100644 index 0000000..8de9994 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro.toml @@ -0,0 +1,115 @@ +# Author : WindSoilder<WindSoilder@outlook.com> +# The unofficial Monokai Pro theme, simply migrate from jetbrains monokai pro theme: https://github.com/subtheme-dev/monokai-pro +# Credit goes to the original creator: https://monokai.pro + +"ui.linenr.selected" = { bg = "base3" } +"ui.text.focus" = { fg = "yellow", modifiers= ["bold"] } +"ui.menu.selected" = { fg = "base2", bg = "yellow" } + +"info" = "base8" +"hint" = "base8" + +# background color +"ui.background" = { bg = "base2" } +"ui.statusline.inactive" = { fg = "base8", bg = "base8x0c" } + +# status bars, panels, modals, autocompletion +"ui.statusline" = { bg = "base4" } +"ui.popup" = { bg = "base3" } +"ui.window" = { bg = "base3" } +"ui.help" = { bg = "base3" } + +# active line, highlighting +"ui.selection" = { bg = "base4" } +"ui.cursor.match" = { bg = "base4" } + +# comments, nord3 based lighter color +"comment" = { fg = "base5", modifiers = ["italic"] } +"ui.linenr" = { fg = "base5" } + +# cursor, variables, constants, attributes, fields +"ui.cursor.primary" = { fg = "base7", modifiers = ["reversed"] } +"attribute" = "blue" +"variable"  = "base8" +"constant"  = "orange" +"variable.builtin" = "red" +"constant.builtin" = "red" +"namespace" = "base8" + +# base text, punctuation +"ui.text" = { fg = "base8" } +"punctuation" = "base6" + +# classes, types, primiatives +"type" = "green" +"type.builtin" = { fg = "red"} +"label" = "base8" + +# declaration, methods, routines +"constructor" = "blue" +"function" = "green" +"function.macro" = { fg = "blue" } +"function.builtin" = { fg = "cyan" } + +# operator, tags, units, punctuations +"operator" = "red" +"variable.other.member" = "base8" + +# keywords, special +"keyword" = { fg = "red" } +"keyword.directive" = "blue" +"variable.parameter" = "#f59762" + +# error +"error" = "red" + +# annotations, decorators +"special" = "#f59762" +"module" = "#f59762" + +# warnings, escape characters, regex +"warning" = "orange" +"constant.character.escape" = { fg = "base8" } + +# strings +"string" = "yellow" + +# integer, floating point +"constant.numeric" = "purple" + +# vcs +"diff.plus" = "green" +"diff.delta" = "orange" +"diff.minus" = "red" + +# make diagnostic underlined, to distinguish with selection text. +diagnostic = { modifiers = ["underlined"] } + +# markup highlight, no need for `markup.raw` and `markup.list`, make them to be default +"markup.heading" = "green" +"markup.bold" = { fg = "orange", modifiers = ["bold"] } +"markup.italic" = { fg = "orange", modifiers = ["italic"] } +"markup.link.url" = { fg = "orange", modifiers = ["underlined"] } +"markup.link.text" = "yellow" +"markup.quote" = "green" + +[palette] +# primary colors +"red" = "#ff6188" +"orange" = "#fc9867" +"yellow" = "#ffd866" +"green" = "#a9dc76" +"blue" = "#78dce8" +"purple" = "#ab9df2" +# base colors, sorted from darkest to lightest +"base0" = "#19181a" +"base1" = "#221f22" +"base2" = "#2d2a2e" +"base3" = "#403e41" +"base4" = "#5b595c" +"base5" = "#727072" +"base6" = "#939293" +"base7" = "#c1c0c0" +"base8" = "#fcfcfa" +# variants (for when transparency isn't supported) +"base8x0c" = "#363337" # using base2 as bg diff --git a/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_machine.toml b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_machine.toml new file mode 100644 index 0000000..c589004 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_machine.toml @@ -0,0 +1,115 @@ +# Author : WindSoilder<WindSoilder@outlook.com> +# The unofficial Monokai Pro theme, simply migrate from jetbrains monokai pro theme: https://github.com/subtheme-dev/monokai-pro +# Credit goes to the original creator: https://monokai.pro + +"ui.linenr.selected" = { bg = "base3" } +"ui.text.focus" = { fg = "yellow", modifiers= ["bold"] } +"ui.menu.selected" = { fg = "base2", bg = "yellow" } + +"info" = "base8" +"hint" = "base8" + +# background color +"ui.background" = { bg = "base2" } +"ui.statusline.inactive" = { fg = "base8", bg = "base8x0c" } + +# status bars, panels, modals, autocompletion +"ui.statusline" = { bg = "base4" } +"ui.popup" = { bg = "base3" } +"ui.window" = { bg = "base3" } +"ui.help" = { bg = "base3" } + +# active line, highlighting +"ui.selection" = { bg = "base4" } +"ui.cursor.match" = { bg = "base4" } + +# comments, nord3 based lighter color +"comment" = { fg = "base5", modifiers = ["italic"] } +"ui.linenr" = { fg = "base5" } + +# cursor, variables, constants, attributes, fields +"ui.cursor.primary" = { fg = "base7", modifiers = ["reversed"] } +"attribute" = "blue" +"variable"  = "base8" +"constant"  = "orange" +"variable.builtin" = "red" +"constant.builtin" = "red" +"namespace" = "base8" + +# base text, punctuation +"ui.text" = { fg = "base8" } +"punctuation" = "base6" + +# classes, types, primiatives +"type" = "green" +"type.builtin" = { fg = "red"} +"label" = "base8" + +# declaration, methods, routines +"constructor" = "blue" +"function" = "green" +"function.macro" = { fg = "blue" } +"function.builtin" = { fg = "cyan" } + +# operator, tags, units, punctuations +"operator" = "red" +"variable.other.member" = "base8" + +# keywords, special +"keyword" = { fg = "red" } +"keyword.directive" = "blue" +"variable.parameter" = "#f59762" + +# error +"error" = "red" + +# annotations, decorators +"special" = "#f59762" +"module" = "#f59762" + +# warnings, escape characters, regex +"warning" = "orange" +"constant.character.escape" = { fg = "base8" } + +# strings +"string" = "yellow" + +# integer, floating point +"constant.numeric" = "purple" + +# vcs +"diff.plus" = "green" +"diff.delta" = "orange" +"diff.minus" = "red" + +# make diagnostic underlined, to distinguish with selection text. +diagnostic = { modifiers = ["underlined"] } + +# markup highlight, no need for `markup.raw` and `markup.list`, make them to be default +"markup.heading" = "green" +"markup.bold" = { fg = "orange", modifiers = ["bold"] } +"markup.italic" = { fg = "orange", modifiers = ["italic"] } +"markup.link.url" = { fg = "orange", modifiers = ["underlined"] } +"markup.link.text" = "yellow" +"markup.quote" = "green" + +[palette] +# primary colors +"red" = "#ff6d7e" +"orange" = "#ffb270" +"yellow" = "#ffed72" +"green" = "#a2e57b" +"blue" = "#7cd5f1" +"purple" = "#baa0f8" +# base colors +"base0" = "#161b1e" +"base1" = "#1d2528" +"base2" = "#273136" +"base3" = "#3a4449" +"base4" = "#545f62" +"base5" = "#6b7678" +"base6" = "#798384" +"base7" = "#b8c4c3" +"base8" = "#f2fffc" +# variants +"base8x0c" = "#303a3e" diff --git a/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_octagon.toml b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_octagon.toml new file mode 100644 index 0000000..d9badf3 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_octagon.toml @@ -0,0 +1,115 @@ +# Author : WindSoilder<WindSoilder@outlook.com> +# The unofficial Monokai Pro theme, simply migrate from jetbrains monokai pro theme: https://github.com/subtheme-dev/monokai-pro +# Credit goes to the original creator: https://monokai.pro + +"ui.linenr.selected" = { bg = "base3" } +"ui.text.focus" = { fg = "yellow", modifiers= ["bold"] } +"ui.menu.selected" = { fg = "base2", bg = "yellow" } + +"info" = "base8" +"hint" = "base8" + +# background color +"ui.background" = { bg = "base2" } +"ui.statusline.inactive" = { fg = "base8", bg = "base8x0c" } + +# status bars, panels, modals, autocompletion +"ui.statusline" = { bg = "base4" } +"ui.popup" = { bg = "base3" } +"ui.window" = { bg = "base3" } +"ui.help" = { bg = "base3" } + +# active line, highlighting +"ui.selection" = { bg = "base4" } +"ui.cursor.match" = { bg = "base4" } + +# comments, nord3 based lighter color +"comment" = { fg = "base5", modifiers = ["italic"] } +"ui.linenr" = { fg = "base5" } + +# cursor, variables, constants, attributes, fields +"ui.cursor.primary" = { fg = "base7", modifiers = ["reversed"] } +"attribute" = "blue" +"variable"  = "base8" +"constant"  = "orange" +"variable.builtin" = "red" +"constant.builtin" = "red" +"namespace" = "base8" + +# base text, punctuation +"ui.text" = { fg = "base8" } +"punctuation" = "base6" + +# classes, types, primiatives +"type" = "green" +"type.builtin" = { fg = "red"} +"label" = "base8" + +# declaration, methods, routines +"constructor" = "blue" +"function" = "green" +"function.macro" = { fg = "blue" } +"function.builtin" = { fg = "cyan" } + +# operator, tags, units, punctuations +"operator" = "red" +"variable.other.member" = "base8" + +# keywords, special +"keyword" = { fg = "red" } +"keyword.directive" = "blue" +"variable.parameter" = "#f59762" + +# error +"error" = "red" + +# annotations, decorators +"special" = "#f59762" +"module" = "#f59762" + +# warnings, escape characters, regex +"warning" = "orange" +"constant.character.escape" = { fg = "base8" } + +# strings +"string" = "yellow" + +# integer, floating point +"constant.numeric" = "purple" + +# vcs +"diff.plus" = "green" +"diff.delta" = "orange" +"diff.minus" = "red" + +# make diagnostic underlined, to distinguish with selection text. +diagnostic = { modifiers = ["underlined"] } + +# markup highlight, no need for `markup.raw` and `markup.list`, make them to be default +"markup.heading" = "green" +"markup.bold" = { fg = "orange", modifiers = ["bold"] } +"markup.italic" = { fg = "orange", modifiers = ["italic"] } +"markup.link.url" = { fg = "orange", modifiers = ["underlined"] } +"markup.link.text" = "yellow" +"markup.quote" = "green" + +[palette] +# primary colors +"red" = "#ff657a" +"orange" = "#ff9b5e" +"yellow" = "#ffd76d" +"green" = "#bad761" +"blue" = "#9cd1bb" +"purple" = "#c39ac9" +# base colors +"base0" = "#161821" +"base1" = "#1e1f2b" +"base2" = "#282a3a" +"base3" = "#3a3d4b" +"base4" = "#535763" +"base5" = "#696d77" +"base6" = "#767b81" +"base7" = "#b2b9bd" +"base8" = "#eaf2f1" +# variants +"base8x0c" = "#303342" diff --git a/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_ristretto.toml b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_ristretto.toml new file mode 100644 index 0000000..ed7ebea --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_ristretto.toml @@ -0,0 +1,115 @@ +# Author : WindSoilder<WindSoilder@outlook.com> +# The unofficial Monokai Pro theme, simply migrate from jetbrains monokai pro theme: https://github.com/subtheme-dev/monokai-pro +# Credit goes to the original creator: https://monokai.pro + +"ui.linenr.selected" = { bg = "base3" } +"ui.text.focus" = { fg = "yellow", modifiers= ["bold"] } +"ui.menu.selected" = { fg = "base2", bg = "yellow" } + +"info" = "base8" +"hint" = "base8" + +# background color +"ui.background" = { bg = "base2" } +"ui.statusline.inactive" = { fg = "base8", bg = "base8x0c" } + +# status bars, panels, modals, autocompletion +"ui.statusline" = { bg = "base4" } +"ui.popup" = { bg = "base3" } +"ui.window" = { bg = "base3" } +"ui.help" = { bg = "base3" } + +# active line, highlighting +"ui.selection" = { bg = "base4" } +"ui.cursor.match" = { bg = "base4" } + +# comments, nord3 based lighter color +"comment" = { fg = "base5", modifiers = ["italic"] } +"ui.linenr" = { fg = "base5" } + +# cursor, variables, constants, attributes, fields +"ui.cursor.primary" = { fg = "base7", modifiers = ["reversed"] } +"attribute" = "blue" +"variable"  = "base8" +"constant"  = "orange" +"variable.builtin" = "red" +"constant.builtin" = "red" +"namespace" = "base8" + +# base text, punctuation +"ui.text" = { fg = "base8" } +"punctuation" = "base6" + +# classes, types, primiatives +"type" = "green" +"type.builtin" = { fg = "red"} +"label" = "base8" + +# declaration, methods, routines +"constructor" = "blue" +"function" = "green" +"function.macro" = { fg = "blue" } +"function.builtin" = { fg = "cyan" } + +# operator, tags, units, punctuations +"operator" = "red" +"variable.other.member" = "base8" + +# keywords, special +"keyword" = { fg = "red" } +"keyword.directive" = "blue" +"variable.parameter" = "#f59762" + +# error +"error" = "red" + +# annotations, decorators +"special" = "#f59762" +"module" = "#f59762" + +# warnings, escape characters, regex +"warning" = "orange" +"constant.character.escape" = { fg = "base8" } + +# strings +"string" = "yellow" + +# integer, floating point +"constant.numeric" = "purple" + +# vcs +"diff.plus" = "green" +"diff.delta" = "orange" +"diff.minus" = "red" + +# make diagnostic underlined, to distinguish with selection text. +diagnostic = { modifiers = ["underlined"] } + +# markup highlight, no need for `markup.raw` and `markup.list`, make them to be default +"markup.heading" = "green" +"markup.bold" = { fg = "orange", modifiers = ["bold"] } +"markup.italic" = { fg = "orange", modifiers = ["italic"] } +"markup.link.url" = { fg = "orange", modifiers = ["underlined"] } +"markup.link.text" = "yellow" +"markup.quote" = "green" + +[palette] +# primary colors +"red" = "#fd6883" +"orange" = "#f38d70" +"yellow" = "#f9cc6c" +"green" = "#adda78" +"blue" = "#85dacc" +"purple" = "#a8a9eb" +# base colors +"base0" = "#191515" +"base1" = "#211c1c" +"base2" = "#2c2525" +"base3" = "#403838" +"base4" = "#5b5353" +"base5" = "#72696a" +"base6" = "#8c8384" +"base7" = "#c3b7b8" +"base8" = "#fff1f3" +# variants +"base8x0c" = "#352e2e" diff --git a/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_spectrum.toml b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_spectrum.toml new file mode 100644 index 0000000..da06e59 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/monokai_pro_spectrum.toml @@ -0,0 +1,115 @@ +# Author : WindSoilder<WindSoilder@outlook.com> +# The unofficial Monokai Pro theme, simply migrate from jetbrains monokai pro theme: https://github.com/subtheme-dev/monokai-pro +# Credit goes to the original creator: https://monokai.pro + +"ui.linenr.selected" = { bg = "base3" } +"ui.text.focus" = { fg = "yellow", modifiers= ["bold"] } +"ui.menu.selected" = { fg = "base2", bg = "yellow" } + +"info" = "base8" +"hint" = "base8" + +# background color +"ui.background" = { bg = "base2" } +"ui.statusline.inactive" = { fg = "base8", bg = "base8x0c" } + +# status bars, panels, modals, autocompletion +"ui.statusline" = { bg = "base4" } +"ui.popup" = { bg = "base3" } +"ui.window" = { bg = "base3" } +"ui.help" = { bg = "base3" } + +# active line, highlighting +"ui.selection" = { bg = "base4" } +"ui.cursor.match" = { bg = "base4" } + +# comments, nord3 based lighter color +"comment" = { fg = "base5", modifiers = ["italic"] } +"ui.linenr" = { fg = "base5" } + +# cursor, variables, constants, attributes, fields +"ui.cursor.primary" = { fg = "base7", modifiers = ["reversed"] } +"attribute" = "blue" +"variable"  = "base8" +"constant"  = "orange" +"variable.builtin" = "red" +"constant.builtin" = "red" +"namespace" = "base8" + +# base text, punctuation +"ui.text" = { fg = "base8" } +"punctuation" = "base6" + +# classes, types, primiatives +"type" = "green" +"type.builtin" = { fg = "red"} +"label" = "base8" + +# declaration, methods, routines +"constructor" = "blue" +"function" = "green" +"function.macro" = { fg = "blue" } +"function.builtin" = { fg = "cyan" } + +# operator, tags, units, punctuations +"operator" = "red" +"variable.other.member" = "base8" + +# keywords, special +"keyword" = { fg = "red" } +"keyword.directive" = "blue" +"variable.parameter" = "#f59762" + +# error +"error" = "red" + +# annotations, decorators +"special" = "#f59762" +"module" = "#f59762" + +# warnings, escape characters, regex +"warning" = "orange" +"constant.character.escape" = { fg = "base8" } + +# strings +"string" = "yellow" + +# integer, floating point +"constant.numeric" = "purple" + +# vcs +"diff.plus" = "green" +"diff.delta" = "orange" +"diff.minus" = "red" + +# make diagnostic underlined, to distinguish with selection text. +diagnostic = { modifiers = ["underlined"] } + +# markup highlight, no need for `markup.raw` and `markup.list`, make them to be default +"markup.heading" = "green" +"markup.bold" = { fg = "orange", modifiers = ["bold"] } +"markup.italic" = { fg = "orange", modifiers = ["italic"] } +"markup.link.url" = { fg = "orange", modifiers = ["underlined"] } +"markup.link.text" = "yellow" +"markup.quote" = "green" + +[palette] +# primary colors +"red" = "#fc618d" +"orange" = "#fd9353" +"yellow" = "#fce566" +"green" = "#7bd88f" +"blue" = "#5ad4e6" +"purple" = "#948ae3" +# base colors +"base0" = "#131313" +"base1" = "#191919" +"base2" = "#222222" +"base3" = "#363537" +"base4" = "#525053" +"base5" = "#69676c" +"base6" = "#8b888f" +"base7" = "#bab6c0" +"base8" = "#f7f1ff" +# variants +"base8x0c" = "#2b2b2b" diff --git a/helix-22.03-x86_64-windows/runtime/themes/nord.toml b/helix-22.03-x86_64-windows/runtime/themes/nord.toml new file mode 100644 index 0000000..deb9045 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/nord.toml @@ -0,0 +1,117 @@ +# Author : RayGervais<raygervais@hotmail.ca> + +"ui.linenr.selected" = { fg = "nord4" } +"ui.text.focus" = { fg = "nord8", modifiers= ["bold"] } +"ui.menu.selected" = { fg = "nord8", bg = "nord2" } + +"info" = "nord8" +"hint" = "nord8" + +# Polar Night +# nord0 - background color +"ui.background" = { bg = "nord0" } +"ui.statusline.inactive" = { fg = "nord8", bg = "nord1" } + + +# nord1 - status bars, panels, modals, autocompletion +"ui.statusline" = { fg = "nord4", bg = "#4c566a" } +"ui.popup" = { bg = "#232d38" } +"ui.window" = { bg = "#232d38" } +"ui.help" = { bg = "#232d38", fg = "nord4" } + +# nord2 - active line, highlighting +"ui.selection" = { bg = "nord2" } +"ui.cursor.match" = { bg = "nord2" } + +# nord3 - comments, nord3 based lighter color +# relative: https://github.com/arcticicestudio/nord/issues/94 +"comment" = { fg = "gray", modifiers = ["italic"] } +"ui.linenr" = { fg = "gray" } + +# Snow Storm +# nord4 - cursor, variables, constants, attributes, fields +"ui.cursor.primary" = { fg = "nord4", modifiers = ["reversed"] } +"attribute" = "nord4" +"variable"  = "nord4" +"constant"  = "nord4" +"variable.builtin" = "nord4" +"constant.builtin" = "nord4" +"namespace" = "nord4" + +# nord5 - suble UI text + +# nord6 - base text, punctuation +"ui.text" = { fg = "nord6" } +"punctuation" = "nord6" + +# Frost +# nord7 - classes, types, primiatives +"type" = "nord7" +"type.builtin" = { fg = "nord7"} +"label" = "nord7" + +# nord8 - declaration, methods, routines +"constructor" = "nord8" +"function" = "nord8" +"function.macro" = { fg = "nord8" } +"function.builtin" = { fg = "nord8" } + +# nord9 - operator, tags, units, punctuations +"punctuation.delimiter" = "nord9" +"operator" = { fg = "nord9" } +"variable.other.member" = "nord9" + +# nord10 - keywords, special +"keyword" = { fg = "nord10" } +"keyword.directive" = "nord10" +"variable.parameter" = "nord10" + +# Aurora +# nord11 - error +"error" = "nord11" + +# nord12 - annotations, decorators +"special" = "nord12" +"module" = "nord12" + +# nord13 - warnings, escape characters, regex +"warning" = "nord13" +"constant.character.escape" = { fg = "nord13" } + +# nord14 - strings +"string" = "nord14" + +# nord15 - integer, floating point +"constant.numeric" = "nord15" + +# TODO markup +"markup.heading" = "blue" +"markup.list" = "red" +"markup.bold" = { fg = "yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "red" +"markup.quote" = "cyan" +"markup.raw" = "green" + +# vcs +"diff.plus" = "nord14" +"diff.delta" = "nord12" +"diff.minus" = "nord11" + +[palette] +nord0 = "#2e3440" +nord1 = "#3b4252" +nord2 = "#434c5e" +nord4 = "#d8dee9" +nord6 = "#eceff4" +nord7 = "#8fbcbb" +nord8 = "#88c0d0" +nord9 = "#81a1c1" +nord10 = "#5e81ac" +nord11 = "#bf616a" +nord12 = "#d08770" +nord13 = "#ebcb8b" +nord14 = "#a3be8c" +nord15 = "#b48ead" +gray = "#616e88" diff --git a/helix-22.03-x86_64-windows/runtime/themes/onedark.toml b/helix-22.03-x86_64-windows/runtime/themes/onedark.toml new file mode 100644 index 0000000..acdaf99 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/onedark.toml @@ -0,0 +1,86 @@ +# Author : Gokul Soumya <gokulps15@gmail.com> + +"attribute" = { fg = "yellow" } +"comment" = { fg = "light-gray", modifiers = ["italic"] } +"constant" = { fg = "cyan" } +"constant.numeric" = { fg = "gold" } +"constant.builtin" = { fg = "gold" } +"constant.character.escape" = { fg = "gold" } +"constructor" = { fg = "blue" } +"function" = { fg = "blue" } +"function.builtin" = { fg = "blue" } +"function.macro" = { fg = "purple" } +"keyword" = { fg = "red" } +"keyword.control" = { fg = "purple" } +"keyword.control.import" = { fg = "red" } +"keyword.directive" = { fg = "purple" } +"label" = { fg = "purple" } +"namespace" = { fg = "blue" } +"operator" = { fg = "purple" } +"keyword.operator" = { fg = "purple" } +"property" = { fg = "red" } +"special" = { fg = "blue" } +"string" = { fg = "green" } +"type" = { fg = "yellow" } +# "variable" = { fg = "blue" } +"variable.builtin" = { fg = "blue" } +"variable.parameter" = { fg = "red" } +"variable.other.member" = { fg = "red" } + +"markup.heading" = { fg = "red" } +"markup.raw.inline" = { fg = "green" } +"markup.bold" = { fg = "gold", modifiers = ["bold"] } +"markup.italic" = { fg = "purple", modifiers = ["italic"] } +"markup.list" = { fg = "red" } +"markup.quote" = { fg = "yellow" } +"markup.link.url" = { fg = "cyan", modifiers = ["underlined"]} +"markup.link.text" = { fg = "purple" } + +"diff.plus" = "green" +"diff.delta" = "gold" +"diff.minus" = "red" + +diagnostic = { modifiers = ["underlined"] } +"info" = { fg = "blue", modifiers = ["bold"] } +"hint" = { fg = "green", modifiers = ["bold"] } +"warning" = { fg = "yellow", modifiers = ["bold"] } +"error" = { fg = "red", modifiers = ["bold"] } + +"ui.background" = { bg = "black" } + +"ui.cursor" = { fg = "white", modifiers = ["reversed"] } +"ui.cursor.primary" = { fg = "white", modifiers = ["reversed"] } +"ui.cursor.match" = { fg = "blue", modifiers = ["underlined"]} + +"ui.selection" = { bg = "light-gray" } +"ui.selection.primary" = { bg = "gray" } + +"ui.linenr" = { fg = "linenr", modifiers = ["dim"] } +"ui.linenr.selected" = { fg = "white" } + +"ui.statusline" = { fg = "white", bg = "light-black" } +"ui.statusline.inactive" = { fg = "light-gray", bg = "light-black" } + +"ui.text" = { fg = "white" } +"ui.text.focus" = { fg = "white", bg = "light-black", modifiers = ["bold"] } + +"ui.help" = { bg = "gray" } +"ui.popup" = { bg = "gray" } +"ui.window" = { bg = "gray" } +"ui.menu.selected" = { fg = "black", bg = "blue" } + +[palette] + +yellow = "#E5C07B" +blue = "#61AFEF" +red = "#E06C75" +purple = "#C678DD" +green = "#98C379" +gold = "#D19A66" +cyan = "#56B6C2" +white = "#ABB2BF" +black = "#282C34" +light-black = "#2C323C" +gray = "#3E4452" +light-gray = "#5C6370" +linenr = "#4B5263" diff --git a/helix-22.03-x86_64-windows/runtime/themes/rose_pine.toml b/helix-22.03-x86_64-windows/runtime/themes/rose_pine.toml new file mode 100644 index 0000000..d019709 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/rose_pine.toml @@ -0,0 +1,81 @@ +# Author: RayGervais<raygervais@hotmail.ca> +# Author: ChrisHa<chunghha@users.noreply.github.com> + +"ui.background" = { bg = "base" } +"ui.menu" = { fg = "text", bg = "overlay" } +"ui.menu.selected" = { fg = "iris", bg = "surface" } +"ui.linenr" = {fg = "subtle" } +"ui.liner.selected" = "highlightOverlay" +"ui.selection" = { bg = "highlight" } +"comment" = "subtle" +"ui.statusline" = {fg = "foam", bg = "surface" } +"ui.statusline.inactive" = { fg = "iris", bg = "surface" } +"ui.help" = { fg = "foam", bg = "surface" } +"ui.cursor" = { fg = "rose", modifiers = ["reversed"] } +"ui.text" = { fg = "text" } +"ui.text.focus" = { fg = "foam", modifiers = ["bold"]} +"ui.text.info" = {fg = "pine", modifiers = ["bold"]} +"operator" = "rose" +"variable" = "text" +"constant.numeric" = "iris" +"constant" = "gold" +"attributes" = "gold"  +"type" = "foam" +"ui.cursor.match" = { fg = "gold", modifiers = ["underlined"] } +"string"  = "gold" +"property" = "foam" +"constant.character.escape" = "subtle" +"function" = "rose" +"function.builtin" = "rose" +"function.method"  = "foam" +"constructor" = "gold" +"special" = "gold" +"keyword" = "pine" +"label" = "iris" +"namespace" = "pine" +"ui.popup" = { bg = "surface" } +"ui.popup.info" = { bg = "surface" } +"ui.window" = { bg = "base" } +"ui.help" = { bg = "overlay", fg = "foam" } +"text" = "text" +"diff.plus" = "foam" +"diff.delta" = "rose" +"diff.minus" = "love" + +"info" = "gold" +"hint" = "gold" +"debug" = "rose" +"diagnostic" = "rose" +"error" = "love" + +"markup.heading.marker" = "subtle" +"markup.heading.1" = { fg = "love", modifiers = ["bold"] } +"markup.heading.2" = { fg = "gold", modifiers = ["bold"] } +"markup.heading.3" = { fg = "rose", modifiers = ["bold"] } +"markup.heading.4" = { fg = "pine", modifiers = ["bold"] } +"markup.heading.5" = { fg = "form", modifiers = ["bold"] } +"markup.heading.6" = { fg = "fg", modifiers = ["bold"] } +"markup.list" = { fg = "love" } +"markup.bold" = { fg = "gold", modifiers = ["bold"] } +"markup.italic" = { fg = "iris", modifiers = ["italic"] } +"markup.link.url" = { fg = "pine", modifiers = ["underlined"]} +"markup.link.text" = { fg = "foam" } +"markup.quote" = { fg = "rose" } +"markup.raw" = { fg = "foam" } + +[palette] +base     = "#191724"  +surface  = "#1f1d2e"  +overlay  = "#26233a" +inactive = "#555169" +subtle   = "#6e6a86" +text     = "#e0def4" +love     = "#eb6f92" +gold     = "#f6c177" +rose     = "#ebbcba" +pine     = "#31748f" +foam     = "#9ccfd8" +iris     = "#c4a7e7" +highlight = "#2a2837" +highlightInactive = "#211f2d" +highlightOverlay = "#3a384a" diff --git a/helix-22.03-x86_64-windows/runtime/themes/rose_pine_dawn.toml b/helix-22.03-x86_64-windows/runtime/themes/rose_pine_dawn.toml new file mode 100644 index 0000000..0dc7a32 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/rose_pine_dawn.toml @@ -0,0 +1,81 @@ +# Author: RayGervais<raygervais@hotmail.ca> +# Author: ChrisHa<chunghha@users.noreply.github.com> + +"ui.background" = { bg = "surface" } +"ui.menu" = { fg = "text", bg = "overlay" } +"ui.menu.selected" = { fg = "iris", bg = "surface" } +"ui.linenr" = {fg = "subtle" } +"ui.liner.selected" = "highlightOverlay" +"ui.selection" = { bg = "highlight" } +"comment" = "subtle" +"ui.statusline" = {fg = "foam", bg = "surface" } +"ui.statusline.inactive" = { fg = "iris", bg = "surface" } +"ui.help" = { fg = "foam", bg = "surface" } +"ui.cursor" = { fg = "rose", modifiers = ["reversed"] } +"ui.text" = { fg = "text" } +"ui.text.focus" = { fg = "foam", modifiers = ["bold"]} +"ui.text.info" = {fg = "pine", modifiers = ["bold"]} +"operator" = "rose" +"variable" = "text" +"number" = "iris" +"constant" = "gold" +"attributes" = "gold"  +"type" = "foam" +"ui.cursor.match" = { fg = "gold", modifiers = ["underlined"] } +"string"  = "gold" +"property" = "foam" +"escape" = "subtle" +"function" = "rose" +"function.builtin" = "rose" +"function.method"  = "foam" +"constructor" = "gold" +"special" = "gold" +"keyword" = "pine" +"label" = "iris" +"namespace" = "pine" +"ui.popup" = { bg = "surface" } +"ui.popup.info" = { bg = "surface" } +"ui.window" = { bg = "base" } +"ui.help" = { bg = "overlay", fg = "foam" } +"text" = "text" +"diff.plus" = "foam" +"diff.delta" = "rose" +"diff.minus" = "love" + +"info" = "gold" +"hint" = "gold" +"debug" = "rose" +"diagnostic" = "rose" +"error" = "love" + +"markup.heading.marker" = "subtle" +"markup.heading.1" = { fg = "love", modifiers = ["bold"] } +"markup.heading.2" = { fg = "gold", modifiers = ["bold"] } +"markup.heading.3" = { fg = "rose", modifiers = ["bold"] } +"markup.heading.4" = { fg = "pine", modifiers = ["bold"] } +"markup.heading.5" = { fg = "form", modifiers = ["bold"] } +"markup.heading.6" = { fg = "fg", modifiers = ["bold"] } +"markup.list" = { fg = "love" } +"markup.bold" = { fg = "gold", modifiers = ["bold"] } +"markup.italic" = { fg = "iris", modifiers = ["italic"] } +"markup.link.url" = { fg = "pine", modifiers = ["underlined"]} +"markup.link.text" = { fg = "foam" } +"markup.quote" = { fg = "rose" } +"markup.raw" = { fg = "foam" } + +[palette] +base     = "#faf4ed"  +surface  = "#fffaf3"  +overlay  = "#f2e9de" +inactive = "#9893a5" +subtle   = "#6e6a86" +text     = "#575279" +love     = "#b4637a" +gold     = "#ea9d34" +rose     = "#d7827e" +pine     = "#286983" +foam     = "#56949f" +iris     = "#907aa9" +highlight = "#eee9e6" +highlightInactive = "#f2ede9" +highlightOverlay = "#e4dfde" diff --git a/helix-22.03-x86_64-windows/runtime/themes/serika-dark.toml b/helix-22.03-x86_64-windows/runtime/themes/serika-dark.toml new file mode 100644 index 0000000..da14578 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/serika-dark.toml @@ -0,0 +1,99 @@ +# Serika (Dark) +# Author: VuiMuich + +# Original Author: +# URL: https://github.com/arturoalviar/serika-syntax +# Author: arturoalviar +# License: MIT License + +"escape" = "orange" +"type" = "yellow" +"constant" = "purple" +"number" = "purple" +"string" = "fg" +"comment" = "grey2" +"variable" = "yellow" +"variable.builtin" = "blue" +"variable.parameter" = "yellow" +"variable.property" = "yellow" +"label" = "aqua" +"punctuation" = "grey0" +"punctuation.delimiter" = "grey2" +"punctuation.bracket" = "fg" +"keyword" = "red" +"operator" = "grey0" +"function" = "green" +"function.builtin" = "blue" +"function.macro" = "aqua" +"tag" = "yellow" +"namespace" = "fg" +"attribute" = "aqua" +"constructor" = "yellow" +"module" = "blue" +"property" = "yellow" +"special" = "orange" + +"ui.background" = { bg = "bg0" } +"ui.cursor" = { fg = "bg0", bg = "fg" } +"ui.cursor.match" = { fg = "grey3", bg = "grey2" } +"ui.cursor.insert" = { fg = "bg0", bg = "bg_yellow" } +"ui.cursor.select" = { fg = "bg0", bg = "bg_yellow" } +"ui.linenr" = "yellow" +"ui.linenr.selected" = { fg = "fg", modifiers = ["bold", "underlined"] } +"ui.statusline" = { fg = "grey1", bg = "bg2" } +"ui.statusline.inactive" = { fg = "grey2", bg = "bg1" } +"ui.popup" = { fg = "grey2", bg = "bg1" } +"ui.window" = { fg = "grey2", bg = "bg1" } +"ui.help" = { fg = "fg", bg = "bg1" } +"ui.text" = "fg" +"ui.text.focus" = "yellow" +"ui.menu" = { fg = "fg", bg = "bg2" } +"ui.menu.selected" = { fg = "bg0", bg = "bg_yellow" } +"ui.selection" = { bg = "bg3" } + +"hint" = "blue" +"info" = "aqua" +"warning" = "yellow" +"error" = "nasty-red" +"diagnostic" = { fg = "dark-red", Modifiers = ["underlined"] } + +"diff.plus" = { fg = "green" } +"diff.delta" = { fg = "orange" } +"diff.minus" = { fg = "red" } + +"markup.heading" = { fg = "purple", modifiers = ["bold"] } +"markup.list" = "cyan" +"markup.bold" = { fg = "orange", modifiers = ["bold"] } +"markup.italic" = { fg = "yellow", modifiers = ["italic"] } +"markup.link.url" = "cyan" +"markup.link.text" = "pink" +"markup.quote" = { fg = "yellow", modifiers = ["italic"] } +"markup.raw" = { fg = "foreground" } + +[palette] + +bg0 = "#323437" +bg1 = "#494c50" +bg2 = "#55585e" +bg3 = "#61656b" +bg4 = "#6d7278" +bg5 = "#797e86" +bg_visual = "#646669" +bg_red = "#7e2a33" +bg_green = "#86b365" +bg_blue = "#6a89af" +bg_yellow = "#e2b714" + +fg = "#d1d0c5" +red = "#f9ebed" +nasty-red = "#ca4754" +dark-red = "#7e2a33" +orange = "#dd8a3c" +yellow = "#e2b714" +green = "#e5eae1" +aqua = "#b9c2c6" +blue = "#bdcadb" +purple = "#d0c4d4" +grey0 = "#aaaeb3" +grey1 = "#e1e1e3" +grey2 = "#646669" diff --git a/helix-22.03-x86_64-windows/runtime/themes/serika-light.toml b/helix-22.03-x86_64-windows/runtime/themes/serika-light.toml new file mode 100644 index 0000000..edde904 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/serika-light.toml @@ -0,0 +1,100 @@ +# Serika (Light) +# Author: VuiMuich + +# Original Author: +# URL: https://github.com/arturoalviar/serika-syntax +# Author: arturoalviar +# License: MIT License + +"escape" = "orange" +"type" = "yellow" +"constant" = "purple" +"number" = "purple" +"string" = "fg" +"comment" = "grey2" +"variable" = "yellow" +"variable.builtin" = "blue" +"variable.parameter" = "yellow" +"variable.property" = "yellow" +"label" = "aqua" +"punctuation" = "grey0" +"punctuation.delimiter" = "grey2" +"punctuation.bracket" = "fg" +"keyword" = "red" +"operator" = "grey0" +"function" = "green" +"function.builtin" = "blue" +"function.macro" = "aqua" +"tag" = "yellow" +"namespace" = "fg" +"attribute" = "aqua" +"constructor" = "yellow" +"module" = "blue" +"property" = "yellow" +"special" = "orange" + +"ui.background" = { bg = "bg0" } +"ui.cursor" = { fg = "bg0", bg = "fg" } +"ui.cursor.match" = { fg = "grey1", bg = "grey2" } +"ui.cursor.insert" = { fg = "bg0", bg = "bg_yellow" } +"ui.cursor.select" = { fg = "bg0", bg = "bg_yellow" } +"ui.linenr" = "yellow" +"ui.linenr.selected" = { fg = "fg", modifiers = ["bold", "underlined"] } +"ui.statusline" = { fg = "grey1", bg = "bg5" } +"ui.statusline.inactive" = { fg = "grey2", bg = "bg1" } +"ui.popup" = { fg = "bg0", bg = "bg5" } +"ui.window" = { fg = "bg0", bg = "bg5" } +"ui.help" = { fg = "bg0", bg = "bg5" } +"ui.text" = "fg" +"ui.text.focus" = "yellow" +"ui.menu" = { fg = "bg0", bg = "bg3" } +"ui.menu.selected" = { fg = "bg0", bg = "bg_yellow" } +"ui.selection" = { fg = "bg0", bg = "bg3" } + +"hint" = "blue" +"info" = "aqua" +"warning" = "yellow" +"error" = "nasty-red" +"diagnostic" = { fg = "dark-red", Modifiers = ["underlined"] } + +"diff.plus" = { fg = "green" } +"diff.delta" = { fg = "orange" } +"diff.minus" = { fg = "red" } + +"markup.heading" = { fg = "purple", modifiers = ["bold"] } +"markup.list" = "cyan" +"markup.bold" = { fg = "orange", modifiers = ["bold"] } +"markup.italic" = { fg = "yellow", modifiers = ["italic"] } +"markup.link.url" = "cyan" +"markup.link.text" = "pink" +"markup.quote" = { fg = "yellow", modifiers = ["italic"] } +"markup.raw" = { fg = "foreground" } + + +[palette] + +bg0 = "#e1e1e3" +bg1 = "#494c50" +bg2 = "#55585e" +bg3 = "#61656b" +bg4 = "#6d7278" +bg5 = "#797e86" +bg_visual = "#646669" +bg_red = "#7e2a33" +bg_green = "#86b365" +bg_blue = "#6a89af" +bg_yellow = "#e2b714" + +fg = "#323437" +red = "#621d28" +nasty-red = "#da3333" +dark-red = "#791717" +orange = "#57320f" +yellow = "#e2b714" +green = "#3f4b34" +aqua = "#455054" +blue = "#3f5673" +purple = "#534059" +grey0 = "#aaaeb3" +grey1 = "#e1e1e3" +grey2 = "#646669" diff --git a/helix-22.03-x86_64-windows/runtime/themes/solarized_dark.toml b/helix-22.03-x86_64-windows/runtime/themes/solarized_dark.toml new file mode 100644 index 0000000..dd2013e --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/solarized_dark.toml @@ -0,0 +1,113 @@ +"attribute" = { fg = "violet" } +"keyword" = { fg = "green" } +"keyword.directive" = { fg = "orange" } +"namespace" = { fg = "violet" } +"operator" = { fg = "green" } +"special" = { fg = "orange" } +"variable.builtin" = { fg = "cyan", modifiers = ["bold"] } +"variable.function" = { fg = "blue" } +"type" = { fg = "yellow" } +"type.builtin" = { fg = "yellow", modifiers = ["bold"] } +"constructor" = { fg = "blue" } +"function" = { fg = "blue" } +"function.macro" = { fg = "magenta" } +"function.builtin" = { fg = "blue", modifiers = ["bold"] } +"function.special" = { fg = "magenta" } +"comment" = { fg = "base01" } +"string" = { fg = "cyan" } +"constant" = { fg = "cyan" } +"constant.builtin" = { fg = "cyan", modifiers = ["bold"] } +"constant.character.escape" = { fg = "red", modifiers = ["bold"] } +"label" = { fg = "green" } +"module" = { fg = "violet" } +"tag" = { fg = "magenta" } + +# TODO +"markup.heading" = "blue" +"markup.list" = "red" +"markup.bold" = { fg = "yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "red" +"markup.quote" = "cyan" +"markup.raw" = "green" + +"diff.plus" = { fg = "green" } +"diff.delta" = { fg = "orange" } +"diff.minus" = { fg = "red" } + +# 背景 +"ui.background" = { bg = "base03" } + +# 行号栏 +"ui.linenr" = { fg = "base0", bg = "base02" } +# 当前行号栏 +"ui.linenr.selected" = { fg = "blue", modifiers = ["bold"] } + +# 状态栏 +"ui.statusline" = { fg = "base03", bg = "base0" } +# 非活动状态栏 +"ui.statusline.inactive" = { fg = "base1", bg = "base01" } + +# 补全窗口, preview窗口 +"ui.popup" = { bg = "base02" } +# 影响 补全选中 cmd弹出信息选中 +"ui.menu.selected" = { fg = "base02", bg = "base2"} +"ui.menu" = { fg = "base1" } +# ?? +"ui.window" = { fg = "base3" } +# 命令行 补全的帮助信息 +"ui.help" = { modifiers = ["reversed"] } + +# 快捷键窗口  +"ui.popup.info" = { bg = "base1" } +# 快捷键字体 +"ui.text.info" = {fg = "base02", modifiers = ["bold"]} + +# 普通ui的字体样式 +"ui.text" = { fg = "base1" } +# 影响 picker列表选中, 快捷键帮助窗口文本 +"ui.text.focus" = { fg = "blue", modifiers = ["bold"]} +# file picker中, 预览的当前选中项 +"ui.highlight" = { fg = "red", modifiers = ["bold", "italic", "underlined"] } + +# 主光标/selectio +"ui.cursor.primary" = { fg = "base03", bg = "base1" } +"ui.cursor.select" = { fg = "base02", bg = "cyan" } +"ui.selection" = { bg = "base0175" } +"ui.selection.primary" = { bg = "base015" } + +# normal模式的光标 +"ui.cursor" = {fg = "base02", bg = "cyan"} +"ui.cursor.insert" = {fg = "base03", bg = "base3"} +# 当前光标匹配的标点符号 +"ui.cursor.match" = { fg = "base03", bg = "base00" } + +"warning" =  { fg = "orange", modifiers= ["bold", "underlined"] } +"error" = { fg = "red", modifiers= ["bold", "underlined"] } +"info" = { fg = "blue", modifiers= ["bold", "underlined"] } +"hint" = { fg = "base01", modifiers= ["bold", "underlined"] } +"diagnostic" = { modifiers = ["underlined"] } + +[palette] +# 深色 越来越深 +base03   = "#002b36" +base02   = "#073642" +base0175 = "#16404b" +base015  = "#2c4f59" +base01   = "#586e75" +base00   = "#657b83" +base0    = "#839496" +base1    = "#93a1a1" +base2    = "#eee8d5" +base3    = "#fdf6e3" + +# 浅色 越來越浅 +yellow  = "#b58900" +orange  = "#cb4b16" +red     = "#dc322f" +magenta = "#d33682" +violet  = "#6c71c4" +blue    = "#268bd2" +cyan    = "#2aa198" +green   = "#859900" diff --git a/helix-22.03-x86_64-windows/runtime/themes/solarized_light.toml b/helix-22.03-x86_64-windows/runtime/themes/solarized_light.toml new file mode 100644 index 0000000..9c82029 --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/solarized_light.toml @@ -0,0 +1,114 @@ +"attribute" = { fg = "violet" } +"keyword" = { fg = "green" } +"keyword.directive" = { fg = "orange" } +"namespace" = { fg = "violet" } +"operator" = { fg = "green" } +"special" = { fg = "orange" } +"variable.builtin" = { fg = "cyan", modifiers = ["bold"] } +"variable.function" = { fg = "blue" } +"type" = { fg = "yellow" } +"type.builtin" = { fg = "yellow", modifiers = ["bold"] } +"constructor" = { fg = "blue" } +"function" = { fg = "blue" } +"function.macro" = { fg = "magenta" } +"function.builtin" = { fg = "blue", modifiers = ["bold"] } +"function.special" = { fg = "magenta" } +"comment" = { fg = "base01" } +"string" = { fg = "cyan" } +"constant" = { fg = "cyan" } +"constant.builtin" = { fg = "cyan", modifiers = ["bold"] } +"constant.character.escape" = { fg = "red", modifiers = ["bold"] } +"label" = { fg = "green" } +"module" = { fg = "violet" } +"tag" = { fg = "magenta" } + +# TODO +"markup.heading" = "blue" +"markup.list" = "red" +"markup.bold" = { fg = "yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "red" +"markup.quote" = "cyan" +"markup.raw" = "green" + +"diff.plus" = { fg = "green" } +"diff.delta" = { fg = "orange" } +"diff.minus" = { fg = "red" } + +# 背景 +"ui.background" = { bg = "base03" } + +# 行号栏 +"ui.linenr" = { fg = "base0", bg = "base02" } +# 当前行号栏 +"ui.linenr.selected" = { fg = "blue", modifiers = ["bold"] } + +# 状态栏 +"ui.statusline" = { fg = "base03", bg = "base0" } +# 非活动状态栏 +"ui.statusline.inactive" = { fg = "base1", bg = "base01" } + +# 补全窗口, preview窗口 +"ui.popup" = { bg = "base02" } +# 影响 补全选中 cmd弹出信息选中 +"ui.menu.selected" = { fg = "base02", bg = "base2"} +"ui.menu" = { fg = "base1" } +# ?? +"ui.window" = { fg = "base3" } +# 命令行 补全的帮助信息 +"ui.help" = { modifiers = ["reversed"] } + +# 快捷键窗口  +"ui.popup.info" = { bg = "base1" } +# 快捷键字体 +"ui.text.info" = {fg = "base02", modifiers = ["bold"]} + +# 普通ui的字体样式 +"ui.text" = { fg = "base1" } +# 影响 picker列表选中, 快捷键帮助窗口文本 +"ui.text.focus" = { fg = "blue", modifiers = ["bold"]} +# file picker中, 预览的当前选中项 +"ui.highlight" = { fg = "red", modifiers = ["bold", "italic", "underlined"] } + +# 主光标/selectio +"ui.cursor.primary" = { fg = "base03", bg = "base1" } +"ui.cursor.select" = { fg = "base02", bg = "cyan" } +"ui.selection" = { bg = "base0175" } +"ui.selection.primary" = { bg = "base015" } + +# normal模式的光标 +"ui.cursor" = {fg = "base02", bg = "cyan"} +"ui.cursor.insert" = {fg = "base03", bg = "base3"} +# 当前光标匹配的标点符号 +"ui.cursor.match" = { fg = "base02", bg = "light-gray" } + +"warning" =  { fg = "orange", modifiers= ["bold", "underlined"] } +"error" = { fg = "red", modifiers= ["bold", "underlined"] } +"info" = { fg = "blue", modifiers= ["bold", "underlined"] } +"hint" = { fg = "base01", modifiers= ["bold", "underlined"] } +"diagnostic" = { modifiers = ["underlined"] } + +[palette] +red      = '#dc322f' +green    = '#859900' +yellow   = '#b58900' +blue     = '#268bd2' +magenta  = '#d33682' +cyan     = '#2aa198' +orange   = '#cb4b16' +violet   = '#6c71c4' + +# 深色 越来越深 +base0    = '#657b83' +base1    = '#586e75' +base2    = '#073642' +base3    = '#002b36' + +## 浅色 越來越浅 +base00   = '#839496' +base01   = '#93a1a1' +base015  = '#c5c8bd' +base0175 = '#dddbcc' +base02   = '#eee8d5' +base03   = '#fdf6e3' diff --git a/helix-22.03-x86_64-windows/runtime/themes/spacebones_light.toml b/helix-22.03-x86_64-windows/runtime/themes/spacebones_light.toml new file mode 100644 index 0000000..29c7d7f --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/themes/spacebones_light.toml @@ -0,0 +1,79 @@ +# Author : Koen Van der Auwera <atog@hey.com> +# Based on SpaceBones Light https://github.com/chipotle/spacebones +# https://github.com/chipotle/spacebones/blob/main/SpaceBones%20Light.bbColorScheme + +"attribute" = "#b1951d" +"keyword" = { fg = "#3a81c3" } +"keyword.directive" = "#3a81c3" +"namespace" = "#b1951d" +"punctuation" = "#6c3163" +"punctuation.delimiter" = "#6c3163" +"operator" = "#ba2f59" +"special" = "#ba2f59" +"property" = "#7590db" +"variable.property" = "#7590db" +"variable" = "#715ab1" +"variable.builtin" = "#715ab1" +"variable.parameter" = "#7590db" +"type" = "#6c3163" +"type.builtin" = "#6c3163" +"constructor" = { fg = "#4e3163", modifiers = ["bold"] } +"function" = { fg = "#715ab1", modifiers = ["bold"] } +"function.macro" = "#b1951d" +"function.builtin" = "#b1951d" +"comment" = { fg = "#a49da5", modifiers = ["italic"]  } +"constant" = { fg = "#6c3163" } +"constant.builtin" = { fg = "#6c3163", modifiers = ["bold"] } +"string" = "#2d9574" +"number" = "#6c3163" +"escape" = { fg = "fg2", modifiers = ["bold"] } +"label" = "#b1951d" +"module" = "#b1951d" + +# TODO +"markup.heading" = "blue" +"markup.list" = "red" +"markup.bold" = { fg = "yellow", modifiers = ["bold"] } +"markup.italic" = { fg = "magenta", modifiers = ["italic"] } +"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] } +"markup.link.text" = "red" +"markup.quote" = "cyan" +"markup.raw" = "green" + +"diff.plus" = "#2d9574" +"diff.delta" = "#715ab1" +"diff.minus" = "#ba2f59" + +"warning" = { fg = "#da8b55" } +"error" = { fg = "#e0211d" } +"info" = { fg = "#b1951d" } +"hint" = { fg = "#d1dcdf" } + +"ui.background" = { bg = "bg0" } +"ui.linenr" = { fg = "bg3" } +"ui.linenr.selected" = { fg = "#b1951d" } +"ui.statusline" = { fg = "fg1", bg = "bg2" } +"ui.statusline.inactive" = { fg = "fg4", bg = "bg1" } +"ui.popup" = { bg = "bg1" } +"ui.window" = { bg = "bg1" } +"ui.help" = { bg = "bg1", fg = "fg1" } +"ui.text" = { fg = "fg1" } +"ui.text.focus" = { fg = "fg1" } +"ui.selection" = { bg = "bg3", modifiers = ["reversed"] } +"ui.cursor.primary" = { modifiers = ["reversed"] } +"ui.cursor.match" = { bg = "bg3" } +"ui.menu" = { fg = "fg1", bg = "bg2" } +"ui.menu.selected" = { fg = "#655370", bg = "#d1dcdf", modifiers = ["bold"] } + +"diagnostic" = { modifiers = ["underlined"] } + +[palette] +bg0 = "#fbf8ef" +bg1 = "#efeae9" +bg2 = "#d1dcdf" +bg3 = "#b4c6cb" + +fg1 = "#655370" +fg2 = "#5f3bc4" +fg3 = "#bdae93" +fg4 = "#a89984" diff --git a/helix-22.03-x86_64-windows/runtime/tutor.txt b/helix-22.03-x86_64-windows/runtime/tutor.txt new file mode 100644 index 0000000..b6f600d --- /dev/null +++ b/helix-22.03-x86_64-windows/runtime/tutor.txt @@ -0,0 +1,421 @@ +                  _   _                 __    __ +                 | | | |         _      \ \  / / +                 | |_| |   ___  | | (_)  \ \/ / +                 |  _  |  / _ \ | |  _    )  ( +                 | | | | |  __/ | | | |  / /\ \ +                 |_| |_|  \___| |_| |_| /_/  \_\ + +                 A post-modern modal text editor. +_________________________________________________________________ + + Welcome to the Helix editor! Helix is different from editors + you might be used to in that it is modal, meaning that it has + different modes for editing text. The primary modes you will + use are Normal mode and Insert mode. While in Normal mode, the + keys you press won't actually type text. Instead, they will + perform various actions with the text. This allows for more + efficient editing. This tutor will teach you how you can make + use of Helix's modal editing features. To begin, ensure your + caps-lock key is not pressed and hold the j key until you reach + the first lesson. + + +================================================================= +=                     BASIC CURSOR MOVEMENT                     = +================================================================= + +          ↑ +          k       * h is on the left +      ← h   l →   * l is on the right +          j       * j looks like a down arrow +          ↓ + + The cursor can be moved using the h, j, k, l keys, as shown + above. The cursor/arrow keys will also work, but it is faster + to use the hjkl keys as they are closer to the other keys you + will be using. Try moving around to get a feel for hjkl. + Once you're ready, hold j to continue to the next lesson. + + + + + + + +================================================================= +=                        EXITING HELIX                          = +================================================================= + + 1. Press the : key to enter command mode. Your cursor will +    move to the bottom of the screen. + 2. Type q or quit and press <ENTER> to exit Helix. + + Note: The quit command will fail if there are unsaved changes. +       To force quit and DISCARD these changes, use q! or quit!. +       You will learn how to save files later. + + To exit command mode without entering a command, press <ESC>. + + Now, move on to the next lesson. + + + + + + + +================================================================= +=                           DELETION                            = +================================================================= + + Press the d key to delete the character under the cursor. + + 1. Move the cursor to the line below marked -->. + 2. Move the cursor to each extra character, and press d to +    delete it. + + --> Thhiss senttencee haass exxtra charracterss. + + Once the sentence is correct, move on to the next lesson. + + + + + + + + + +================================================================= +=                          INSERT MODE                          = +================================================================= + + Press the i key to enter Insert mode. + + 1. Move the cursor to the line below marked -->. + 2. Move to a place in the line which is missing text and press +    i to enter Insert mode. Keys you press will now type text. + 3. Enter the missing text. + 4. Press <ESC> to exit Insert mode and return to Normal mode. + 5. Repeat until the line matches the line below it. + + --> Th stce misg so. +     This sentence is missing some text. + + Note: If you want to move the cursor while in Insert mode, +       you may use the arrow keys instead of exiting and +       reentering Insert mode. + Note: The status bar will display your current mode. +       Notice that when you press i, 'NOR' changes to 'INS'. + +================================================================= +=                      MORE ON INSERT MODE                      = +================================================================= + + As you saw, you can press i to enter Insert mode at the current + position of the cursor. There are a few other ways you can + enter Insert mode at different locations. + + Common examples of insertion commands include: +   i - Insert before the selection. +   a - Insert after the selection. (a means 'append') +   I - Insert at the start of the line. +   A - Insert at the end of the line. + + 1. Move to anywhere in the line below marked -->. + 2. Press A (<SHIFT> + a), your cursor will move to the end of +    the line and you will be able to type. + 3. Type the text necessary to match the line below. + + --> This sentence is miss +     This sentence is missing some text. + +================================================================= +=                         SAVING A FILE                         = +================================================================= + + Use :w/:write to save a file. + + 1. Exit Helix using :q! as explained before, or open a new +    terminal. + 2. Open a file in Helix by running: hx FILENAME + 3. Make some edits to the file. + 4. Press the : key to enter command mode. + 5. Type w or write, and press <ENTER> to save the file. + + You can also use wq or write-quit to save and exit. + + Note: You can optionally enter a filepath after the w/write +       command in order to save to that path. + Note: If there are any unsaved changes to a file, a plus [+] +       will appear next to the file name in the status bar. + + + +================================================================= +=                             RECAP                             = +================================================================= + + * Use the h,j,k,l keys to move the cursor. + + * Press : to enter command mode. +   * The q/quit and q!/quit! commands will exit Helix. The +     former fails when there are unsaved changes. The latter +     discards them. +   * The w/write command will save the file. +   * The wq/write-quit command will do both. + + * Press d to delete the character at the cursor. + + * Press i to enter Insert mode and type text. Press <ESC> to +   return to Normal mode. + + + + + +================================================================= +=                    MOTIONS AND SELECTIONS                     = +================================================================= + + Press w to select forward until the next word. + + The d key doesn't actually delete the character at the cursor, + it deletes all selected text. Your cursor is like a + single-character selection. + + 1. Move the cursor to the line below marked -->. + 2. Move to the beginning of a word that needs to be deleted. + 3. Press w to select until the beginning of the next word. + 4. Press d to delete the selection. + 5. Repeat for all extra words in the line. + + --> This sentence pencil has vacuum extra words in the it. + + + + + +================================================================= +=                        MORE ON MOTIONS                        = +================================================================= + + As you saw, pressing w moves the cursor forward until the start + of the next word, selecting the text traversed. This is useful + for moving around text and for selecting text to operate on. + + Some common motions include: +   w - Move forward to before the beginning of the next word. +   e - Move forward to the end of the current word. +   b - Move backward to the beginning of the current word. + + The w,e,b motions also have counterparts - W,E,B - which + traverse WORDS instead of words. WORDS are only separated by + whitespace, whereas words can be separated by other characters + in addition to whitespace. + + All of these motions select the text they traverse. + + + +================================================================= +=                      THE CHANGE COMMAND                       = +================================================================= + + Press c to change the current selection. + + The change command deletes the current selection and enters + Insert mode, so it is a very common shorthand for di. + + 1. Move the cursor to the line below marked -->. + 2. Move to the start of an incorrect word and press w to +    select it. + 3. Press c to delete the word and enter Insert mode. + 4. Type the correct word. + 5. Repeat until the line matches the line below it. + + --> This paper has heavy words behind it. +     This sentence has incorrect words in it. + + + + +================================================================= +=                      COUNTS WITH MOTIONS                      = +================================================================= + + Type a number before a motion to repeat it that many times. + + 1. Move the cursor to the line below marked -->. + + 2. Type 2w to move 2 words forward. + + 3. Type 3e to move to the end of the third word forward. + + 4. Type 2b to move 2 words backwards + + 5. Try the above with different numbers. + + --> This is just a line with words you can move around in. + + + + + +================================================================= +=                        SELECTING LINES                        = +================================================================= + + Press x to select a whole line. Press again to select the next. + + 1. Move the cursor to the second line below marked -->. + 2. Press x to select the line, and d to delete it. + 3. Move to the fourth line. + 4. Press x twice or type 2x to select 2 lines, and d to delete. + + --> 1) Roses are red, + --> 2) Mud is fun, + --> 3) Violets are blue, + --> 4) I have a car, + --> 5) Clocks tell time, + --> 6) Sugar is sweet, + --> 7) And so are you. + + + + +================================================================= +=                            UNDOING                            = +================================================================= + + Type u to undo. Type U to redo. + + 1. Move the cursor to the line below marked -->. + 2. Move to the first error, and press d to delete it. + 3. Type u to undo your deletion. + 4. Fix all the errors on the line. + 5. Type u several times to undo your fixes. + 6. Type U (<SHIFT> + u) several times to redo your fixes. + + --> Fiix the errors on thhis line and reeplace them witth undo. + + + + + + + + +================================================================= +=                             RECAP                             = +================================================================= + + * Type w to select forward until the next word. +   * Type e to select to the end of the current word. +   * Type b to select backward to the start of the current word. +   * Use uppercase counterparts, W,E,B, to traverse WORDS. + + * Typing d deletes the entire selection, so you can delete a +   word forward by typing wd. + + * Type c to delete the selection and enter Insert mode. + + * Type a number before a motion to repeat it that many times. + + * Type x to select the entire current line. Type x again to +   select the next line. + + * Type u to undo. Type U to redo. + + +================================================================= +=                       MULTIPLE CURSORS                        = +================================================================= + + Type C to duplicate the cursor to the next line. + + 1. Move the cursor to the first line below marked -->. + 2. Type C to duplicate the cursor to the next line. Keys you +    press will now affect both cursors. + 3. Use Insert mode to correct the lines. The two cursors will +    fix both lines simultaneously. + 4. Type , to remove the second cursor. + + --> Fix th two nes at same ime. + --> Fix th two nes at same ime. + +     Fix these two lines at the same time. + + + + + +================================================================= +=                      THE SELECT COMMAND                       = +================================================================= + + Type s to select matches in the selection. + + 1. Move the cursor to the line below marked -->. + 2. Press x to select the line. + 3. Press s. A prompt will appear. + 4. Type 'apples' and press <ENTER>. Both occurrences of +    'apples' in the line will be selected. + 5. You can now press c and change 'apples' to something else, +    like 'oranges'. + 6. Type , to remove the second cursor. + + --> I like to eat apples since my favorite fruit is apples. + + + + + + +================================================================= +=                      SELECTING VIA REGEX                      = +================================================================= + + The select command selects regular expressions, not just exact + matches, allowing you to target more complex patterns. + + 1. Move the cursor to the line below marked -->. + 2. Select the line with x and then press s. + 3. Enter '  +' to select any amount of consecutive spaces >1. + 4. Press c and change the matches to single spaces. + + --> This  sentence has   some      extra spaces. + + Note: If you want to perform find-and-replace, the select +       command is the way to do it. Select the text you want +       to replace in — type % to select the whole file — and +       then perform the steps explained above. + + + + +================================================================= +=                     COLLAPSING SELECTIONS                     = +================================================================= + + Type ; to collapse selections to single cursors. + + Sometimes, you want to deselect without having to move the + cursor(s). This can be done using the ; key. + + 1. Move the cursor to the line below marked -->. + + 2. Use the motions you have learned to move around the line, +    and try using ; to deselect the text after it is selected +    by the motions. + + --> This is an error-free line with words to move around in. + + + + + + +================================================================= + This tutorial is still a work-in-progress. + More sections are planned.  | 
