runtime(java): Recognise text blocks (#14128)

Also, accept as valid the space escape sequence `\s`.

Also, consistently use the claimed `javaDebug` prefix for
syntax group definitions kept under `g:java_highlight_debug`.

Since `javaStringError` is commented out for its generality,
let's comment out `javaDebugStringError`, its copy, as well.

References:
https://openjdk.org/jeps/378
https://docs.oracle.com/javase/specs/jls/se17/html/jls-3.html#jls-3.10.7

Closes #10910.

Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/syntax/testdir/input/java_escapes.java b/runtime/syntax/testdir/input/java_escapes.java
index 624d4fc..eadaa42 100644
--- a/runtime/syntax/testdir/input/java_escapes.java
+++ b/runtime/syntax/testdir/input/java_escapes.java
@@ -11,13 +11,13 @@
 
 	static {
 		char ee[] = {
-			'\b', '\t',
+			'\b', '\s', '\t',
 			'\n', '\f', '\r',
 			'\"', '\'', '\\',
 		};
 
 		System.out.println(new String[] {
-			"\b", "\t",
+			"\b", "\s", "\t",
 			"\n", "\f", "\r",
 			"\"", "\'", "\\",
 		});
diff --git a/runtime/syntax/testdir/input/java_string.java b/runtime/syntax/testdir/input/java_string.java
new file mode 100644
index 0000000..51c30b9
--- /dev/null
+++ b/runtime/syntax/testdir/input/java_string.java
@@ -0,0 +1,44 @@
+class StringTests
+{
+	static {
+		String s1 = "A quick brown fox jumps over the lazy dog";
+		String s2 = "\"Woof\s!\"";
+		String s3 = """
+			A\s\
+			quick \
+			brown\s\
+			fox \
+			jumps\s\
+			over \
+			the\s\
+			lazy \
+			dog""";
+		String s4 = """
+			"Woof\s!\"""";
+		String s5 = """
+		String s3 = \"""
+			A\\s\\
+			quick \\
+			brown\\s\\
+			fox \\
+			jumps\\s\\
+			over \\
+			the\\s\\
+			lazy \\
+			dog\""";""";
+
+		// There are SPACE, FF, HT, CR, and LF after """.
+		String empty = """ 	

+			""";
+
+		System.out.println("""
+		"
+		""
+		""\u005c"
+		""\u005c""
+		""\"\u0022\u0022
+		""\"""\u005c\u0022
+		""\"""\""
+		""\"""\""\"""");
+	}
+}