diff --git a/.gitignore b/.gitignore index da17820..3e6a6e7 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /.gradle/ /build/ +/libs/ diff --git a/build.gradle.kts b/build.gradle.kts index 3c81a91..d833c15 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -10,13 +10,28 @@ plugins { group = "com.chylex.intellij.rainbowbrackets" version = "6.26-chylex-1" +val ideVersion = "2023.2.2" + +idea { + module { + 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 { + clion("com.jetbrains.intellij.clion:clion:$ideVersion") + rider("com.jetbrains.intellij.rider:riderRD:$ideVersion") + compileOnly(fileTree("libs")) testImplementation("org.junit.jupiter:junit-jupiter:5.9.2") @@ -29,7 +44,7 @@ kotlin { intellij { type.set("IU") - version.set("2023.2.2") + version.set(ideVersion) updateSinceUntilBuild.set(false) plugins.set( @@ -68,3 +83,28 @@ tasks.withType<KotlinCompile> { "-Xjvm-default=all" ) } + +fun createDownloadIdeTask(name: String, dependency: Configuration, configuration: CopySpec.() -> Unit): Sync { + return tasks.create<Sync>(name) { + group = "ides" + outputs.upToDateWhen { false } + + from(dependency.map(::zipTree), configuration) + into(file("libs/${dependency.name}")) + } +} + +val downloadIdeClion = createDownloadIdeTask("downloadIdeClion", clion) { + include("plugins/cidr-base-plugin/**") +} + +val downloadIdeRider = createDownloadIdeTask("downloadIdeRider", rider) { + include("lib/app.jar") +} + +tasks.create<Sync>("downloadExtraIdes") { + group = "ides" + + dependsOn(downloadIdeClion) + dependsOn(downloadIdeRider) +} diff --git a/libs/clion.jar b/libs/clion.jar deleted file mode 100644 index 0edb4d3..0000000 Binary files a/libs/clion.jar and /dev/null differ diff --git a/libs/rider.jar b/libs/rider.jar deleted file mode 100644 index 3c8a872..0000000 Binary files a/libs/rider.jar and /dev/null differ diff --git a/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/provider/CSharpBracePairProvider.kt b/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/provider/CSharpBracePairProvider.kt index 3febf56..4b04970 100644 --- a/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/provider/CSharpBracePairProvider.kt +++ b/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/provider/CSharpBracePairProvider.kt @@ -1,21 +1,13 @@ package com.github.izhangzhihao.rainbow.brackets.provider import com.intellij.lang.BracePair -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.GT -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.LBRACE -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.LBRACKET -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.LPARENTH -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.LT -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.RBRACE -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.RBRACKET -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.RPARENTH +import com.jetbrains.rider.ideaInterop.fileTypes.csharp.kotoparser.lexer.CSharpTokenType class CSharpBracePairProvider : BracePairProvider { override fun pairs(): List<BracePair> = listOf( - //BracePair(LPARENTH, RPARENTH, false), - BracePair(LBRACE, RBRACE, false), - BracePair(LBRACKET, RBRACKET, false), - BracePair(LT, GT, false), + BracePair(CSharpTokenType.LPARENTH, CSharpTokenType.RPARENTH, false), + BracePair(CSharpTokenType.LBRACE, CSharpTokenType.RBRACE, false), + BracePair(CSharpTokenType.LBRACKET, CSharpTokenType.RBRACKET, false), + BracePair(CSharpTokenType.LT, CSharpTokenType.GT, false), ) -} \ No newline at end of file +} diff --git a/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/provider/OCBracePairProvider.kt b/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/provider/OCBracePairProvider.kt index c427576..e13e5cc 100644 --- a/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/provider/OCBracePairProvider.kt +++ b/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/provider/OCBracePairProvider.kt @@ -1,8 +1,8 @@ package com.github.izhangzhihao.rainbow.brackets.provider import com.intellij.lang.BracePair -import com.jetbrains.cidr.lang.parser.OCTokenTypes +import com.jetbrains.cidr.lang.parser.OCLexerTokenTypes class OCBracePairProvider : BracePairProvider { - override fun pairs(): List<BracePair> = listOf(BracePair(OCTokenTypes.LT, OCTokenTypes.GT, false)) -} \ No newline at end of file + override fun pairs(): List<BracePair> = listOf(BracePair(OCLexerTokenTypes.LT, OCLexerTokenTypes.GT, false)) +} diff --git a/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/visitor/CSharpRainbowVisitor.kt b/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/visitor/CSharpRainbowVisitor.kt index cb54a21..8cb5723 100644 --- a/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/visitor/CSharpRainbowVisitor.kt +++ b/src/main/kotlin/com/github/izhangzhihao/rainbow/brackets/visitor/CSharpRainbowVisitor.kt @@ -7,10 +7,7 @@ import com.intellij.psi.PsiElement import com.intellij.psi.PsiFile import com.intellij.psi.impl.source.tree.LeafPsiElement import com.intellij.psi.tree.IElementType -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.GT -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.LPARENTH -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.LT -import com.jetbrains.rider.ideaInterop.fileTypes.csharp.lexer.CSharpTokenType.RPARENTH +import com.jetbrains.rider.ideaInterop.fileTypes.csharp.kotoparser.lexer.CSharpTokenType import com.jetbrains.rider.ideaInterop.fileTypes.csharp.psi.CSharpDummyNode @@ -50,8 +47,8 @@ class CSharpRainbowVisitor : RainbowHighlightVisitor() { companion object { val map = mapOf( - LPARENTH to BracePair(LPARENTH, RPARENTH, true), - RPARENTH to BracePair(LPARENTH, RPARENTH, true), + CSharpTokenType.LPARENTH to BracePair(CSharpTokenType.LPARENTH, CSharpTokenType.RPARENTH, true), + CSharpTokenType.RPARENTH to BracePair(CSharpTokenType.LPARENTH, CSharpTokenType.RPARENTH, true), //LT to BracePair(LT, GT, true), //GT to BracePair(LT, GT, true), ) @@ -123,4 +120,4 @@ class CSharpRainbowVisitor : RainbowHighlightVisitor() { } } } -} \ No newline at end of file +}