p00f / nvim-ts-rainbow

Rainbow parentheses for neovim using tree-sitter. Use https://sr.ht/~p00f/nvim-ts-rainbow instead
Apache License 2.0
869 stars 67 forks source link

Add more languages to levels.lua #33

Open brymer-meneses opened 3 years ago

brymer-meneses commented 3 years ago

I have configured this plugin to show custom colors and I want to make them appear in a certain order. However, I get random order of appearance.

Screenshot from 2021-05-07 06-56-17

brymer-meneses commented 3 years ago

Is this a bug or a known feature?

p00f commented 3 years ago

It's not random per se, it just uses all nodes to calculate nesting depth (instead of only brackets) so it appears random

This was adressed by #25 but I reverted it for other reasons, I'll add it again when #29 is complete.

I'm keeping this open as a reminder, thank you.

brymer-meneses commented 3 years ago

Any updates on this one?

p00f commented 3 years ago

I'll try to do it this week

brymer-meneses commented 3 years ago

Thank you! Let me know if I can help!

p00f commented 3 years ago

Sorry I got caught up in acads, I'll get to it now

brymer-meneses commented 3 years ago

Sorry I got caught up in acads, I'll get to it now

Dude I'm not supporting you or anything, you're working for free. It's okay lol, I'm grateful for your work!

p00f commented 3 years ago

You can try out the colornum branch now, I've done lua, c++ and rust.

Let me know if I can help!

Can you test if there's a performance hit against master ? Maybe large C++ files like firefox source

p00f commented 3 years ago

before

image

after

image

brymer-meneses commented 3 years ago

You can try out the colornum branch now, I've done lua, c++ and rust.

It's a hit-or-miss.

2021-05-26_23-00

The brackets at the bottom of my screenshot are okay, however the colors at the top are not as expected.

p00f commented 3 years ago

There's nothing much I can do for lua though - it's a parser limitation. To highlight print(1+(2+(3))) correctly I'll have to count binary_operation since there is no parenthesized_expression node like java here. This will now do

image

because it counts the concatenation as a level

c++ and rust on the other hand look much better

p00f commented 3 years ago

Similarly there's no node for indexing so this happens

image

(which is maybe fine here because the shapes of the brackets are different)

brymer-meneses commented 3 years ago

I guess we'll just have to live with this minor inconvenience then.

Thanks for fixing this!

brymer-meneses commented 3 years ago

You can try out the colornum branch now, I've done lua, c++ and rust.

Let me know if I can help!

Can you test if there's a performance hit against master ? Maybe large C++ files like firefox source

I have opened a cpp file with 2500 lines taken from tensorflow, there was a slight lag, but not that bad imo.

p00f commented 3 years ago

I've merged the colornum branch into master (currently with rust, cpp and fennel queries). Now we only need to add levels for more languages from #25 (and change if needed)

p00f commented 3 years ago

I won't be able to do stuff in the coming weeks, feel free to submit PRs

p00f commented 3 years ago

Just add the rainbow.level nodes from the PR into the respective table in levels.lua like so: image

github-actions[bot] commented 3 years ago

Stale issue message

karimlevallois commented 3 years ago

Is this still being worked on? I'm trying to mirror my colour settings from Sublime Text and VSCode, so I have put the colours in the same order in my lua config file. However, Python files (at least) are not colouring in the same order as they are in my config file.

p00f commented 3 years ago

Is this still being worked on?

Not actively, I (and other contributors) fix this when I notice something

p00f commented 2 years ago

Lua is fixed with the new parser