I'm looking for a package similar to atom swackets, allowing rainbow coloring of brackets (and eventually parentheses) regardless of language I'm using.
(note : there is a package already doing it only for parenthesis on lips but I it doesn't correspond to what I'm looking for)
edit : juste use VSCode.
I don't know whether there is a package for this, but just doing it on your own should not be that hard (if you have a good syntax file).
Syntax files usually scope a brace as meta.brace.curly and each brace adds a meta scope meta.group.braces.curly.
Knowing this we can change the colorscheme. (To find your colorscheme you can use PackageResourceViewer)
Just add a different color for a different number of surrounding meta.group.braces.curly context. For example you can add this at a reasonable position:
<dict>
<key>name</key>
<string>Brace Level 0</string>
<key>scope</key>
<string>meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#990099</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 1</string>
<key>scope</key>
<string>meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#00ccff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 2</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#33cc33</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 3</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ffff00</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 4</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ff00ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 5</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#cc3300</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 6</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#91e374</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 7</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#6699cc</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 8</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0000cc</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 9</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#9900ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Brace Level 10</string>
<key>scope</key>
<string>meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.group.braces.curly meta.brace.curly</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#6600cc</string>
</dict>
</dict>
This results in the following highlighting:

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With