Skip to content
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

Selection-first modal editing (like Kakoune, Helix editors - alternative to "vim mode") #4888

Open
1 task done
r-moore opened this issue Mar 20, 2023 · 6 comments
Open
1 task done
Labels
feature [core label] potential extension Functionality that could be implemented as an extension (consider moving to community extensions)

Comments

@r-moore
Copy link

r-moore commented Mar 20, 2023

Check for existing issues

  • Completed

Describe the feature

In VIM's command mode you usually type the action before the selection, e.g. dw to delete a word. In selection-first editors like Helix you make the selection before the action, so it would be wd instead of dw.

Having used Helix for a while I now much prefer the Helix/Kakoune convention!

Maybe Zed could implement this customisable way such that you can configure the keybindings to emulate other modal editors?

If applicable, add mockups / screenshots to help present your vision of the feature

No response

@r-moore r-moore added feature [core label] triage labels Mar 20, 2023
@fdionisi
Copy link
Contributor

Hey, @r-moore @jfaz1 - quick note. I just remembered there is an open discussion regarding "Post-vim" modal editing. You may draw inspiration or give suggestions there too. 😁

@xulis
Copy link

xulis commented Jun 14, 2023

Agreed, I think the helix way is better than vim.

@hovsater
Copy link
Contributor

This feature is one of the few things blocking me from using it as my daily driver. I don't think adding a customizable way to create your own keybinds is really necessary; if you add helix and vim (already in), and maybe emacs, that satisfies the vast majority of use cases without overcomplicating it.

The editing models used by Vim, Helix and Emacs are all vastly different and implementing just one of these modes in Zed would require a monumental effort. I don't think it makes much sense for this to live within core Zed, but rather as community extensions.

@uxiew
Copy link

uxiew commented Jun 17, 2023

yeah,Allowing users to do this through plugins, regardless of whether they prefer vim or helix, is the best way.

@r-moore
Copy link
Author

r-moore commented Oct 11, 2023

Sounds like it won't be a core feature and will need someone to write a plugin.
Hopefully the API will be flexible enough to allow for this :)

Should I close this issue then folks?

@JosephTLyons JosephTLyons added the potential extension Functionality that could be implemented as an extension (consider moving to community extensions) label Oct 13, 2023
@JosephTLyons
Copy link
Collaborator

I'd leave it open. Nothing is off the table in terms of what we might add. Also, we have the potential plugin label, which has been used all over the place here, so that devs will know what sort of features zed users want when we have the plugin system. :)

@JosephTLyons JosephTLyons transferred this issue from zed-industries/community Jan 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature [core label] potential extension Functionality that could be implemented as an extension (consider moving to community extensions)
Projects
None yet
Development

No branches or pull requests

6 participants