This is an automated email from the ASF dual-hosted git repository.
paulk pushed a commit to branch jline3
in repository https://gitbox.apache.org/repos/asf/groovy.git
The following commit(s) were added to refs/heads/jline3 by this push:
new f5974e0018 update theme files
f5974e0018 is described below
commit f5974e0018b97210b9236ab5afb411242796f242
Author: Paul King <[email protected]>
AuthorDate: Sun Jun 29 12:44:46 2025 +1000
update theme files
---
.../src/main/resources/nanorc/dark.nanorctheme | 4 +--
.../src/main/resources/nanorc/groovy.nanorc | 31 ++++++++++++++----
.../src/main/resources/nanorc/java.nanorc | 38 ++++++++++++++--------
.../src/main/resources/nanorc/jlessrc | 16 +++++++++
.../src/main/resources/nanorc/jnanorc | 14 ++++++++
.../src/main/resources/nanorc/light.nanorctheme | 2 +-
.../src/main/resources/nanorc/properties.nanorc | 24 ++++++++++++++
7 files changed, 107 insertions(+), 22 deletions(-)
diff --git
a/subprojects/groovy-groovysh/src/main/resources/nanorc/dark.nanorctheme
b/subprojects/groovy-groovysh/src/main/resources/nanorc/dark.nanorctheme
index 657abbafff..896ef9c59c 100644
--- a/subprojects/groovy-groovysh/src/main/resources/nanorc/dark.nanorctheme
+++ b/subprojects/groovy-groovysh/src/main/resources/nanorc/dark.nanorctheme
@@ -32,7 +32,7 @@ DOC_COMMENT brightcyan
TYPE brightblue
BOOLEAN brightwhite
NULL cyan
-NUMBER blue
+NUMBER peach
VARIABLE brightyellow
PACKAGE green,faint
CLASS green
@@ -64,7 +64,7 @@ LIST_GROUP yellow
#
+FUNCTION FUNCTION: "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[(]" \n
PLAIN: "[(]"
+LINT WHITESPACE: "[[:space:]]+$" \n WARNING: "\t*"
-+LONG_LINE_WARNING WARNING: "^.{81,}$"
++LONG_LINE_WARNING WARNING: "^.{121,}$"
#
# parser
#
diff --git
a/subprojects/groovy-groovysh/src/main/resources/nanorc/groovy.nanorc
b/subprojects/groovy-groovysh/src/main/resources/nanorc/groovy.nanorc
index bf8c0feec8..8ebd625c2c 100644
--- a/subprojects/groovy-groovysh/src/main/resources/nanorc/groovy.nanorc
+++ b/subprojects/groovy-groovysh/src/main/resources/nanorc/groovy.nanorc
@@ -1,14 +1,31 @@
-syntax "Groovy" "\.groovy$"
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
-# Annotation
-ESCAPE: "@[A-Za-z]+"
+syntax "Groovy" "\.(groovy|gradle)$"
TYPE:
"\<(boolean|byte|char|def|double|float|int|it|long|new|short|this|transient|var|void)\>"
KEYWORD:
"\<(case|catch|default|do|else|finally|for|if|return|switch|throw|try|while)\>"
-PACKAGE: "(([a-z]{2,}[.]{1}){2,10}([a-z]{2,}){0,1})"
-CLASS: "\<[A-Z]{0,2}([A-Z]{1}[a-z]+){1,}\>"
+KEYWORD:
"\<(abstract|class|extends|final|implements|import|instanceof|interface|native|non-sealed|package)\>"
+KEYWORD:
"\<(permits|private|protected|public|record|sealed|static|strictfp|super|synchronized|throws|trait|volatile)\>"
+PACKAGE: "(([a-z0-9]{2,}[.]{1}){2,10}([a-z0-9]{2,}){0,1})"
+
+CLASS: "\<[A-Z]{0,2}([A-Z]{1}[a-z0-9]+){1,}\>"
+# Annotation
+VARIABLE: "@[A-Za-z]+"
+
FUNCTION:
"\<(assert|print|println|sleep|from|where|select|as|in|join|innerjoin|leftjoin|rightjoin|fulljoin|crossjoin|groupby|orderby|limit])\>"
-KEYWORD:
"\<(abstract|class|extends|final|implements|import|instanceof|interface|native|non-sealed|package|permits|private|protected|public|record|sealed|static|strictfp|super|synchronized|throws|trait|volatile)\>"
JUMP: "\<(break|continue)\>"
NULL: "\<(null)\>"
BOOLEAN: "\<(true|false)\>"
@@ -18,3 +35,5 @@ OPERATOR: "[-+/*=<>?:!~%&|]"
$BALANCED_DELIMITERS: "", ', ''', """"
$LINE_COMMENT: "//"
$BLOCK_COMMENT: "/*, */"
+WHITESPACE: "[[:space:]]+$"
+WARNING: " + +| + +"
diff --git a/subprojects/groovy-groovysh/src/main/resources/nanorc/java.nanorc
b/subprojects/groovy-groovysh/src/main/resources/nanorc/java.nanorc
index 6e048b8e14..e5984875b3 100644
--- a/subprojects/groovy-groovysh/src/main/resources/nanorc/java.nanorc
+++ b/subprojects/groovy-groovysh/src/main/resources/nanorc/java.nanorc
@@ -1,26 +1,38 @@
-## Here is an example for Java.
-##
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
syntax "Java" "\.java$"
-# Class
-SECTION: "class +[A-Za-z0-9]+ *((implements|extends) +[A-Za-z0-9.]+)?"
+TYPE:
"\<(boolean|byte|char|double|float|int|long|new|short|this|transient|var|void)\>"
+KEYWORD:
"\<(case|catch|default|do|else|finally|for|if|return|switch|throw|try|while)\>"
+KEYWORD:
"\<(abstract|class|extends|final|implements|import|instanceof|interface|native|non-sealed|package)\>
+KEYWORD:
"\<(permits|private|protected|public|record|sealed|static|strictfp|super|synchronized|throws|volatile)\>"
+PACKAGE: "(([a-z0-9]{2,}[.]{1}){2,10}([a-z0-9]{2,}){0,1})"
+CLASS: "\<[A-Z]{0,2}([A-Z]{1}[a-z]+){1,}\>"
# Annotation
-ESCAPE: "@[A-Za-z]+"
+VARIABLE: "@[A-Za-z]+"
-# +FUNCTION
-TYPE:
"\<(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\>"
-KEYWORD:
"\<(case|catch|default|do|else|finally|for|if|return|switch|throw|try|while)\>"
-PACKAGE: "(([a-z]{2,}[.]{1}){2,10}([a-z]{2,}){0,1})"
-CLASS: "\<[A-Z]{0,2}([A-Z]{1}[a-z]+){1,}\>"
-KEYWORD:
"\<(abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile)\>"
JUMP: "\<(break|continue)\>"
NULL: "\<(null)\>"
BOOLEAN: "\<(true|false)\>"
CONSTANT: "\<[A-Z]+([_]{1}[A-Z]+){0,}\>"
OPERATOR: "[-+/*=<>?:!~%&|]"
~NUMBER: "\b(([1-9][0-9]+)|0+)\.[0-9]+\b" "\b[1-9][0-9]*\b" "\b0[0-7]*\b"
"\b0x[1-9a-f][0-9a-f]*\b"
-$BALANCED_DELIMITERS: """
+$BALANCED_DELIMITERS: "", """"
$LINE_COMMENT: "//"
$BLOCK_COMMENT: "/*, */"
-+LINT
+WHITESPACE: "[[:space:]]+$"
+WARNING: " + +| + +"
diff --git a/subprojects/groovy-groovysh/src/main/resources/nanorc/jlessrc
b/subprojects/groovy-groovysh/src/main/resources/nanorc/jlessrc
new file mode 100644
index 0000000000..cd40ae498b
--- /dev/null
+++ b/subprojects/groovy-groovysh/src/main/resources/nanorc/jlessrc
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+theme dark.nanorctheme
+include *.nanorc
diff --git a/subprojects/groovy-groovysh/src/main/resources/nanorc/jnanorc
b/subprojects/groovy-groovysh/src/main/resources/nanorc/jnanorc
index 26b9c43339..cd40ae498b 100644
--- a/subprojects/groovy-groovysh/src/main/resources/nanorc/jnanorc
+++ b/subprojects/groovy-groovysh/src/main/resources/nanorc/jnanorc
@@ -1,2 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
theme dark.nanorctheme
include *.nanorc
diff --git
a/subprojects/groovy-groovysh/src/main/resources/nanorc/light.nanorctheme
b/subprojects/groovy-groovysh/src/main/resources/nanorc/light.nanorctheme
index dc617d3b1d..62ae57054c 100644
--- a/subprojects/groovy-groovysh/src/main/resources/nanorc/light.nanorctheme
+++ b/subprojects/groovy-groovysh/src/main/resources/nanorc/light.nanorctheme
@@ -42,7 +42,7 @@ LIST_GROUP yellow
#
+FUNCTION FUNCTION: "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[(]" \n
PLAIN: "[(]"
+LINT WHITESPACE: "[[:space:]]+$" \n WARNING: "\t*"
-+LONG_LINE_WARNING WARNING: "^.{81,}$"
++LONG_LINE_WARNING WARNING: "^.{121,}$"
#
# parser
#
diff --git
a/subprojects/groovy-groovysh/src/main/resources/nanorc/properties.nanorc
b/subprojects/groovy-groovysh/src/main/resources/nanorc/properties.nanorc
new file mode 100644
index 0000000000..6eca10ca6f
--- /dev/null
+++ b/subprojects/groovy-groovysh/src/main/resources/nanorc/properties.nanorc
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+syntax "properties" "\.properties$"
+
+KEYWORD: "^[[:space:]]*[^#!]([^:= ]|\\[:= ])*[:= ]"
+OPERATOR: "[:=]"
+ESCAPE: "\\([#!=: ]|$)"
+ESCAPE: "\\u[[:xdigit:]]{4}"
+COMMENT: "^[[:space:]]*[#!].*$"
+WHITESPACE: "[[:space:]]+$"
+WARNING: " + +| + +"