DEV Community

Ben Halpern
Ben Halpern

Posted on

Vscode Vim VSCode vs Vim

Your life as a developer depending on what you choose as an editor.

Let's compare and contrast your experience if you go down either of these paths. Feel free to branch the conversation on to other editors but I felt like this is the most relevant debate today.

Latest comments (65)

Collapse
 
academicspade profile image
SpadeAcademic • Edited

My development work is fully in C++. My experience is thus: Began with Visual Studio IDE on Windows. Switched to VSCode since I had to develop the same code base on a Linux machine as well. Got swept up by the "VIM is faster/better than any other IDE" cult. Spent a few months using VIM as the IDE for C++. Then, got tired of polishing my .vimrc nonstop. Also was troubled that YCM autocomplete was very slow and buggy and lacking in features that VSCode and Visual Studio IDE have (for e.g., if you are filling the argument list of a function with large number of arguments, CtrlShiftSpace in VSCode/Visual Studio IDE tell you which parameter you are on. No such comparable feature in YCM). Vimspector debugging was not good enough (VSCode/Visual Studio provide logpoints capability, for instance) and there were tons of keyboard shortcut conflicts given all the plugins needed to turn VIM into a half-decent IDE. Gave up on VIM. I am now back to VSCode and Visual Studio IDE. They just work correctly and easily out of the box and have capabilities that are not available in VIM.

My advice for others reading this who are not yet committed to VIM -- do not get swept by the "VIM is smarter/better" madness. It is not. You are better of learning an actual IDE (any IDE would be fine) completely. You will be far more productive than you can every hope to be in VIM which is not an IDE nor was it ever meant to be one.

Visual Studio IDE also has the capability of integrating Intel VTune profiler which helps in finding hotstops in your algorithms much quicker. So, this IDE actually helps figure out how to make your code run faster. Of course this is possible in linux by running stuff through valgrind, etc. But that is outside of VIM. Visual Studio IDE is truly therefore an "Integrated" environment.

 
nazeh profile image
Ar Nazeh

Thanks, I will try it this weekend as I am trying to be more efficient with typing and navigation as a new developer!

Collapse
 
nazeh profile image
Ar Nazeh

Is there a colemak fork you know of?

Collapse
 
itsjzt profile image
Saurabh Sharma

You can use coc.nvim which brings intellisense of vs code to vim

Collapse
 
n8io profile image
Nate Clark

Each Vim developer had a custom layout and file tree that made it hard to follow during pairing. Again this is just my experience, but I didn't find much consistency between Vim environments either. There's also the fact that I had no indicator of what was going on when the host would start tapping away at key bindings. I think we've all been there when a Vim developer mistypes a command several times just so they can do it the "Vim way". During these times I would tune out or get frustrated with the inefficiency. I've also had several Vim devs tell me that X plugin is not working so they have to do things a little weird, then run linting/formatting outside as a post process to their normal workflow. Not show stoppers by any means, but IMO unnecessary friction points.

 
katylava profile image
katy lavallee

hah, i never knew what it said in the help docs. i think i read a blog post once that gave me those mnemonics.

Thread Thread
 
moopet profile image
Ben Sinclair

Me too :P

 
katylava profile image
katy lavallee • Edited

it's actually setting up a ctags library that i've had trouble with. although looks like you are using something called universal-ctags instead of exuberant-ctags. i'll give that a try.

Collapse
 
katylava profile image
katy lavallee

I switched to vim from TextMate over 10 years ago. I love modal editing. I also love modally controlling the whole editor (like opening files and showing/hiding different buffers). I have more trouble learning to hit several keys at once than learning to hit them in series. I do have a few key combos set up in vim that I keep forgetting so I should probably turn them into mappings.

That said I think VSCode is pretty awesome. What attracts me to it most is the powerful intellisense, since I haven’t figured out how to get more robust completion with vim plugins.

I’ve tried getting into VSCode, since I can at least edit text modally with it (although it feels slower), but there’s just too much to set up. Back in 2008 or 09, it took me two weeks of being fairly unproductive to get vim set up well for me. At the time there wasn’t much work to do because of the economy, but right now I have a lot of work to do (in spite of the economy).

Collapse
 
katylava profile image
katy lavallee

I always though of i as β€œinside” and a as β€œaround”.

Collapse
 
katylava profile image
katy lavallee

i need to figure out how to set up tag bar. i love vim but i don’t have it set up well to be a great IDE.

Collapse
 
vlasales profile image
Vlastimil Pospichal

Vim for all cases. He works like I'm dictating commands to him on the phone.

Collapse
 
sirseanofloxley profile image
Sean Allin Newell

VSCode has the best 'install and go' DX I've ever experienced. Even better than sublime, n++ - it just installs, starts, and goes really quickly with intellisense for TS/JS out of the box, and installing extensions is suggested and can be done without even reloading the editor.

Collapse
 
sewvandiii profile image
Sewvandi Promodya Wickramasinghe

VSCode is the best!! 😍

Collapse
 
moopet profile image
Ben Sinclair

Looks interesting. I've always avoided neovim, but I think I might give this a shufty.

Collapse
 
nuculabs_dev profile image
Nucu Labs

I only use VSCode and IntelliJ IDEs. If I have to do some quick edits on a remote server nano and vi usually does the job, but that happens very rarely.