warpdotdev / Warp

Warp is a modern, Rust-based terminal with AI built in so you and your team can build great software, faster.
https://warp.dev
Other
20.95k stars 358 forks source link

vi (vim) mode / Vim keybindings #159

Closed vgel closed 11 months ago

vgel commented 3 years ago

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

manuraj17 commented 3 years ago

Just curious -- wouldn't it be better if we don't need the dependency on neovim to drive this? Ofcourse offloading is better, but then having it native feels better for me. Another use case is that I tend to use terminals on machines where neovim is not available -- one example while pairing. So, having an independent mode helps. Just my 2 cents.

zheng commented 3 years ago

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)!

insufferabblejake commented 2 years ago

Want to throw my hat into the support vim natively without needing neovim or the like.

mkomitee commented 2 years ago

Something as basic as what set -o vi does in zsh

tkennedy1-godaddy commented 2 years ago

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 set -o vi in my .bash_profile.

I have ctrl-a bound to other things so emacs keys are pretty hard to use for me. Oddly if I attach to a tmux session set -o vi works again though.

elviskahoro commented 2 years ago

@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.

hms commented 2 years ago

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.

laddhoffman-swarm commented 2 years ago

This looks similar to #839 , which I see was just added to https://github.com/warpdotdev/Warp/milestone/4

gkssjovi commented 2 years ago

There is any solution to this?

hollyoops commented 2 years ago

Same here very hope Vim can be supported

gschnaubelt commented 2 years ago

Is there any solution to getting set -o vi working in bash + warp?

hms commented 2 years ago

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.

currenthandle commented 2 years ago

Bump. Please integrate vim keybindings! This is a dealbreaker for me and I can not switch to your cool new terminal without vim keybindings.

TanGuangZhi commented 2 years ago

now i use zsh in warp to use vim...

elviskahoro commented 2 years ago

@gkssjovi @gschnaubelt Still no solution. @hms @currenthandle I just checked and it's currently set as low priority. And so I honestly have no sense of what the ETA is.

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.

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.

iryan2 commented 1 year ago

Just chiming in as another user that would love to try out this terminal, but am blocked by lack of set -o vi (or similar) support.

0x0elliot commented 1 year ago

really excited to see this workout. eagerly waiting.

robertarles commented 1 year ago

now i use zsh in warp to use vim...

@TanGuangZhi What do you mean by this exactly. Are you able to get vim keybindings? I run oh-my-zsh, and bindkeys -v works for me in iterm, but I'm not getting the vim keybindings when using Warp.

jabalsad commented 1 year ago

Just adding my +1. I love everything that warp appears to offer, but vim keybindings are non-negotiable for me.

clarkezone commented 1 year ago

Adding a +1.. as much as warp seems nice can't use it without vim keybindings.

gmolinart commented 1 year ago

Same here Adding a +1.. can't use it without vim keybindings.

programmatio commented 1 year ago

+1

wazery commented 1 year ago

+1

exsesx commented 1 year ago

+1

RobinMaas95 commented 1 year ago

+1

bmikaili commented 1 year ago

Same here

copalco commented 1 year ago

+1

patrick-elmquist commented 1 year ago

Don't care for Neovim but basic bindings like set -o vi would be awesome, this together with the login requirement are the only things bugging me with Warp

ahayman commented 1 year ago

now i use zsh in warp to use vim...

How do you do this? Warp is using zsh as far as I can tell, but vim binding still don't work (even though they work in iTerm & Terminal)

exsesx commented 1 year ago

I use fish, by the way, and so far, I haven't had any problems with the vi mode in iTerm2. I used it a lot. Now I've switched to Warp, and I like it even more, but It would've been nice to have that little vi gap closed. Warp would be the best option for me.

ahayman commented 1 year ago

Oh, okay. I've primarily use zsh with iTerm, and I love the vi binding for it. I'd love to move to Warp, but missing those bindings is tough.

run2xs commented 1 year ago

Lack of vim command line mode is a non-starter for me. Please add.

chuck-hilyard commented 1 year ago

nice product, but vim command line mode is personally paramount.

Zamua commented 1 year ago

+1 more for vi mode

laz- commented 1 year ago

Just installed warp, stepped through the nux, hit the settings, and I'm here right after.

Taking away the shell's vi input mode without a suitable replacement is a non-starter.

Amarlanda commented 1 year ago

please make this a feature, destroying my ability to use this terminal....

juancampa commented 1 year ago

This is a deal-breaker for me too unfortunately. Can't fight muscle memory

sifu commented 1 year ago

+1 more for vi mode

misterT84 commented 1 year ago

+1 more for vi mode

jabalsad commented 1 year ago

As a reminder - please 👍 the first post in this issue if you would like your +1 to be counted.

ishaikh123 commented 1 year ago

+1 more for vim key bindings

AndreasPB commented 1 year ago

+1 for vi mode - It would make the switch to Warp a very easy decision

mquinnv commented 1 year ago

i've managed to make my brain sorta work now that we can reassign shortcuts by thinking of ctrl/alt as enabling normal mode and binding movement with ctrl and delete with alt. so ctrl+w/b moves and alt+w/b deletes. it is better than the alternative of using arrow keys or learning the gross shortcuts that i won't use anywhere else. not a solution, but stopping me from dumping Warp for the moment. i can't help but feel like i'm dirtying myself with emacs philosophy though

zuxfoucault commented 1 year ago

+1 for vim-mode

ryboe commented 1 year ago

+1 The lack of vim-mode is the last remaining missing feature preventing me from using Warp as my daily driver.

pepehandsjpg commented 1 year ago

+1

chrismerck commented 1 year ago

Only way I could use this is with vi keybindings. Not having them is going back to the stone age.

danrasmuson commented 1 year ago

+1

dieggoluis commented 1 year ago

+1

kevinzeidler commented 1 year ago

+1. Warp terminal is easily one of the coolest things I discovered in 2022, and it's been a joy to watch it evolve. It was already the sleekest, most ergonomic terminal emulator I'd ever used when I found it back in May, and with each update it's gotten better and better. But, being a Vimmer at heart, it's been weird to have no Vim keybindings in the command editor. I'd love to see this feature added, it would add so much and it would make it easier for folks to switch to Warp terminal and keep their muscle memory intact.