I would like to know what potential gains could come from using a GUI text editor.
I miss things from Emacs sometimes so I keep it around. I miss macros, I miss some of the more stellar Emacs packages (Tuareg for OCaml and Cider for Clojure in particular) but I do a lot of editing nowadays in Atom and Code.
My experience so far is that extensions on VSCode "just work", but they're scarce, and difficult to discover and install.
My experience with extensions on Atom is that they are numerous, cover a very wide variety of needs/wants, and that they frequently break when the main editor updates. I haven't been able to install/update the Omnisharp extension successfully since the npm debacle a few weeks ago.
I dabbled with Spacemacs, and it seems nice, but I couldn't work out how to migrate my existing extensive org-mode customizations without digging deep into the Spacemacs package management system.
* Intellisense - this is *incredible*, and it works out of the box with VS Code
* Git stuff is pointy-clicky integrated...this is a big time-saver for me, since I check stuff in just a few times a day, and I don't have to think at all about git commands after writing a bunch of C#. I can click my way through instead.
I'm also pretty comfortable using a mouse--i.e. I don't feel the need to keep my hands on the keyboard at all times--because, when it comes down to it, I spend a lot more time thinking than typing.
I use VS Code when I'm working in one codebase because it has a nice tree view of the files and has a pretty nice "working files" feature where you can easily switch between files you're working on (I usually have five or six files I'm working on at any given time; sometimes in Vim I'll open them all up in a terminal multiplexer and switch between them, but that can end up frying my brain). Seeing the tree structure just helps me visualize the codebase better. VS Code also has a really nice search feature that searches through every file in the folder you have open (I could just grep but it's convenient to click on a result and go straight to the line in that file)
Git integration in VS Code is pretty sweet as well; it has a really nice diff viewer built-in and it's easy enough to add and commit changes (I still use the git cli for branching, rebasing, etc.)
I use Vim whenever I'm in a terminal to edit various files here and there. I feel a little faster in Vim when working on one file, and I do like a lot of the shortcuts/commands a lot better in Vim. Vim also has much better find/replace with regex, and it's a lot easier to extend Vim.
I guess what I'm trying to say is that I don't see VS Code as a full-on replacement for Vim, but a different tool that I use in a different way.
I use byobu as a multiplexer, and I just like it's shortcuts for switching between terminals and tiling etc better than vim's tab shortcuts.
- Having the full type info for every single thing in the code with simply hovering over it (not just when typing)
- Ability to "peak at definition", to get a little interspersed window with the definition of functions etc,
embedded right into your editor.
- Out-of-the box file tree with single click opening, and window management (I use a lot of powerful vim commands, but window management just was too much for my head).
- Maybe something more I've forgot.
In general, the out-of-the box experience is so much greater than vim. I know you can replicate most of the above with a super-fancy setup, but I just don't find the time to get my head around much more than http://github.com/fatih/vim-go and a few personal .vimrc tweaks.
Now as others have mentioned, I just hope for a more feature-complete vim-mode in VSCode.
What I'm really looking for is something like Atom's Neovim Mode , allowing me to use Atom's flexible UI (hey there, CSS) with vim's modal editor, wealth of plugins, and my config (keybindings, etc...).
It might be nice editor, but it hide to much information for my taste. "You need to setup a launch.json file", well fine, but at least be a little more helpful than that, don't just open an empty file. Starting the debugger either crashed the editor or do nothing, but never informs me as to what the issue might be.
At this point Vim and shell is easier to get started with.
Why not both? I use Emacs+evil. I use VS+VsVim. I don't understand why this isn't the preferred mode for everyone? Pick the best environment/shell/whatever, then make sure it uses vim for actual text editing. Problem solved.