-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Add minimap #220
base: master
Are you sure you want to change the base?
[WIP] Add minimap #220
Conversation
TODO: Separate minimaps for each (non-floating) window. |
…ess on large files (?), maybe other stuff
So quick update: the performance of this isn't good enough to where I'd call it usable, due to the initial tree-sitter parsing of a file taking too much time. With this minimap enabled, unless you're opening a file with 100-400 (ish?) lines, it's not the best experience. The only way I can think to get around this is to do the file parsing in a separate [luv, The alternative to this is to just do what Goneovim does, run a separate nvim instance solely for the minimap, but I'm not a huge fan of that method personally, so I'd like to go this route (or a similar one?) if at all possible. |
Just an MVP for now, still need to make it show where the cursor is, scroll with the buffer (if necessary), also need to tweak colors/figure that out, etc.
Note that ATM it requires a tree-sitter parser/nvim-treesitter in order to be used at all; plan is to make it such that it'll work w/out a tree-sitter parser/nvim-treesitter, but have no syntax highlighting.
In any case, if you want to test open up a file (for which you have a tree-sitter parser installed that supports syntax highlighting), and then run
:lua require'uivonim/minimap'.show()
. Here's how it looks in its current (and very very subject to change) form:Should close #194.