-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
[WIP] View based refactoring in workspace v2 #13870
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
base: master
Are you sure you want to change the base?
Conversation
This comment was marked as outdated.
This comment was marked as outdated.
ok so I modified the gutter to display the custom path but I'm not sure how I feel about touching so many internals of |
helix_refactor.mp4Here's a demo using now with the gutter being "properly" implemented |
Hi, I was looking into this and it looks super cool and very similar to oil.nvim. However at the moment the global_refactor is not a typed command i.e what if I am inside a workspace and I would like to perform a refactor inside specific directory or a file? Something like ":refactor x/y/z". |
currently the way to specify a directory is to use the column matching in the global search picker so something like |
Rebased and modified from the original author: #4381
As is disclaimer this is heavily WIP and I'm fairly new to Rust so things aren't the cleanest
A couple changes:
global_search
command rather than bespoke query logicrefactor
buffer is (ctrl-q). The keybind is mainly because of vim muscle memory so it's subject to changeglobal_refactor
command still exists as a way to "write out" the changes to the buffers, though I think it might be nice to eventually make it work on the:write
commandThis is also still using the
enum
inDocument
since usingView
(seems) to require much deeper knowledge of Helix's codebase and rewriting/reusing much of the document editing code.This PR is mainly meant to document my changes but feedback/reviews are welcome, though I don't expect this to be merged, especially as-is. This might also be better suited as a plugin