From 71149dfec502d7489cd7e46c721f891b486bdbf6 Mon Sep 17 00:00:00 2001 From: Aliaksei Budavei <0x000c70@gmail.com> Date: Sun, 31 Aug 2025 19:16:14 +0200 Subject: [PATCH] runtime(java): Dismiss "g:markdown_fenced_languages" for Java buffers No support is provided or planned for language recognition in code snippets of documentation comments. Requesting to load arbitrary syntax plugins with the aid of the concerned variable is therefore wasteful in general and erroneous when paired languages ":syn-include" one another without taking steps to manage circularity. related: #17308 related: #17220 closes: #18172 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt --- runtime/syntax/java.vim | 12 +++++++++++- .../syntax/testdir/dumps/java_comments_html_00.dump | 2 +- .../testdir/dumps/java_comments_markdown_00.dump | 2 +- runtime/syntax/testdir/input/java_comments_html.java | 2 +- .../syntax/testdir/input/java_comments_markdown.java | 2 +- 5 files changed, 15 insertions(+), 5 deletions(-) diff --git a/runtime/syntax/java.vim b/runtime/syntax/java.vim index 22b86ed9dc..a7c0f4abe6 100644 --- a/runtime/syntax/java.vim +++ b/runtime/syntax/java.vim @@ -3,7 +3,7 @@ " Maintainer: Aliaksei Budavei <0x000c70 AT gmail DOT com> " Former Maintainer: Claudio Fleiner " Repository: https://github.com/zzzyxwvut/java-vim.git -" Last Change: 2025 Aug 07 +" Last Change: 2025 Aug 30 " Please check ":help java.vim" for comments on some of the options " available. @@ -447,6 +447,11 @@ if !exists("g:java_ignore_javadoc") && (s:with_html || s:with_markdown) && g:mai unlet g:html_syntax_folding endif + if !empty(get(g:, 'markdown_fenced_languages', [])) + let s:markdown_fenced_languages_copy = g:markdown_fenced_languages + unlet g:markdown_fenced_languages + endif + syntax include @javaMarkdown syntax/markdown.vim try @@ -464,6 +469,11 @@ if !exists("g:java_ignore_javadoc") && (s:with_html || s:with_markdown) && g:mai finally unlet! b:current_syntax + if exists("s:markdown_fenced_languages_copy") + let g:markdown_fenced_languages = s:markdown_fenced_languages_copy + unlet s:markdown_fenced_languages_copy + endif + if exists("s:html_syntax_folding_copy") let g:html_syntax_folding = s:html_syntax_folding_copy unlet s:html_syntax_folding_copy diff --git a/runtime/syntax/testdir/dumps/java_comments_html_00.dump b/runtime/syntax/testdir/dumps/java_comments_html_00.dump index 50c1109244..5744fdc815 100644 --- a/runtime/syntax/testdir/dumps/java_comments_html_00.dump +++ b/runtime/syntax/testdir/dumps/java_comments_html_00.dump @@ -3,7 +3,7 @@ | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |u|n|l|e|t|!| |g+0fd7ff255|:+0&#ffffff0|j|a|v|a|_|c|o|n|s|e|n|t|_|t|o|_|h|t|m|l|_|s|y|n|t|a|x|_|f|o|l|d|i|n|g| +0#0000000&@10 | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t|[|g|:|j|a|v|a|_|s|p|a|c|e|_|e|r@1|o|r|s|,|g|:|j|a|v|a|_|c|o|m@1|e|n|t|_|s|t|r|i|n|g|s|]|=|[|1+0#e000002&|,+0#0000e05&|1+0#e000002&|]+0#0000e05&| +0#0000000&@1 | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t|[|g|:|j|a|v|a|_|i|g|n|o|r|e|_|m|a|r|k|d|o|w|n|,|g|:|h|t|m|l|_|s|y|n|t|a|x|_|f|o|l|d|i|n|g|]|=|[|1+0#e000002&|,+0#0000e05&|1+0#e000002&|]+0#0000e05& -| +0&#a8a8a8255@1| +0#0000000#ffffff0@72 +| +0&#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t| |g|:|m|a|r|k|d|o|w|n|_|f|e|n|c|e|d|_|l|a|n|g|u|a|g|e|s| |=| |[|"+0#e000002&|j|a|v|a|"|]+0#0000e05&| +0#0000000&@12 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 diff --git a/runtime/syntax/testdir/dumps/java_comments_markdown_00.dump b/runtime/syntax/testdir/dumps/java_comments_markdown_00.dump index 2fe656fcd7..f7fbca8cec 100644 --- a/runtime/syntax/testdir/dumps/java_comments_markdown_00.dump +++ b/runtime/syntax/testdir/dumps/java_comments_markdown_00.dump @@ -4,7 +4,7 @@ | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t|[|g|:|j|a|v|a|_|i|g|n|o|r|e|_|h|t|m|l|,|g|:|m|a|r|k|d|o|w|n|_|s|y|n|t|a|x|_|c|o|n|c|e|a|l|]|=|[|1+0#e000002&|,+0#0000e05&|1+0#e000002&|]+0#0000e05& | +0&#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t| |g|:|h|t|m|l|_|s|y|n|t|a|x|_|f|o|l|d|i|n|g| |=| |1+0#e000002&| +0#0000000&@25 | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t| |g|:|j|a|v|a|_|c|o|n|s|e|n|t|_|t|o|_|h|t|m|l|_|s|y|n|t|a|x|_|f|o|l|d|i|n|g| |=| |1+0#e000002&| +0#0000000&@9 -| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 +| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |l|e|t| |g|:|m|a|r|k|d|o|w|n|_|f|e|n|c|e|d|_|l|a|n|g|u|a|g|e|s| |=| |[|"+0#e000002&|j|a|v|a|"|]+0#0000e05&| +0#0000000&@12 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |d|e|f|e|r| |e|x|e|c|u|t|e|(|'|m|a|t|c|h| |V|i|s|u|a|l| |/|\|%|>|2+0#e000002&|1|l|\+0#0000e05&|s|\|+|$|/|'|)| +0#0000000&@11 diff --git a/runtime/syntax/testdir/input/java_comments_html.java b/runtime/syntax/testdir/input/java_comments_html.java index 15d4a2fad9..74e0e1515f 100644 --- a/runtime/syntax/testdir/input/java_comments_html.java +++ b/runtime/syntax/testdir/input/java_comments_html.java @@ -3,7 +3,7 @@ // VIM_TEST_SETUP unlet! g:java_consent_to_html_syntax_folding // VIM_TEST_SETUP let[g:java_space_errors,g:java_comment_strings]=[1,1] // VIM_TEST_SETUP let[g:java_ignore_markdown,g:html_syntax_folding]=[1,1] - +// VIM_TEST_SETUP let g:markdown_fenced_languages = ["java"] diff --git a/runtime/syntax/testdir/input/java_comments_markdown.java b/runtime/syntax/testdir/input/java_comments_markdown.java index a34af8f399..c6be7312b0 100644 --- a/runtime/syntax/testdir/input/java_comments_markdown.java +++ b/runtime/syntax/testdir/input/java_comments_markdown.java @@ -4,7 +4,7 @@ // VIM_TEST_SETUP let[g:java_ignore_html,g:markdown_syntax_conceal]=[1,1] // VIM_TEST_SETUP let g:html_syntax_folding = 1 // VIM_TEST_SETUP let g:java_consent_to_html_syntax_folding = 1 - +// VIM_TEST_SETUP let g:markdown_fenced_languages = ["java"] // VIM_TEST_SETUP defer execute('match Visual /\%>21l\s\+$/')