-
Notifications
You must be signed in to change notification settings - Fork 360
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
vi (vim) mode / Vim keybindings #159
Comments
Just curious -- wouldn't it be better if we don't need the dependency on neovim to drive this? |
We definitely want to support some kind of vim mode for the editor. Not sure what our approach will be, but this is a cool project! When it comes to pairing, we want to support sharing sessions via the web. And one early thought I have is that there's no reason why everyone can't use their own preferred bindings when typing collaboratively (just like in Coderpad)! |
Want to throw my hat into the support vim natively without needing neovim or the like. |
Something as basic as what |
This was about 3 minutes of my life trying to figure out why vim keys didn't work in the terminal even though I've got I have |
@tkennedy1-godaddy Hey Todd, So the tldr; is the input editor had to built natively to support similar text editing experiences like VS Code. However this also means we'll have to build Vim keybindings ourselves. Once we launch custom keybindings in general, we'll then look to add Vi Mode. |
I know the Warp team has their hands full, but the lack of this feature really makes it very hard to adopt Warp full-time or recommend it as "ready to try". I hope this feature request will get some love and attention soon as it cuts off a lot of users and I really like Warp and would like to see it be wildly successful. |
This looks similar to #839 , which I see was just added to https://github.com/warpdotdev/Warp/milestone/4 |
There is any solution to this? |
Same here very hope Vim can be supported |
Is there any solution to getting |
It sure seems like the amount of communications from the Warp team has declined significantly. While I (and I'm sure most if not all warp users) understand how big an undertaking the Warp team is biting off, the lack of communications about a roadmap and approximate timing around what's important to me as a user means I've stopped beta testing. This feature is simply one of several that are important to my productivity and with it, I can't effectively use, and no longer recommend, Warp. |
Bump. Please integrate vim keybindings! This is a dealbreaker for me and I can not switch to your cool new terminal without vim keybindings. |
now i use zsh in warp to use vim... |
@gkssjovi @gschnaubelt Still no solution.
We're trying to figure out this quarter how we can be more transparent about the roadmap. On the communications front more generally, we're trying to hire more people so that we can improve our responsiveness. After the beta launch we (primarily me) got very overwhelmed with feedback and so sorry that I'm getting to this so late. |
+1 on this feature |
I really like the idea of warp, but unfortunately can't use it without key bindings. I'll keep an eye on this issue to see when I can come back. |
Hey @dannyneira happy August! Any way we can get an update? |
+1 for vi mode! Also, this would suffice for me, as it allows me drop into vi with the current command:
|
excited to see this being worked on +1 |
Excited to see this in the works. Can't wait to try it! |
This would be a game changer if it supported text objects (e.g. |
Hey folks, we're making good progress on vi mode, adding more supported shortcuts every week! We want to make sure it's just right before we launch, so we appreciate your patience while we work on this highly requested feature. (@juancampa It will support text object shortcuts 🤌 ) |
Is it not possible/easyish to simply have an embedded instance of nvim? I can even do it in Chrome. |
Both Bash and ZSH supports vi mode, Bash directly via .profile, ZSH via ZSH plugins. These work in iTerm2 very well. Couldn't Warp tap into BASH and ZSH to do similarly? |
Why create what the underlying shells mostly support already, e.g. Bash, ZSH. These allow vi integration either directly or through plugins. I don't believe this should be a terminal implementation. Rather, Warp just needs to integrate with the shell to support this feature. |
Hello fellow Vimmers, Lucie (@lucieleblanc) and Andy (@acarl005) here from Warp's engineering team! We've been working on Vim keybindings, and as of the latest release you can now use them in Warp's input editor 🎉 To enable them, navigate to See the documentation here for a list of supported keybindings. Vim keybindings are currently in beta, and we want to hear your feedback. We've been using this internally, but there are certainly bugs and use cases we haven't encountered yet. Although this main issue thread will be closed, please open new issues in this repo and upvote (:thumbsup:) existing Vim-related issues to help us prioritize them. For those interested, we implemented Vim keybindings natively as a finite-state automaton (FSA) that plugs into Warp's input editor. We're hoping to write a blog post about it, and maybe open-source our Vim FSA implementation in its own crate – please upvote those issues if they would be of interest to you. |
This is great! Will try switching over to warp now from iterm2 full time. Is this bug reported? Nvim/lvim has borders around it EDIT Ah found it - #2373 Will hold off until this is fixed! Also seems that the settings UI for customizing keyboard shortcuts doesn't take Command as an input |
Great news that there is some movement in the pond. A question. Since this is using a gui toggle, If I have |
@benlieb Correct, setting the vi mode in the shell (such as with |
Highlight of my week right here. Can't wait to get back into warp! |
They have listened and we have been heard! |
I'm very happy with this implementation. Great job, thanks for listening! |
Sorry to pile-on -- the implementation is indeed terrific (I've even been surprised by how thorough the command support is) -- I know that yall are working on better support for non-shell subshells (ie rails console, python, etc.) -- when/if that work gets completed, will the VIM support work there as well? |
One bug/UX issue I've noticed, when using J/K to scroll command history, it is essentially impossible to edit multiline commands as J/K just goes to the next/prev commands instead of navigating lines of the command. You are only able to edit without running by clicking with a mouse/trackpad, which defeats the purpose of VIM |
Ya, faced the same. Also There's a workaround though - use |
Thank you all for the feedback! It is much appreciated. @apolzon Yes, Warp's editor code remains the same in subshells, so I expect that Vim keybindings could work in non-shell REPLs too. However, I'm not sure how they would interact with REPLs that have non-standard bindings built in. Non-shell REPLs are not on Warp's roadmap for the next few months, so I can't promise anything there. @djmango Currently j/k behave like up/down arrow keys, so the same problem exists outside of vim mode. We're working on finding a better UX for this, but please do open a separate issue for it so we can share and discuss ideas for a resolution! @cshintov I'm not familiar with |
Anyone interested in this please like and subscribe 😉 command edit and execution feature like vi mode. |
+1 on this feature! |
Describe the solution you'd like?
Use neovim to drive vim keybindings in the command editor.
Is your feature request related to a problem? Please describe.
I use Vim keybindings in ZSH (via https://github.com/jeffreytse/zsh-vi-mode) on my home machine. I haven't gotten around to setting it up on my work laptop yet, because it's painful, slow, and buggy. It tries to emulate vim using shell scripts, which doesn't work very well. It'd be really neat to leverage the native editor experience in Warp to provide a near-flawless vim mode like vscode-neovim does for vscode.
Additional context
The text was updated successfully, but these errors were encountered: