mirror of
https://github.com/helix-editor/helix.git
synced 2024-11-27 20:03:29 +04:00
9c6c63a2be
* inject language based on file extension Nodes can now be captured with "injection.filename". If this capture contains a valid file extension known to Helix, then the content will be highlighted as that language. * inject language by shebang Nodes can now be captured with "injection.shebang". If this capture contains a valid shebang line known to Helix, then the content will be highlighted as the language the shebang calls for. * add documentation for language injection * nix: fix highlights The `@` is now highlighted properly on either side of the function arg. Also, extending the phases with `buildPhase = prev.buildPhase + ''''` is now highlighted properly. Fix highlighting of `''$` style escapes (requires tree-sitter-nix bump) Fix `inherit` highlighting. * simplify injection_for_match Split out injection pair logic into its own method to make the overall flow easier to follow. Also transform the top-level function into a method on a HighlightConfiguration. * markdown: add shebang injection query
23 lines
942 B
Scheme
23 lines
942 B
Scheme
; From nvim-treesitter/nvim-treesitter
|
|
|
|
(fenced_code_block
|
|
(code_fence_content) @injection.shebang @injection.content
|
|
(#set! injection.include-unnamed-children))
|
|
|
|
(fenced_code_block
|
|
(info_string
|
|
(language) @injection.language)
|
|
(code_fence_content) @injection.content (#set! injection.include-unnamed-children))
|
|
|
|
((html_block) @injection.content
|
|
(#set! injection.language "html")
|
|
(#set! injection.include-unnamed-children)
|
|
(#set! injection.combined))
|
|
|
|
((pipe_table_cell) @injection.content (#set! injection.language "markdown.inline") (#set! injection.include-unnamed-children))
|
|
|
|
((minus_metadata) @injection.content (#set! injection.language "yaml") (#set! injection.include-unnamed-children))
|
|
((plus_metadata) @injection.content (#set! injection.language "toml") (#set! injection.include-unnamed-children))
|
|
|
|
((inline) @injection.content (#set! injection.language "markdown.inline") (#set! injection.include-unnamed-children))
|