zhengzhenxing / intellij-rainbow-brackets

🌈Rainbow Brackets for IntelliJ based IDEs/Android Studio/HUAWEI DevEco Studio

Home Page:https://plugins.jetbrains.com/plugin/10080-rainbow-brackets

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Intellij rainbow brackets

🌈Rainbow Brackets for IntelliJ based IDEs/Android Studio/HUAWEI DevEco Studio.


Rainbow Brackets Lite

This repo is using to compile a fully free version of our product for the community to use. This is because some users do not need the paid features and do not want to constantly update their software. An open-source, fully free, and stable version is a good option for these users.

I believe this will benefit both the community and our team. The community will have access to a free version of our software, and our team will continue to receive support from those who appreciate and value the paid features.

Compatibility

IntelliJ IDEA, PhpStorm, WebStorm, PyCharm, RubyMine, AppCode, CLion, Gogland, DataGrip, Rider, MPS, Android Studio, HUAWEI DevEco Studio, DataSpell, Code With Me

Supported languages

Java, Scala, Clojure, Kotlin, Python, Haskell, Agda, Rust, JavaScript, TypeScript, Erlang, Go, Groovy, Ruby, Elixir, ObjectiveC, PHP, HTML, XML, SQL, Apex language, C#, Dart, Pug/Jade, Bash, Vue.js, C# Razor Pages, GLSL(the OpenGL Shading Language), Go Template, C++, C, Solidity...

Author's choice

Rainbow Brackets + One Dark Theme + Nyan Progress Bar + Fira Code (Font)

Free features are Sponsored By CodeStream

https://codestream.com

Eliminate context switching and costly distractions. Create and merge PRs and perform code reviews from inside your IDE while using jump-to-definition, your keybindings, and other IDE favorites. Learn more!

Development powered by JetBrains.

https://www.jetbrains.com/?from=IntelliJRainbowBrackets

Whichever technologies you use, there's a JetBrains tool to match.

Install

Or you could install it inside your IDE:

For Windows & Linux - File > Settings > Plugins > Marketplace > Search for "Rainbow Brackets" > Install Plugin > Restart IntelliJ IDEA

For Mac - IntelliJ IDEA > Preferences > Plugins > Marketplace > Search for "Rainbow Brackets" > Install Plugin > Restart IntelliJ IDEA

Screenshots

  • Java

  • Scala

  • Clojure

  • Kotlin

  • HTML/XML

  • Scope highlighting

The highlight effects will not remove after release the shortcuts, but press ESC key can do this. You could also config Press any key to remove the highlighting effect in setting page.

Ctrl + Button3(Windows & Linux) or Meta + Button3(Mac):

NOTE: Button3 means "Secondary Click (click or tap with two fingers)" on Mac os, "Right click" for Windows or Linux. NOTE: Meta means command on Mac os.

Alt + Button3:

NOTE: Button3 means "Secondary Click (click or tap with two fingers)" on Mac os, "Right click" for Windows or Linux.

  • Rainbow indent guide lines

  • looking forward to your screenshots(PR welcome!)

Customize colors

Settings/Preferences > Editor > Color Scheme > Rainbow Brackets:

Customize colors

Use color generator

If you didn't like the build-in colors, or want some new color but don't want to try out and pick colors. Please use color generator.

Settings/Preferences > Other Settings > Rainbow Brackets > Use color generator

If you turn on this option, we will auto generate some colors for you.

Advanced options of color generator

image

hue – Controls the hue of the generated color. You can pass a string representing a color name: red, orange, yellow, green, blue, purple, pink and monochrome are currently supported. If you pass a hexidecimal color string such as #00FFFF, color generator will extract its hue value and use that to generate colors.

luminosity – Controls the luminosity of the generated color. You can specify a string containing bright, light or dark.

Want to config the number of colors?

Settings/Preferences > Other Settings > Rainbow Brackets > Number of colors: 5 or more

And you can use the color generator and config you number of colors at the same time.

NOTE: For default and darcula color scheme(Editor -> Color Scheme -> Rainbow Brackets -> Scheme) the color number is 10, for the other scheme the number is 5, if your number is bigger than the number, you can config them in the config file. If the color is not exist, we will use color generator to generator it for you.

image

Config file path

If you want to customize the advanced configuration, you could edit the config file then restart your IDE. Config file path in APP_CONFIG/rainbow_brackets.xml.

In MAC OS env maybe like ~/Library/Preferences/IntelliJIdea2020.2/options/rainbow_brackets.xml.

If you are using the ToolBox, then it will be like ~/Library/ApplicationSupport/JetBrains/IntelliJIdea2020.2/options/rainbow_brackets.xml

In Linux env maybe like ~/.IntelliJIdea/config/options/rainbow_brackets.xml.

In Windows env maybe like C:\Users\izhangzhihao\.IntelliJIdea2020.2\config\options\rainbow_brackets.xml.

HTML code in js

To enable rainbow brackets for HTML inside js code like this:

var html = '<div><div><div>Hello</div></div></div>';

This plugin will automatically override color scheme property "HTML_CODE" cause our rainbow color been covered by intellij built-in functionality. You still could set <option name="rainbowifyHTMLInsideJS" value="false" /> in config file to disable.

Kotlin function literal braces and arrow

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 property "KOTLIN_FUNCTION_LITERAL_BRACES_AND_ARROW" cause our rainbow color is being covered by kotlin plugin built-in functionality. You still could set <option name="rainbowifyKotlinFunctionLiteralBracesAndArrow" value="false" /> in config file to disable.

Disable rainbow brackets for specific languages

Settings/Preferences > Other Settings > Rainbow Brackets > Do NOT rainbowify these languages (name or extension, comma separated):

NOTE: You can use name of language or extension of file name(The names should be lowercase).

Contribute

NOTE: To view the PSI tree and explore the internal PSI structure of source code, you need to set up your IDE by following this. For the Rider IDE, please follow: this

  • gradle test
  • gradle runIde
  • gradle buildPlugin

Support Us

You can support us by the following actions:

Open Collective AliPay WeChatPay
OpenCollective

Backers

Thank you to all our backers! ❤️ [Become a backer]

Sponsors

Support this project by becoming a sponsor! 🌈 Your logo will show up here with a link to your website. [Become a sponsor]

Acknowledgements

Intellij-rainbow-brackets is heavily inspired by Rainbow Brackets for Visual Studio Code

About

🌈Rainbow Brackets for IntelliJ based IDEs/Android Studio/HUAWEI DevEco Studio

https://plugins.jetbrains.com/plugin/10080-rainbow-brackets

License:Apache License 2.0


Languages

Language:Kotlin 100.0%