diff --git a/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/highlighting/XmlSyntaxHighlighter.kt b/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/highlighting/XmlSyntaxHighlighter.kt index a42e3ab6..bef919c6 100644 --- a/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/highlighting/XmlSyntaxHighlighter.kt +++ b/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/highlighting/XmlSyntaxHighlighter.kt @@ -25,7 +25,7 @@ class XmlSyntaxHighlighter : SyntaxHighlighter { matcher.groups["ELEMENT"] != null -> { add(listOf("tagmark"), matcher.end("OPEN") - matcher.start("OPEN")) add(listOf("namespace"), matcher.end("NS") - matcher.end("OPEN")) - add(listOf("anytag"), matcher.end("ELEM") - matcher.end("NS")) + add(listOf("tagname"), matcher.end("ELEM") - matcher.end("NS")) val attributesString = matcher.groups["ATTRS"]?.let(MatchGroup::value)?.takeIf(String::isNotEmpty) val attributesStringLength = attributesString?.length ?: 0 @@ -36,7 +36,7 @@ class XmlSyntaxHighlighter : SyntaxHighlighter { add(emptyList(), attr.range.first - last) add(listOf("attribute"), attr.end("ATTR") - attr.start("ATTR")) add(listOf("tagmark"), attr.end("EQ") - attr.end("ATTR")) - add(listOf("avalue"), attr.end("VALUE") - attr.end("EQ")) + add(listOf("value"), attr.end("VALUE") - attr.end("EQ")) last = attr.end } diff --git a/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/stylesheet/JavaSyntaxHighlightingStylesheet.kt b/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/stylesheet/JavaSyntaxHighlightingStylesheet.kt index 130e74e8..d60ad4c5 100644 --- a/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/stylesheet/JavaSyntaxHighlightingStylesheet.kt +++ b/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/stylesheet/JavaSyntaxHighlightingStylesheet.kt @@ -1,5 +1,6 @@ package com.bartlomiejpluta.base.editor.code.stylesheet +import javafx.scene.text.FontPosture import javafx.scene.text.FontWeight import tornadofx.* @@ -68,6 +69,7 @@ class JavaSyntaxHighlightingStylesheet : Stylesheet() { comment { fill = c("#808080") + fontStyle = FontPosture.ITALIC } paragraphBox and hasCaret { diff --git a/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/stylesheet/XmlSyntaxHighlightingStylesheet.kt b/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/stylesheet/XmlSyntaxHighlightingStylesheet.kt index 03a0327a..df73f473 100644 --- a/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/stylesheet/XmlSyntaxHighlightingStylesheet.kt +++ b/editor/src/main/kotlin/com/bartlomiejpluta/base/editor/code/stylesheet/XmlSyntaxHighlightingStylesheet.kt @@ -3,9 +3,7 @@ package com.bartlomiejpluta.base.editor.code.stylesheet import javafx.scene.paint.Color import javafx.scene.text.FontPosture import javafx.scene.text.FontWeight -import tornadofx.Stylesheet -import tornadofx.c -import tornadofx.cssclass +import tornadofx.* class XmlSyntaxHighlightingStylesheet : Stylesheet() { @@ -13,11 +11,17 @@ class XmlSyntaxHighlightingStylesheet : Stylesheet() { val prolog by cssclass() val namespace by cssclass() val tagmark by cssclass() - val anytag by cssclass() + val tagname by cssclass() val paren by cssclass() val attribute by cssclass() - val avalue by cssclass() + val value by cssclass() val comment by cssclass() + val paragraphBox by cssclass() + val paragraphText by cssclass() + + val hasCaret by csspseudoclass() + + val tabSize by cssproperty("-fx-tab-size") } init { @@ -27,15 +31,16 @@ class XmlSyntaxHighlightingStylesheet : Stylesheet() { } namespace { - fill = Color.DARKRED + fill = Color.DARKVIOLET } tagmark { fill = Color.GRAY } - anytag { - fill = Color.CRIMSON + tagname { + fill = c("#000080") + fontWeight = FontWeight.BOLD } paren { @@ -44,15 +49,21 @@ class XmlSyntaxHighlightingStylesheet : Stylesheet() { } attribute { - fill = Color.DARKVIOLET + fill = Color.DARKSLATEBLUE + fontStyle = FontPosture.ITALIC } - avalue { - fill = Color.BLACK + value { + fill = c("#008000") } comment { - fill = Color.TEAL + fill = c("#808080") + fontStyle = FontPosture.ITALIC + } + + paragraphText { + tabSize.value = 3 } } } \ No newline at end of file