Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/just/injections.scm')
| -rw-r--r-- | runtime/queries/just/injections.scm | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/runtime/queries/just/injections.scm b/runtime/queries/just/injections.scm deleted file mode 100644 index 39877be4..00000000 --- a/runtime/queries/just/injections.scm +++ /dev/null @@ -1,82 +0,0 @@ -; Specify nested languages that live within a `justfile` - -; ================ Always applicable ================ - -((comment) @injection.content - (#set! injection.language "comment")) - -; Highlight the RHS of `=~` as regex -((regex - (_) @injection.content) - (#set! injection.language "regex")) - -; ================ Global defaults ================ - -; Default everything to be bash -(recipe_body - !shebang - (#set! injection.language "bash") - (#set! injection.include-children)) @injection.content - -(external_command - (content) @injection.content - (#set! injection.language "bash")) - -; ================ Global language specified ================ -; Global language is set with something like one of the following: -; -; set shell := ["bash", "-c", ...] -; set shell := ["pwsh.exe"] -; -; We can extract the first item of the array, but we can't extract the language -; name from the string with something like regex. So instead we special case -; two things: powershell, which is likely to come with a `.exe` attachment that -; we need to strip, and everything else which hopefully has no extension. We -; separate this with a `#match?`. -; -; Unfortunately, there also isn't a way to allow arbitrary nesting or -; alternatively set "global" capture variables. So we can set this for item- -; level external commands, but not for e.g. external commands within an -; expression without getting _really_ annoying. Should at least look fine since -; they default to bash. Limitations... -; See https://github.com/tree-sitter/tree-sitter/issues/880 for more on that. - -(file - (setting "shell" ":=" "[" (string) @_langstr - (#match? @_langstr ".*(powershell|pwsh|cmd).*") - (#set! injection.language "powershell")) - [ - (recipe - (recipe_body - !shebang - (#set! injection.include-children)) @injection.content) - - (assignment - (expression - (value - (external_command - (content) @injection.content)))) - ]) - -(file - (setting "shell" ":=" "[" (string) @injection.language - (#not-match? @injection.language ".*(powershell|pwsh|cmd).*")) - [ - (recipe - (recipe_body - !shebang - (#set! injection.include-children)) @injection.content) - - (assignment - (expression - (value - (external_command - (content) @injection.content)))) - ]) - -; ================ Recipe language specified - Helix only ================ - -; Set highlighting for recipes that specify a language using builtin shebang matching -(recipe_body - (shebang_line) @injection.shebang - (#set! injection.include-children)) @injection.content |