by city41 on 2/21/20, 4:31 PM
This is an interesting approach. I find the popular vim emulation extension (vscodevim) is a bit buggy and has lots of "uncanny valley" gaps.
At work I use vscodevim, and at home I use vim with TypeScript plugins. Both approaches have lots of annoyances. Maybe a weekend dedicated to ModalEdit could give me the experience I'm really after. I'm also excited for Oni Vim 2, which is a commercial product who's promise is to provide the best of both vim and VS Code.
by mfontani on 2/21/20, 5:08 PM
Vim's power doesn't come from using single-letter commands to do things but, rather, in the language-like (action, verb, noun) expressions the whole ecosystem enables: "daw" to delete a word, "cit" to replace the "inner" part of a tag and start typing, numbered prefixes to execute an action that number of times, etc.
See also: https://stackoverflow.com/questions/1218390/what-is-your-mos... aka "Your problem with Vim is that you don't grok vi."
by twohearted on 2/21/20, 5:05 PM
I feel like this is missing the point of Vim a little bit. It's not about using hjkl instead of arrow keys. It's about progressively learning a vast and useful language specifically made for editing text efficiently. And then realizing you can use every single part of that language in a macro. And then realizing you can use that same language to orchestrate those macros.
by H1Supreme on 2/21/20, 5:06 PM
Why use VSCode at all then? I've found coc.nvim and language servers to be every bit as good as VSCode in terms of code completion and definitions.
I'm mostly writing Go, C, Javascript, and HTML/CSS. But, so far it's been working great. And, I'm a fairly recent convert to vim (neovim).
by mmahemoff on 2/21/20, 5:45 PM
It's disappointing to see from comments here that there's no true and performant Vim integration for VS Code.
It used to be the same thing with Eclipse and JetBrain's IDEs. Whatever Vim plugins existed were slow and falling into the uncanny valley, where they lacked support for many features or did things in slightly unexpected ways.
Torn between Vim and effectively Vimless IDEs, I chose to stick to the former and do what's possible to bring an IDE-like experience via plugins, though you still miss out on a lot in my experience, and any feature you want in Vim requires a lot more learning and configuring.
The promise of NeoVim was to provide true and complete Vim behavior in IDEs via its headless network protocol; but the indication here is it still hasn't happened.
by nobleach on 2/21/20, 10:24 PM
One of the biggest issues with Vim emulation in VSCode is that VSCode has no concept of text objects. Because of this, things like "change inner word" or "paste" will always have to delete text character by character and re-type (in the case of the latter). It's sort of like watching a ghost type. I'm still very impressed with how well it's all working. Atom has AMAZING Vim emulation, but its text rendering engine is different. It'll be interesting to see what the Oni folks come up with.
by jaimehrubiks on 2/22/20, 2:04 AM
For my specific use case the integration is awesome. I can edit text super fast with all vim keybindings. I also appreciate having the easy motion plug-in by default, which I also love. I understand that people who know the depths of vim may lack features they are used to. But for the majority of us it really improves our coding experience, and at the same time we don't spend time struggling to add ide features into vim, because vscode is already a great ide. So when I start using a new file type it just works or there is a plug-in for it. Same with debugger, compiling, and so on.
by iimblack on 2/21/20, 9:21 PM
I’ve really wanted to write a Kakoune style layer for VS Code or even a Kakoune style editor that works natively on Windows.
by bananamerica on 2/21/20, 6:35 PM
Just use Evil and have the best of both worlds.
by trenchgun on 2/22/20, 6:54 AM
Why not just use Doom Emacs?
by khokhar88 on 2/25/20, 9:30 AM
nice article