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

Refactor support for CLion and Rider

This commit is contained in:
chylex 2023-10-15 01:39:51 +02:00
parent c9b3a33797
commit 405cbd0237
Signed by: chylex
GPG Key ID: 4DE42C8F19A80548
92 changed files with 287 additions and 110 deletions
.idea/runConfigurations
build.gradle.kts
clion
.gitignorebuild.gradle.kts
src/main
kotlin/com/github/izhangzhihao/rainbow/brackets/provider
resources/META-INF
idea
.gitignorebuild.gradle.kts
src
main
test/kotlin/com/github/izhangzhihao/rainbow/brackets
rider
.gitignorebuild.gradle.kts
src/main
kotlin/com/github/izhangzhihao/rainbow/brackets
resources/META-INF
settings.gradle.kts
src/main/resources/META-INF

View File

@ -0,0 +1,24 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run CLion" type="GradleRunConfiguration" factoryName="Gradle">
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value=":clion:runIde" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>

View File

@ -0,0 +1,24 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run IDEA" type="GradleRunConfiguration" factoryName="Gradle">
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value=":idea:runIde" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>

View File

@ -0,0 +1,24 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run Rider" type="GradleRunConfiguration" factoryName="Gradle">
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value=":rider:runIde" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>

View File

@ -1,110 +1,109 @@
@file:Suppress("SpellCheckingInspection") @file:Suppress("SpellCheckingInspection")
import org.jetbrains.intellij.IntelliJPluginExtension
import org.jetbrains.intellij.tasks.BuildPluginTask
import org.jetbrains.intellij.tasks.BuildSearchableOptionsTask
import org.jetbrains.intellij.tasks.PatchPluginXmlTask
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins { plugins {
kotlin("jvm") version "1.8.0" idea
id("org.jetbrains.intellij") version "1.15.0" kotlin("jvm")
id("org.jetbrains.intellij") apply false
} }
group = "com.chylex.intellij.rainbowbrackets" group = "com.chylex.intellij.rainbowbrackets"
version = "6.26-chylex-2" version = "6.26-chylex-2"
val ideVersion = "2023.2.2" val ideVersion = "2023.2.2"
val ideBuild = "232"
idea { idea {
module { module {
excludeDirs.add(file("gradle")) excludeDirs.add(file("gradle"))
excludeDirs.add(file("libs"))
} }
} }
repositories {
mavenCentral()
maven(url = "https://www.jetbrains.com/intellij-repository/releases")
maven(url = "https://www.jetbrains.com/intellij-repository/snapshots")
}
val clion: Configuration by configurations.creating
val rider: Configuration by configurations.creating
dependencies { dependencies {
clion("com.jetbrains.intellij.clion:clion:$ideVersion") implementation(project(":clion"))
rider("com.jetbrains.intellij.rider:riderRD:$ideVersion") implementation(project(":idea"))
implementation(project(":rider"))
compileOnly(fileTree("libs"))
testImplementation("org.junit.jupiter:junit-jupiter:5.9.2")
testImplementation("io.kotest:kotest-assertions-core:5.5.5")
} }
kotlin { subprojects {
jvmToolchain(17) apply(plugin = "org.jetbrains.kotlin.jvm")
} apply(plugin = "org.jetbrains.intellij")
intellij {
type.set("IU")
version.set(ideVersion)
updateSinceUntilBuild.set(false)
plugins.set( group = rootProject.group
listOf( version = rootProject.version
// Built-in
"Groovy", repositories {
"JavaScript", mavenCentral()
"com.intellij.css", maven(url = "https://www.jetbrains.com/intellij-repository/releases")
"com.intellij.database", maven(url = "https://www.jetbrains.com/intellij-repository/snapshots")
"com.intellij.java", }
"org.intellij.plugins.markdown",
"org.jetbrains.kotlin", dependencies {
"org.jetbrains.plugins.yaml", testImplementation("org.junit.jupiter:junit-jupiter:5.9.2")
// Downloaded testImplementation("io.kotest:kotest-assertions-core:5.5.5")
"Dart:232.8660.129", // https://plugins.jetbrains.com/plugin/6351-dart/versions/stable }
"Pythonid:232.9921.47", // https://plugins.jetbrains.com/plugin/631-python/versions
"com.jetbrains.php:232.9921.55", // https://plugins.jetbrains.com/plugin/6610-php/versions kotlin {
"com.jetbrains.sh:232.8660.88", // https://plugins.jetbrains.com/plugin/13122-shell-script/versions jvmToolchain(17)
"org.intellij.scala:2023.2.23", // https://plugins.jetbrains.com/plugin/1347-scala/versions }
"org.jetbrains.plugins.go-template:232.9921.89", // https://plugins.jetbrains.com/plugin/10581-go-template/versions
"org.jetbrains.plugins.ruby:232.9921.47", // https://plugins.jetbrains.com/plugin/1293-ruby/versions configure<IntelliJPluginExtension> {
version.set(ideVersion)
updateSinceUntilBuild.set(false)
}
tasks.withType<KotlinCompile> {
kotlinOptions.freeCompilerArgs = listOf(
"-Xjvm-default=all"
) )
) }
}
tasks.test {
tasks.patchPluginXml { useJUnitPlatform()
sinceBuild.set("232") }
}
tasks.getByName<BuildSearchableOptionsTask>("buildSearchableOptions") {
tasks.test { enabled = false
useJUnitPlatform() }
}
tasks.getByName<PatchPluginXmlTask>("patchPluginXml") {
tasks.withType<KotlinCompile> { sinceBuild.set(ideBuild)
kotlinOptions.freeCompilerArgs = listOf( }
"-Xjvm-default=all"
) tasks.getByName<BuildPluginTask>("buildPlugin") {
} eachFile {
name = name.replaceFirst("instrumented-", "instrumented-RainbowBrackets-")
fun createDownloadIdeTask(name: String, dependency: Configuration, configuration: CopySpec.() -> Unit): Sync { relativePath.segments[0] = "RainbowBrackets"
return tasks.create<Sync>(name) { }
group = "ides"
outputs.upToDateWhen { false }
from(dependency.map(::zipTree), configuration) includeEmptyDirs = false
into(file("libs/${dependency.name}"))
} }
} }
val downloadIdeClion = createDownloadIdeTask("downloadIdeClion", clion) { tasks.register<Zip>("buildPlugin") {
include("plugins/cidr-base-plugin/**") group = "intellij"
}
val downloadIdeRider = createDownloadIdeTask("downloadIdeRider", rider) {
include("lib/app.jar")
}
tasks.create<Sync>("downloadExtraIdes") {
group = "ides"
dependsOn(downloadIdeClion) for (project in listOf("clion", "idea", "rider")) {
dependsOn(downloadIdeRider) val buildPlugin = project(":$project").tasks.getByName("buildPlugin")
val outputs = buildPlugin.outputs.files.map(::zipTree)
dependsOn(buildPlugin)
from(outputs) {
include("RainbowBrackets/lib/instrumented-RainbowBrackets-$project-$version.jar")
}
if (project == "idea") {
from(outputs) {
include("RainbowBrackets/lib/searchableOptions-$version.jar")
}
}
}
destinationDirectory = layout.buildDirectory.dir("distributions")
} }

1
clion/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/build/

16
clion/build.gradle.kts Normal file
View File

@ -0,0 +1,16 @@
plugins {
id("org.jetbrains.intellij")
}
intellij {
type.set("CL")
plugins.set(listOf(
// Built-in
"cidr-base-plugin"
))
}
dependencies {
implementation(project(":idea"))
}

1
idea/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/build/

33
idea/build.gradle.kts Normal file
View File

@ -0,0 +1,33 @@
plugins {
id("org.jetbrains.intellij")
}
intellij {
type.set("IU")
plugins.set(
listOf(
// Built-in
"Groovy",
"JavaScript",
"com.intellij.css",
"com.intellij.database",
"com.intellij.java",
"org.intellij.plugins.markdown",
"org.jetbrains.kotlin",
"org.jetbrains.plugins.yaml",
// Downloaded
"Dart:232.8660.129", // https://plugins.jetbrains.com/plugin/6351-dart/versions/stable
"Pythonid:232.9921.47", // https://plugins.jetbrains.com/plugin/631-python/versions
"com.jetbrains.php:232.9921.55", // https://plugins.jetbrains.com/plugin/6610-php/versions
"com.jetbrains.sh:232.8660.88", // https://plugins.jetbrains.com/plugin/13122-shell-script/versions
"org.intellij.scala:2023.2.23", // https://plugins.jetbrains.com/plugin/1347-scala/versions
"org.jetbrains.plugins.go-template:232.9921.89", // https://plugins.jetbrains.com/plugin/10581-go-template/versions
"org.jetbrains.plugins.ruby:232.9921.47", // https://plugins.jetbrains.com/plugin/1293-ruby/versions
)
)
}
tasks.buildSearchableOptions {
enabled = true
}

View File

@ -19,7 +19,6 @@ import org.intellij.lang.annotations.Language
import org.jetbrains.annotations.TestOnly import org.jetbrains.annotations.TestOnly
import java.awt.Color import java.awt.Color
import java.awt.Font import java.awt.Font
import java.util.UUID
object RainbowHighlighter { object RainbowHighlighter {

View File

@ -3,7 +3,6 @@ package com.github.izhangzhihao.rainbow.brackets.action
import com.github.izhangzhihao.rainbow.brackets.RainbowInfo import com.github.izhangzhihao.rainbow.brackets.RainbowInfo
import com.github.izhangzhihao.rainbow.brackets.settings.RainbowSettings import com.github.izhangzhihao.rainbow.brackets.settings.RainbowSettings
import com.github.izhangzhihao.rainbow.brackets.util.alphaBlend import com.github.izhangzhihao.rainbow.brackets.util.alphaBlend
import com.github.izhangzhihao.rainbow.brackets.util.create
import com.intellij.codeInsight.highlighting.HighlightManager import com.intellij.codeInsight.highlighting.HighlightManager
import com.intellij.openapi.editor.Editor import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.colors.EditorColorsManager import com.intellij.openapi.editor.colors.EditorColorsManager
@ -11,7 +10,7 @@ import com.intellij.openapi.editor.markup.EffectType
import com.intellij.openapi.editor.markup.RangeHighlighter import com.intellij.openapi.editor.markup.RangeHighlighter
import com.intellij.openapi.editor.markup.TextAttributes import com.intellij.openapi.editor.markup.TextAttributes
import java.awt.Font import java.awt.Font
import java.util.* import java.util.LinkedList
class ScopeHighlightingAction : AbstractScopeHighlightingAction() { class ScopeHighlightingAction : AbstractScopeHighlightingAction() {
@ -33,4 +32,4 @@ class ScopeHighlightingAction : AbstractScopeHighlightingAction() {
return highlighters return highlighters
} }
} }

View File

@ -3,7 +3,6 @@ package com.github.izhangzhihao.rainbow.brackets.action
import com.github.izhangzhihao.rainbow.brackets.RainbowInfo import com.github.izhangzhihao.rainbow.brackets.RainbowInfo
import com.github.izhangzhihao.rainbow.brackets.settings.RainbowSettings import com.github.izhangzhihao.rainbow.brackets.settings.RainbowSettings
import com.github.izhangzhihao.rainbow.brackets.util.alphaBlend import com.github.izhangzhihao.rainbow.brackets.util.alphaBlend
import com.github.izhangzhihao.rainbow.brackets.util.create
import com.intellij.codeInsight.highlighting.HighlightManager import com.intellij.codeInsight.highlighting.HighlightManager
import com.intellij.openapi.editor.Editor import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.colors.EditorColorsManager import com.intellij.openapi.editor.colors.EditorColorsManager
@ -12,7 +11,7 @@ import com.intellij.openapi.editor.markup.RangeHighlighter
import com.intellij.openapi.editor.markup.TextAttributes import com.intellij.openapi.editor.markup.TextAttributes
import java.awt.Color import java.awt.Color
import java.awt.Font import java.awt.Font
import java.util.* import java.util.LinkedList
class ScopeOutsideHighlightingRestrainAction : AbstractScopeHighlightingAction() { class ScopeOutsideHighlightingRestrainAction : AbstractScopeHighlightingAction() {
@ -50,4 +49,4 @@ class ScopeOutsideHighlightingRestrainAction : AbstractScopeHighlightingAction()
return highlighters return highlighters
} }
} }

View File

@ -12,7 +12,15 @@ import com.intellij.psi.PsiElement
import com.intellij.psi.impl.source.tree.LeafPsiElement import com.intellij.psi.impl.source.tree.LeafPsiElement
import com.intellij.psi.util.PsiTreeUtil import com.intellij.psi.util.PsiTreeUtil
import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.lexer.KtTokens
import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.KtBlockExpression
import org.jetbrains.kotlin.psi.KtCallExpression
import org.jetbrains.kotlin.psi.KtClass
import org.jetbrains.kotlin.psi.KtClassBody
import org.jetbrains.kotlin.psi.KtFunction
import org.jetbrains.kotlin.psi.KtFunctionLiteral
import org.jetbrains.kotlin.psi.KtLabelReferenceExpression
import org.jetbrains.kotlin.psi.KtLabeledExpression
import org.jetbrains.kotlin.psi.KtLambdaExpression
import java.awt.Font import java.awt.Font
@ -75,4 +83,4 @@ class KotlinLabelAnnotator : Annotator {
} }
} }
} }

View File

@ -1,7 +1,12 @@
package com.github.izhangzhihao.rainbow.brackets.indents package com.github.izhangzhihao.rainbow.brackets.indents
import com.github.izhangzhihao.rainbow.brackets.RainbowInfo import com.github.izhangzhihao.rainbow.brackets.RainbowInfo
import com.github.izhangzhihao.rainbow.brackets.util.* import com.github.izhangzhihao.rainbow.brackets.util.alphaBlend
import com.github.izhangzhihao.rainbow.brackets.util.endOffset
import com.github.izhangzhihao.rainbow.brackets.util.findNextSibling
import com.github.izhangzhihao.rainbow.brackets.util.findPrevSibling
import com.github.izhangzhihao.rainbow.brackets.util.lineNumber
import com.github.izhangzhihao.rainbow.brackets.util.startOffset
import com.intellij.openapi.editor.Document import com.intellij.openapi.editor.Document
import com.intellij.openapi.editor.Editor import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.SoftWrap import com.intellij.openapi.editor.SoftWrap
@ -255,4 +260,4 @@ class RainbowIndentGuideRenderer: CustomHighlighterRenderer {
lastChild?.findPrevSibling(XML_END_TAG_START_CONDITION)?.let { document.lineNumber(it.startOffset) } lastChild?.findPrevSibling(XML_END_TAG_START_CONDITION)?.let { document.lineNumber(it.startOffset) }
} }
} }

View File

@ -28,7 +28,7 @@ import com.intellij.util.containers.IntStack
import com.intellij.util.text.CharArrayUtil import com.intellij.util.text.CharArrayUtil
import java.lang.StrictMath.abs import java.lang.StrictMath.abs
import java.lang.StrictMath.min import java.lang.StrictMath.min
import java.util.* import java.util.Collections
/** From [com.intellij.codeInsight.daemon.impl.IndentsPass] /** From [com.intellij.codeInsight.daemon.impl.IndentsPass]
* Commit history: https://sourcegraph.com/github.com/JetBrains/intellij-community/-/blob/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/IndentsPass.java#tab=history * Commit history: https://sourcegraph.com/github.com/JetBrains/intellij-community/-/blob/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/IndentsPass.java#tab=history

View File

@ -1,6 +1,10 @@
package com.github.izhangzhihao.rainbow.brackets.indents package com.github.izhangzhihao.rainbow.brackets.indents
import com.intellij.codeHighlighting.* import com.intellij.codeHighlighting.Pass
import com.intellij.codeHighlighting.TextEditorHighlightingPass
import com.intellij.codeHighlighting.TextEditorHighlightingPassFactory
import com.intellij.codeHighlighting.TextEditorHighlightingPassFactoryRegistrar
import com.intellij.codeHighlighting.TextEditorHighlightingPassRegistrar
import com.intellij.openapi.editor.Editor import com.intellij.openapi.editor.Editor
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
import com.intellij.psi.PsiFile import com.intellij.psi.PsiFile
@ -21,4 +25,4 @@ class RainbowIndentsPassFactory :
false false
) )
} }
} }

View File

@ -1,6 +1,9 @@
package com.github.izhangzhihao.rainbow.brackets.provider package com.github.izhangzhihao.rainbow.brackets.provider
import com.goide.template.GoTemplateTypes.* import com.goide.template.GoTemplateTypes.LDOUBLE_BRACE
import com.goide.template.GoTemplateTypes.LPAREN
import com.goide.template.GoTemplateTypes.RDOUBLE_BRACE
import com.goide.template.GoTemplateTypes.RPAREN
import com.intellij.lang.BracePair import com.intellij.lang.BracePair
class GoTemplateProvider : BracePairProvider { class GoTemplateProvider : BracePairProvider {
@ -8,4 +11,4 @@ class GoTemplateProvider : BracePairProvider {
BracePair(LDOUBLE_BRACE, RDOUBLE_BRACE, true), BracePair(LDOUBLE_BRACE, RDOUBLE_BRACE, true),
BracePair(LPAREN, RPAREN, true) BracePair(LPAREN, RPAREN, true)
) )
} }

View File

@ -2,7 +2,12 @@ package com.github.izhangzhihao.rainbow.brackets.settings
import com.github.izhangzhihao.rainbow.brackets.RainbowHighlighter import com.github.izhangzhihao.rainbow.brackets.RainbowHighlighter
import com.github.izhangzhihao.rainbow.brackets.settings.form.RainbowOptionsPanel import com.github.izhangzhihao.rainbow.brackets.settings.form.RainbowOptionsPanel
import com.intellij.application.options.colors.* import com.intellij.application.options.colors.ColorAndFontOptions
import com.intellij.application.options.colors.ColorAndFontPanelFactory
import com.intellij.application.options.colors.ColorAndFontSettingsListener
import com.intellij.application.options.colors.NewColorAndFontPanel
import com.intellij.application.options.colors.PreviewPanel
import com.intellij.application.options.colors.SchemesPanel
import com.intellij.openapi.options.colors.AttributesDescriptor import com.intellij.openapi.options.colors.AttributesDescriptor
import com.intellij.openapi.options.colors.ColorAndFontDescriptorsProvider import com.intellij.openapi.options.colors.ColorAndFontDescriptorsProvider
import com.intellij.openapi.options.colors.ColorDescriptor import com.intellij.openapi.options.colors.ColorDescriptor
@ -52,4 +57,4 @@ class RainbowColorsPageFactory : ColorAndFontPanelFactory, ColorAndFontDescripto
} }
} }
} }

View File

@ -2,7 +2,11 @@ package com.github.izhangzhihao.rainbow.brackets.settings.form
import com.github.izhangzhihao.rainbow.brackets.RainbowHighlighter import com.github.izhangzhihao.rainbow.brackets.RainbowHighlighter
import com.github.izhangzhihao.rainbow.brackets.settings.RainbowSettings import com.github.izhangzhihao.rainbow.brackets.settings.RainbowSettings
import com.intellij.application.options.colors.* import com.intellij.application.options.colors.ColorAndFontOptions
import com.intellij.application.options.colors.ColorAndFontSettingsListener
import com.intellij.application.options.colors.OptionsPanel
import com.intellij.application.options.colors.SchemesPanel
import com.intellij.application.options.colors.TextAttributesDescription
import com.intellij.ide.util.PropertiesComponent import com.intellij.ide.util.PropertiesComponent
import com.intellij.ui.ColorPanel import com.intellij.ui.ColorPanel
import com.intellij.ui.components.JBCheckBox import com.intellij.ui.components.JBCheckBox
@ -259,4 +263,4 @@ class RainbowOptionsPanel(
} }
} }
private fun <E> List<E>.indexOfOrNull(idx: Int): E? = if (idx < this.size) this[idx] else null private fun <E> List<E>.indexOfOrNull(idx: Int): E? = if (idx < this.size) this[idx] else null

View File

@ -5,7 +5,22 @@ import com.intellij.codeInsight.daemon.impl.HighlightVisitor
import com.intellij.psi.PsiElement import com.intellij.psi.PsiElement
import com.intellij.psi.PsiFile import com.intellij.psi.PsiFile
import com.intellij.psi.impl.source.tree.LeafPsiElement import com.intellij.psi.impl.source.tree.LeafPsiElement
import com.jetbrains.python.PyTokenTypes.* import com.jetbrains.python.PyTokenTypes.BREAK_KEYWORD
import com.jetbrains.python.PyTokenTypes.CLASS_KEYWORD
import com.jetbrains.python.PyTokenTypes.CONTINUE_KEYWORD
import com.jetbrains.python.PyTokenTypes.DEF_KEYWORD
import com.jetbrains.python.PyTokenTypes.ELIF_KEYWORD
import com.jetbrains.python.PyTokenTypes.ELSE_KEYWORD
import com.jetbrains.python.PyTokenTypes.EXCEPT_KEYWORD
import com.jetbrains.python.PyTokenTypes.FINALLY_KEYWORD
import com.jetbrains.python.PyTokenTypes.FOR_KEYWORD
import com.jetbrains.python.PyTokenTypes.IF_KEYWORD
import com.jetbrains.python.PyTokenTypes.RAISE_KEYWORD
import com.jetbrains.python.PyTokenTypes.RETURN_KEYWORD
import com.jetbrains.python.PyTokenTypes.TRY_KEYWORD
import com.jetbrains.python.PyTokenTypes.WHILE_KEYWORD
import com.jetbrains.python.PyTokenTypes.WITH_KEYWORD
import com.jetbrains.python.PyTokenTypes.YIELD_KEYWORD
import com.jetbrains.python.psi.PyStatement import com.jetbrains.python.psi.PyStatement
@ -84,4 +99,4 @@ class PythonRainbowVisitor : RainbowHighlightVisitor() {
) )
} }
} }
} }

View File

@ -749,7 +749,6 @@
<depends optional="true" config-file="JSX.xml">JavaScript</depends> <depends optional="true" config-file="JSX.xml">JavaScript</depends>
<depends optional="true" config-file="dart-brackets.xml">Dart</depends> <depends optional="true" config-file="dart-brackets.xml">Dart</depends>
<depends optional="true" config-file="groovy-brackets.xml">org.intellij.groovy</depends> <depends optional="true" config-file="groovy-brackets.xml">org.intellij.groovy</depends>
<!--<depends optional="true" config-file="csharp-annotator.xml">com.intellij.modules.rider</depends>-->
<depends optional="true" config-file="csharp-brackets.xml">com.intellij.modules.rider</depends> <depends optional="true" config-file="csharp-brackets.xml">com.intellij.modules.rider</depends>
<depends optional="true" config-file="intellij-haskell-annotator.xml">intellij.haskell</depends> <depends optional="true" config-file="intellij-haskell-annotator.xml">intellij.haskell</depends>
<depends optional="true" config-file="sql-brackets.xml">com.intellij.database</depends> <depends optional="true" config-file="sql-brackets.xml">com.intellij.database</depends>

View File

Before

(image error) Size: 4.0 KiB

After

(image error) Size: 4.0 KiB

1
rider/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/build/

11
rider/build.gradle.kts Normal file
View File

@ -0,0 +1,11 @@
plugins {
id("org.jetbrains.intellij")
}
intellij {
type.set("RD")
}
dependencies {
implementation(project(":idea"))
}

View File

@ -10,7 +10,6 @@ import com.intellij.psi.tree.IElementType
import com.jetbrains.rider.ideaInterop.fileTypes.csharp.kotoparser.lexer.CSharpTokenType import com.jetbrains.rider.ideaInterop.fileTypes.csharp.kotoparser.lexer.CSharpTokenType
import com.jetbrains.rider.ideaInterop.fileTypes.csharp.psi.CSharpDummyNode import com.jetbrains.rider.ideaInterop.fileTypes.csharp.psi.CSharpDummyNode
class CSharpRainbowVisitor : RainbowHighlightVisitor() { class CSharpRainbowVisitor : RainbowHighlightVisitor() {
override fun suitableForFile(file: PsiFile) override fun suitableForFile(file: PsiFile)

View File

@ -5,4 +5,13 @@ pluginManagement {
maven(url = "https://oss.sonatype.org/content/repositories/snapshots/") maven(url = "https://oss.sonatype.org/content/repositories/snapshots/")
gradlePluginPortal() gradlePluginPortal()
} }
plugins {
kotlin("jvm") version "1.8.0"
id("org.jetbrains.intellij") version "1.15.0"
}
} }
include("clion")
include("idea")
include("rider")

View File

@ -1,5 +0,0 @@
<idea-plugin>
<extensions defaultExtensionNs="com.intellij">
<annotator language="C#" implementationClass="com.github.izhangzhihao.rainbow.brackets.annotator.RainbowAnnotator"/>
</extensions>
</idea-plugin>