Rainbow Brackets / Rainbow Parentheses for IntelliJ based IDEs.
IntelliJ IDEA, PhpStorm, WebStorm, PyCharm, RubyMine, AppCode, CLion, Gogland, DataGrip, Rider, MPS, Android Studio
Java, Scala, Clojure, Kotlin, Python, Haskell, Agda, Rust, JavaScript, TypeScript, Erlang, Go, Groovy, Ruby, Elixir, ObjectiveC, PHP, HTML, XML, SQL, Apex language ...
Expand to view the screenshots
- with Java
- with Scala
- with Clojure
- with Kotlin
- with HTML/XML
- Scope highlighting
Ctrl + Button3(Windows & Linux) or Meta+ Button3(Mac):
Alt + Button3:
- looking forward to your screenshots...
For Windows - File > Settings > Plugins > Browse repositories... > Search for "Rainbow Brackets" > Install Plugin > Restart IntelliJ IDEA
For Mac - IntelliJ IDEA > Preferences > Plugins > Browse repositories... > Search for "Rainbow Brackets" > Install Plugin > Restart IntelliJ IDEA
If you want to config the color, edit your config file and restart your IDE(APP_CONFIG/rainbow_brackets.xml), In my env(MAC os) is /Users/izhangzhihao/Library/Preferences/IntelliJIdea2018.1/options/rainbow_brackets.xml:
<option name="lightRoundBracketsColors">
<array>
<option value="0xE6B422" />
<option value="0x43A047" />
<option value="0x2196F3" />
<option value="0x3F51B5" />
<option value="0x00897B" />
</array>
</option>
If you prefer using light theme, here is a example from @Avinash-Bhat gray config using Material Deisgn Color Tool, it works greate with light themed bg (basically white) but dark theme is not so good.
NOTE: The lightXXX and the darkXXX should be the same size!
Expand to view the default colors:
var lightRoundBracketsColors = arrayOf(
"0xE66A01",
"0x1B5E20",
"0x006BE7",
"0x283593",
"0x004D40"
)
var darkRoundBracketsColors = arrayOf(
"0xE6B422",
"0x43A047",
"0x2196F3",
"0x3F51B5",
"0x00897B"
)
var lightSquareBracketsColors = arrayOf(
"0x0B9087",
"0x827717",
"0x6444E6"
)
var darkSquareBracketsColors = arrayOf(
"0x33CCFF",
"0xD4E157",
"0x8080FF"
)
var lightSquigglyBracketsColors = arrayOf(
"0x0057D2",
"0x558B2F",
"0xFF6D27"
)
var darkSquigglyBracketsColors = arrayOf(
"0x1976D2",
"0x8BC34A",
"0xFF9863"
)
var lightAngleBracketsColor = lightRoundBracketsColors
var darkAngleBracketsColor = darkRoundBracketsColors
To enable rainbow brackets for HTML in js code like this:
var html = '<div><div><div>Hello</div></div></div>';
This plugin will automatically override color scheme "HTML_CODE" cause our rainbow color been covered by intellij built-in functionality.
You still could set <option name="rainbowifyHTMLInsideJS" value="true" />
in config file to disable just like Config brackets colors.
To enable rainbow brackets for multiple level lambda Kotlin code like this:
event.throwable?.let { throwable ->
IdeErrorsDialog.findPluginId(throwable)?.let { pluginId ->
PluginManager.getPlugin(pluginId)?.let { ideaPluginDescriptor ->
if (!ideaPluginDescriptor.isBundled) {
bean.pluginName = ideaPluginDescriptor.name
bean.pluginVersion = ideaPluginDescriptor.version
}
}
}
}
This plugin will automatically override color scheme "KOTLIN_FUNCTION_LITERAL_BRACES_AND_ARROW" cause our rainbow color been covered by kotlin plugin built-in functionality.
You still could set <option name="isRainbowifyKotlinFunctionLiteralBracesAndArrow" value="true" />
in config file to disable just like Config brackets colors.
gradle test
gradle runIde
gradle buildPlugin
Intellij-rainbow-brackets is heavily inspired by Rainbow Brackets for Visual Studio Code