mirror of
https://github.com/chylex/IntelliJ-Rainbow-Brackets.git
synced 2025-05-12 06:34:03 +02:00
Fix #897 Pug Language Support
(cherry picked from commit a875df4b3d86538ec4a8b36f9ab5cf4f5a0e61de)
This commit is contained in:
parent
8414e8a2ea
commit
0fc2b00aa0
src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/visitor
@ -1,6 +1,7 @@
|
||||
package com.github.izhangzhihao.rainbow.brackets.visitor
|
||||
|
||||
import com.github.izhangzhihao.rainbow.brackets.settings.RainbowSettings
|
||||
import com.github.izhangzhihao.rainbow.brackets.visitor.XmlRainbowVisitor.Companion.iterateXmlTagParents
|
||||
import com.github.izhangzhihao.rainbow.brackets.visitor.XmlRainbowVisitor.Companion.xmlParent
|
||||
import com.intellij.codeInsight.daemon.impl.HighlightVisitor
|
||||
import com.intellij.psi.PsiElement
|
||||
@ -33,20 +34,7 @@ class PugRainbowVisitor : RainbowHighlightVisitor() {
|
||||
}
|
||||
|
||||
companion object {
|
||||
private tailrec fun iterateXmlTagParents(element: PsiElement?, count: Int, name: String): Int {
|
||||
if (element == null || element is PsiFile || (element is XmlTag && element.name != name)) {
|
||||
return count
|
||||
}
|
||||
|
||||
var nextCount = count
|
||||
if (element is XmlTag && element.name == name) {
|
||||
nextCount++
|
||||
}
|
||||
|
||||
return iterateXmlTagParents(element.parent, nextCount, name)
|
||||
}
|
||||
|
||||
private val XmlTag.level: Int
|
||||
get() = iterateXmlTagParents(parent, 0, this.name)
|
||||
get() = iterateXmlTagParents(parent, 0)
|
||||
}
|
||||
}
|
@ -80,7 +80,7 @@ open class XmlRainbowVisitor : RainbowHighlightVisitor() {
|
||||
return pElement
|
||||
}
|
||||
|
||||
private tailrec fun iterateXmlTagParents(element: PsiElement?, count: Int): Int {
|
||||
tailrec fun iterateXmlTagParents(element: PsiElement?, count: Int): Int {
|
||||
if (element == null || element is PsiFile) {
|
||||
return count
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user