nvim-treesitter/queries/java/injections.scm
Robert Muir cb8e810a1e feat(java): add injections for markdown documentation comments
Since Java 23, java documentation supports markdown.
It is supported by a '///' line comment followed by mandatory
white space: https://openjdk.org/jeps/467
2025-02-20 00:22:01 +01:00

38 lines
1.1 KiB
Scheme

([
(block_comment)
(line_comment)
] @injection.content
(#set! injection.language "comment"))
((block_comment) @injection.content
(#lua-match? @injection.content "/[*][!<*][^a-zA-Z]")
(#set! injection.language "doxygen"))
; markdown-style javadocs: https://openjdk.org/jeps/467
((line_comment) @injection.content
(#lua-match? @injection.content "^///%s")
(#offset! @injection.content 0 4 0 0)
(#set! injection.language "markdown_inline"))
; markdown-style javadocs: https://openjdk.org/jeps/467
((line_comment) @injection.content
(#lua-match? @injection.content "^///%s+[@]")
(#offset! @injection.content 0 4 0 0)
(#set! injection.language "doxygen"))
((method_invocation
name: (identifier) @_method
arguments: (argument_list
.
(string_literal
.
(_) @injection.content)))
(#any-of? @_method "format" "printf")
(#set! injection.language "printf"))
((method_invocation
object: (string_literal
(string_fragment) @injection.content)
name: (identifier) @_method)
(#eq? @_method "formatted")
(#set! injection.language "printf"))