nvim-treesitter/queries/java/injections.scm
Robert Muir 652da0b40f
feat(javadoc): add parser and queries (#7749)
Previously java was configured to use doxygen parser for documentation
comments, but javadocs are not doxygen. Inline tags have a different
syntax, block tags are not recognized, and doxygen creates a lot of
errors during highlighting.

Add parser for javadoc comments, with queries for highlights and
injections.
2025-03-23 16:44:12 +01:00

31 lines
813 B
Scheme

([
(block_comment)
(line_comment)
] @injection.content
(#set! injection.language "comment"))
((block_comment) @injection.content
(#lua-match? @injection.content "/[*][*][%s]")
(#set! injection.language "javadoc"))
; markdown-style javadocs https://openjdk.org/jeps/467
((line_comment) @injection.content
(#lua-match? @injection.content "^///%s")
(#set! injection.language "javadoc"))
((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"))