Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/nix/injections.scm')
| -rw-r--r-- | runtime/queries/nix/injections.scm | 272 |
1 files changed, 0 insertions, 272 deletions
diff --git a/runtime/queries/nix/injections.scm b/runtime/queries/nix/injections.scm deleted file mode 100644 index f9e0267b..00000000 --- a/runtime/queries/nix/injections.scm +++ /dev/null @@ -1,272 +0,0 @@ -((comment) @injection.content - (#set! injection.language "comment")) - -; mark arbitrary languages with a comment -((((comment) @injection.language) . - (indented_string_expression (string_fragment) @injection.content)) - (#set! injection.combined)) -((binding - (comment) @injection.language - expression: (indented_string_expression (string_fragment) @injection.content)) - (#set! injection.combined)) - -; Common attribute keys corresponding to Python scripts, -; such as those for NixOS VM tests in nixpkgs/nixos/tests. -((binding - attrpath: (attrpath (identifier) @_path) - expression: (indented_string_expression - (string_fragment) @injection.content)) - (#match? @_path "(^|\\.)testScript$") - (#set! injection.language "python") - (#set! injection.combined)) - -; Common attribute keys corresponding to scripts, -; such as those of stdenv.mkDerivation. -((binding - attrpath: (attrpath (identifier) @_path) - expression: [ - (indented_string_expression (string_fragment) @injection.content) - (binary_expression (indented_string_expression (string_fragment) @injection.content)) - ]) - (#match? @_path "(^\\w*Phase|command|(pre|post)\\w*|(.*\\.)?\\w*([sS]cript|[hH]ook)|(.*\\.)?startup)$") - (#set! injection.language "bash") - (#set! injection.combined)) - -; builtins.{match,split} regex str -; Example: nix/tests/lang/eval-okay-regex-{match,split}.nix -((apply_expression - function: (_) @_func - argument: (indented_string_expression (string_fragment) @injection.content)) - (#match? @_func "(^|\\.)match|split$") - (#set! injection.language "regex") - (#set! injection.combined)) - -; builtins.fromJSON json -; Example: nix/tests/lang/eval-okay-fromjson.nix -((apply_expression - function: (_) @_func - argument: (indented_string_expression (string_fragment) @injection.content)) - (#match? @_func "(^|\\.)fromJSON$") - (#set! injection.language "json") - (#set! injection.combined)) - -; builtins.fromTOML toml -; Example: https://github.com/NixOS/nix/blob/3e8cd2ffe6c2c6ed8aae7853ddcfcc6d2a49b0ce/tests/functional/lang/eval-okay-fromTOML.nix -((apply_expression - function: (_) @_func - argument: (indented_string_expression (string_fragment) @injection.content)) - (#match? @_func "(^|\\.)fromTOML$") - (#set! injection.language "toml") - (#set! injection.combined)) - -; trivial-builders.nix pkgs.writeShellScript[Bin] name content -((apply_expression - function: (apply_expression function: (_) @_func) - argument: (indented_string_expression (string_fragment) @injection.content)) - (#match? @_func "(^|\\.)writeShellScript(Bin)?$") - (#set! injection.language "bash") - (#set! injection.combined)) - -; trivial-builders.nix, aliases.nix -; pkgs.runCommand[[No]CC][Local] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)runCommand(((No)?(CC))?(Local)?)?$") - (#set! injection.language "bash") - (#set! injection.combined)) - -; trivial-builders.nix pkgs.writeShellApplication { text = content; } -(apply_expression - function: ((_) @_func) - argument: (_ (_)* (_ (_)* (binding - attrpath: (attrpath (identifier) @_path) - expression: (indented_string_expression - (string_fragment) @injection.content)))) - (#match? @_func "(^|\\.)writeShellApplication$") - (#match? @_path "^text$") - (#set! injection.language "bash") - (#set! injection.combined)) - -; trivial-builders.nix pkgs.writeCBin name content -((apply_expression - function: (apply_expression function: (_) @_func) - argument: (indented_string_expression (string_fragment) @injection.content)) - (#match? @_func "(^|\\.)writeC(Bin)?$") - (#set! injection.language "c") - (#set! injection.combined)) - -; pkgs.writers.* usage examples: nixpkgs/pkgs/build-support/writers/test.nix - -; pkgs.writers.write{Bash,Dash}[Bin] name content -((apply_expression - function: (apply_expression function: (_) @_func) - argument: (indented_string_expression (string_fragment) @injection.content)) - (#match? @_func "(^|\\.)write[BD]ash(Bin)?$") - (#set! injection.language "bash") - (#set! injection.combined)) - -; pkgs.writers.writeFish[Bin] name content -((apply_expression - function: (apply_expression function: (_) @_func) - argument: (indented_string_expression (string_fragment) @injection.content)) - (#match? @_func "(^|\\.)writeFish(Bin)?$") - (#set! injection.language "fish") - (#set! injection.combined)) - -; pkgs.writers.writeRust[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeRust(Bin)?$") - (#set! injection.language "rust") - (#set! injection.combined)) - -; pkgs.writers.writeHaskell[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeHaskell(Bin)?$") - (#set! injection.language "haskell") - (#set! injection.combined)) - -; pkgs.writers.writeNim[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeNim(Bin)?$") - (#set! injection.language "nim") - (#set! injection.combined)) - -; pkgs.writers.writeJS[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeJS(Bin)?$") - (#set! injection.language "javascript") - (#set! injection.combined)) - -; pkgs.writers.writePerl[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writePerl(Bin)?$") - (#set! injection.language "perl") - (#set! injection.combined)) - -; pkgs.writers.write{Python,PyPy}{2,3}[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)write(Python|PyPy)[23](Bin)?$") - (#set! injection.language "python") - (#set! injection.combined)) - -; pkgs.writers.writeNu[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeNu(Bin)?$") - (#set! injection.language "nu") - (#set! injection.combined)) - -; pkgs.writers.writeRuby[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeRuby(Bin)?$") - (#set! injection.language "ruby") - (#set! injection.combined)) - -; pkgs.writers.writeLua[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeLua(Bin)?$") - (#set! injection.language "lua") - (#set! injection.combined)) - -; pkgs.writers.writeNginxConfig name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeNginxConfig$") - (#set! injection.language "nginx") - (#set! injection.combined)) - -; pkgs.writers.writeGuile[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeGuile(Bin)?$") - (#set! injection.language "scheme") ; Guile is a GNU specific implementation of scheme - (#set! injection.combined)) - - -; pkgs.writers.writeBabashka[Bin] name attrs content -(apply_expression - (apply_expression - function: (apply_expression - function: ((_) @_func))) - argument: (indented_string_expression (string_fragment) @injection.content) - (#match? @_func "(^|\\.)writeBabashka(Bin)?$") - (#set! injection.language "clojure") - (#set! injection.combined)) - -; pkgs.writers.writeFSharp[Bin] name content -; No query available for f-sharp as of the time of writing -; See: https://github.com/helix-editor/helix/issues/4943 -; ((apply_expression -; function: (apply_expression function: (_) @_func) -; argument: (indented_string_expression (string_fragment) @injection.content)) -; (#match? @_func "(^|\\.)writeFSharp(Bin)?$") -; (#set! injection.language "f-sharp") -; (#set! injection.combined)) - -((apply_expression - function: (apply_expression function: (_) @_func - argument: (string_expression (string_fragment) @injection.filename)) - argument: (indented_string_expression (string_fragment) @injection.content)) - (#match? @_func "(^|\\.)write(Text|Script(Bin)?)$") - (#set! injection.combined)) - -((indented_string_expression (string_fragment) @injection.shebang @injection.content) - (#set! injection.combined)) - -; string contents of lib.literalExpression is nix code -((apply_expression - function: [ - (select_expression) ; `lib.literalExpression` - (variable_expression) ; `literalExpression` this is the case when the symbol is brougth into scope e.g. `let inherit (lib) literalExpression; in` - ] @_func - argument: [ - (indented_string_expression (string_fragment) @injection.content) ; lib.literalExpression ''...'' - (string_expression (string_fragment) @injection.content) ; lib.literalExpression "..." - ]) - (#any-of? @_func "lib.literalExpression" "literalExpression") - (#set! injection.language "nix") - (#set! injection.combined)) |