runtime(java): Fold adjacent "import" declarations

Also, distinguish (by abbreviating their names) and manage
foldable kinds of syntax items: blocks of code ("b"), plain
comments ("c"), Javadoc comments ("d"), adjacent "import"
declarations ("i").  Fold all qualifying items by default;
otherwise, do not fold items of explicitly delisted kinds.
For example,
------------------------------------------------------------
	let g:java_ignore_folding = "bcdi"
------------------------------------------------------------

Resolves zzzyxwvut/java-vim#12.

closes: #18492

Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Aliaksei Budavei
2025-10-08 16:45:28 +00:00
committed by Christian Brabandt
parent 97d1255558
commit 143686b3c4
22 changed files with 438 additions and 258 deletions

View File

@ -1,20 +1,20 @@
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|v+0#00e0003&|o|i|d| +0#0000000&|n|o|O|p|5|(|)| |{+0#0000001#ffff4012| +0#0000000#ffffff0|}+0#0000001#ffff4012| +0#0000000#ffffff0@52
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|/+0#0000e05&@2| +0#e000e06&|N|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@51
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|v+0#00e0003&|o|i|d| +0#0000000&|n|o|O|p|6|(|)| @56
|++0#0000e05#a8a8a8255| |+|-@1| @1|2| |l|i|n|e|s|:| |{|-@57
| @1| +0#0000000#ffffff0@3|/+0#0000e05&@2| +0#e000e06&|N|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@51
|++0#0000e05#a8a8a8255| >+|-@1| @1|2| |l|i|n|e|s|:| |v|o|i|d| |n|o|O|p|7|(|)| |{|-@44
| @1| +0#0000000#ffffff0@3|/+0#0000e05&@2| +0#e000e06&|N|o| |o|p|e|r|a|t|i|o|n|.| +0#0000000&@51
|++0#0000e05#a8a8a8255| |+|-@1| @1|2| |l|i|n|e|s|:| |v|o|i|d| |n|o|O|p|8|(|)| |{|-@44
| @1|}+0#00e0003#ffffff0| +0#0000000&@71
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@4|*|/| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3|/|*@1| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@4|*| +0#0000000&@66
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@4|*|/| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3|/@2| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3>/@2| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3|/@2| +0#0000000&@65
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3|/@1| +0#0000000&@66
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3|/@1| +0#0000000&@66
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3|/@1| +0#0000000&@66
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3|{| +0#0000000&@67
||+0#0000e05#a8a8a8255| | +0#e000002#ffffff0@3|}| +0#0000000&@67
||+0#0000e05#a8a8a8255| |"+0#0000000#ffffff0@2| @69
||+0#0000e05#a8a8a8255| |}+0#0000001#ffff4012|)+0#e000e06#ffffff0| +0#0000000&@70
| +0#0000e05#a8a8a8255@1|c+0#00e0003#ffffff0|l|a|s@1| +0#0000000&|F|o|l|d|i|n|g|T|e|s|t|s| |{+0#00e0003&| +0#0000000&@52
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@3|i+0#00e0003&|n|t|e|r|f|a|c|e| +0#0000000&|F|o|l|d|a|b|l|e| @50
|-+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|{+0#0000001#ffff4012| +0#0000000#ffffff0@67
||+0#0000e05#a8a8a8255| | +0#0000000#ffffff0@3|}+0#0000001#ffff4012| +0#0000000#ffffff0@67
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
|++0#0000e05#a8a8a8255| |+|-@1| @1|5| |l|i|n|e|s|:| @1|*| |S|o|m|e| |n|o|t|e|.|-@45
|+| |+|-@1| @1|5| |l|i|n|e|s|:| @1|*| |A| |s|u|m@1|a|r|y|.|-@45
|+| |+|-@1| @1|3| |l|i|n|e|s|:| |/| |A| |s|u|m@1|a|r|y|.|-@46
| @1|/+0&#ffffff0@1| +0#0000000&@70
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |{| +0#0000000&@68
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0@1| |}| +0#0000000&@68
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72
| +0#0000e05#a8a8a8255@1|/+0&#ffffff0|*| |1|2@1|||.@65
| +0&#a8a8a8255@1|.+0&#ffffff0@23|*|/| +0#0000000&|i+0#00e0003&|n|t|e|r|f|a|c|e| +0#0000000&|F|o|l|d|e|n|a|b|l|e| |{+0#00e0003&| +0#0000000&@23
@57|9|7|,|2|-|1| @7|9|8|%|
@57|3|7|,|2|-|5| @7|2|4|%|