1
0
mirror of https://github.com/chylex/IntelliJ-Rainbow-Brackets.git synced 2025-05-11 03:34:04 +02:00

Fix : New option "Do NOT rainbowify template string"

(cherry picked from commit 6c104301ebea8c88a980bbceae09362aabdcfb82)
This commit is contained in:
张志豪 2021-01-30 17:58:52 +08:00
parent 0fc2b00aa0
commit ea1bc6ba6f
5 changed files with 21 additions and 0 deletions
src/main/kotlin/com/github/izhangzhihao/rainbow/brackets

View File

@ -40,6 +40,7 @@ class RainbowConfigurable : Configurable {
settings.disableRainbowIndentsInZenMode = settingsForm?.disableRainbowIndentsInZenMode() ?: true
settings.useColorGenerator = settingsForm?.useColorGenerator() ?: false
settings.rainbowifyTagNameInXML = settingsForm?.rainbowifyTagNameInXML() ?: false
settings.doNOTRainbowifyTemplateString = settingsForm?.doNOTRainbowifyTemplateString() ?: false
}
override fun reset() {

View File

@ -37,6 +37,7 @@ class RainbowSettings : PersistentStateComponent<RainbowSettings> {
var customColorGeneratorOption: String? = null
var showNotificationOnUpdate = true
var rainbowifyTagNameInXML = false
var doNOTRainbowifyTemplateString = false
@Suppress("MemberVisibilityCanBePrivate")
var languageBlacklist: Array<String> = arrayOf()

View File

@ -148,6 +148,14 @@
<text value="Rainbowify tag name in XML/HTML"/>
</properties>
</component>
<component id="6e2d5" class="javax.swing.JCheckBox" binding="doNOTRainbowifyTemplateString">
<constraints>
<grid row="14" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Do NOT rainbowify template string"/>
</properties>
</component>
</children>
</grid>
<vspacer id="9e387">

View File

@ -29,6 +29,8 @@ class RainbowSettingsForm {
private var rainbowifyTagNameInXML: JCheckBox? = null
private var doNOTRainbowifyTemplateString: JCheckBox? = null
private val settings: RainbowSettings = RainbowSettings.instance
fun component(): JComponent? = panel
@ -63,6 +65,8 @@ class RainbowSettingsForm {
fun rainbowifyTagNameInXML() = rainbowifyTagNameInXML?.isSelected
fun doNOTRainbowifyTemplateString() = doNOTRainbowifyTemplateString?.isSelected
val isModified: Boolean
get() = (isRainbowEnabled() != settings.isRainbowEnabled
|| isRainbowAngleBracketsEnabled() != settings.isEnableRainbowAngleBrackets
@ -79,6 +83,7 @@ class RainbowSettingsForm {
|| disableRainbowIndentsInZenMode() != settings.disableRainbowIndentsInZenMode
|| useColorGenerator() != settings.useColorGenerator
|| rainbowifyTagNameInXML() != settings.rainbowifyTagNameInXML
|| doNOTRainbowifyTemplateString() != settings.doNOTRainbowifyTemplateString
)
init {
@ -101,5 +106,6 @@ class RainbowSettingsForm {
disableRainbowIndentsInZenMode?.isSelected = settings.disableRainbowIndentsInZenMode
useColorGenerator?.isSelected = settings.useColorGenerator
rainbowifyTagNameInXML?.isSelected = settings.rainbowifyTagNameInXML
doNOTRainbowifyTemplateString?.isSelected = settings.doNOTRainbowifyTemplateString
}
}

View File

@ -99,6 +99,11 @@ class DefaultRainbowVisitor : RainbowHighlightVisitor() {
}
}
//For https://github.com/izhangzhihao/intellij-rainbow-brackets/issues/830
if (RainbowSettings.instance.doNOTRainbowifyTemplateString) {
if (left?.prevSibling?.text == "$") return false
}
return findLeftBracket && findRightBracket
}