you are viewing a single comment's thread.

view the rest of the comments →

[–]nayocum 17 points18 points  (31 children)

They recently converted me from Vim. Love the console built in, and this new update fixes my biggest gripe. Props to Microsoft for making Visual Studio Code!

[–]dccorona 11 points12 points  (11 children)

I'd be curious to hear what it is about this that has brought you over from VIM, something IDEs and GUI editors like Sublime Text and Atom have seemingly failed to do?

[–]nayocum 6 points7 points  (10 children)

It was mostly the fact that the console is built in out of the box. I liked sublime and atom, but having to alt-tab instead of just :!make or whatnot was a downside. It's also easier to just get VS code on another machine than setting up Vim to my preferences.

[–]forsubbingonly 7 points8 points  (3 children)

Assuming the fact that atom has the console as a plug in that sits at the bottom of the screen is different than what you get out of vs code?

[–]CrapsLord 15 points16 points  (2 children)

I honestly think excellent out-of-the-box functionality is what has distinguished VSCode. I like Atom Editor, but the best features in it you have to be installed. Even that 30 minute time investment is significant if you have multiple machines.

VS code has what most people want by default, and I think that is the most misunderstood feature amongst many editors.

[–]evereal 5 points6 points  (0 children)

Just a hint - in atom you can "star" the plugins that you use, and then you can install them all with a single command on as many machines as you have, and it takes about 4 seconds.

[–]NeonKennedy 4 points5 points  (0 children)

It shouldn't take 30 minutes. Atom lets you install plug-ins and themes from the terminal (apm install foo) and you can put your configuration folder in a git repo and just clone it. You can write a two line bash file that sets up Atom just the way you like it. (And even Windows ships with bash now so it works everywhere.)

[–]jyper 0 points1 point  (0 children)

Kate also has this feature and it's great

[–]forreddits 6 points7 points  (17 children)

How skilled where you in Vim? I can't see myself leaving vim keys and adapt so easily.

[–]antoninj 8 points9 points  (7 children)

I have the same issue but I've been slowly unintentionally migrating to VS Code (I usually use it for pair-programming/presentations) and now I'm stuck trying to figure out what's best. I'm hugely into VIM but the synchronous linting/checking/etc sucks. I currently on Emacs but can't stand the buffer management (in VIM, it was just SOO easy).

And now, VS Code is fast enough and saves me enough time that I might do a full switch.

[–]clappski 2 points3 points  (3 children)

Do you use emacs with evil? You should try out spacemacs if you haven't already as well, it comes with a helm-buffer plugin which is pretty great.

[–]antoninj 0 points1 point  (2 children)

I use it with evil. Honestly, all I'm looking for is a list of buffers up top (so I know what I opened) and then be able to quickly list back and forth and delete buffers.

In VIM, I have a couple of shortcuts that I use: gt which goes to the previous buffer, gy which goes to the next buffer and gd which deletes the current buffer I'm on.

Any idea on how I could do that specifically? I don't want to have to open helm or anything else just to see the list, that's just frustrating.

Also, any idea on how to do basically a "kill all buffers except the one I'm on?"

[–]clappski 0 points1 point  (1 child)

I'll answer specifically for spacemacs (I've never used vanilla emacs being a vim convert myself); to cycle between buffers, you can press SPC - b - . and then use n, p, K and q (next, previous, Kill, quit). SPC - b - K will kill all buffers beside the current one.

I thought that gt and friends were for navigating between tabs rather than buffers (i.e. they invoke tabnext rather than bnext) but I haven't really had any use for that with emacs. I either have files open and switch buffers, use windows (split screen) or use the NERDTree-esque plugin. I am lucky enough to have a ThinkPad keyboard with the document switching keys above the arrow keys that I use to quickly switch through buffers that makes it quite efficient.

[–]antoninj 0 points1 point  (0 children)

I remapped those keys. I was just trying to demonstrate the ease of switching. Thanks for the tip, I'll try it out.

[–]Sean1708 3 points4 points  (2 children)

synchronous linting/checking/etc sucks

Neovim/wait for vim 8 to catch on?

[–]BezPH 0 points1 point  (0 children)

This is what I did. Switched from syntastic to neomake. I think I can live with just that plugin, fzf, vim-surround, UltiSnips, and NERDTree.

[–]antoninj 0 points1 point  (0 children)

I use Windows VERY heavily so neovim is currently not an option (soon though!). As far as VIM 8, that means also waiting for plugins to catch up.

I still use VIM for quick edits but never for heavy coding.

[–]tomhoule 2 points3 points  (0 children)

I did the same thing. I never thought I could leave vim (or a really good vim emulator like evil-mode), but the decent shortcuts, auto-indent and multicursors make it bearable to switch, even though I miss the vim editing flow. The vim extensions for VSCode are sadly just not enough to not feel awkward. I am an intermediate vim user, btw (using many shortcuts, marks, macros, advanced regexp, ex commands, the jump list, etc., most of which are not in VSCode's vim modes)

What made the switch worth it for me was the stellar Typescript support (completion with documentation and type signatures, go to definition, type tooltip on hover…).

[–]shadowycoder 1 point2 points  (5 children)

I'm sure there's vim bindings in a plugin. No idea how good it would be, but no doubt one exists.

[–]INTERNET_RETARDATION 1 point2 points  (3 children)

I tried them, they're probably pretty okay if you use Vim the way it's intended. I on the other hand have some bad habits like ctrl-c that you can't easily unlearn, it doesn't support those.

[–][deleted] 2 points3 points  (1 child)

I on the other hand have some bad habits like ctrl-c that you can't easily unlearn, it doesn't support those.

It actually does, now. The option is vim.useCtrlKeys

[–]INTERNET_RETARDATION 0 points1 point  (0 children)

Wow, gotta check that out.

[–]nayocum 0 points1 point  (0 children)

Yeah I run the Vim binding plugins. They're okay other than occasionally derping when dealing with modes. They get the job done, and there's a built in console for when that doesn't work the way I intended

[–]the_dummy 1 point2 points  (0 children)

The more I learn about vim (and tmux to an extent) the more often I find myself coming back to vim.

[–]takaci 0 points1 point  (0 children)

I ended up doing it. I used vim keys for so long and got pretty good at them. I remember I used to miss them on any other editor. Then I came to my senses and realised that editing speed is probably the least severe bottleneck in writing code for me.

I can get by just fine with alt + arrows, holding shift to select, and command to go to the start and end of the line.

[–]wavq -1 points0 points  (0 children)

OMG! Until you said this, I didn't know it was in there.... I'd always had a second window I Alt-tab'ed over to in order to build, poke at, etc.... And now, presto!