VSCode Insiders 2017 Review - Coming from Emacs
1 April, 2017
How I set up VSCode
- I hit C-S-p, selected color theme and chose Solarized Dark
C-,
, opened settings where I set the font Hasklig, and enabled font ligatures.- Installed extensions relevant for the programming modes I use.
Things I immediately miss from Emacs:
- dired
- the minibuffer, e.g. open a file from minibuffer.
Customization
Coming from Emacs, I have the notion that mostly anything that can be thought up can ultimately be customized (via Emacs-Lisp)1,
Things I sort of miss from Emacs
- org-mode - Always having your note taking tool available (e.g. org-capture).
Things I like about VSCode
- Built in Zen mode. I like keeping my screen clear from everything but the text sometimes.
- Section folding built in.
- The settings configuration mode. It's quite minimal and smart. Focus in on creating a distributable text file for settings.
- Markdown preview built in.
Things I strongly dislike about VSCode
- The hard blue color of the status bar can not be themed as of writing, I read this is about to soon be changed though.
Working in Haskell
- Working in the programming language Haskell with some extensions, depending on Intero seems to work fine. Terminal integration is nice and auto completion in GHCi does work.
Performance
- In comparison to Atom editor (or LightTable), VSCode launches much faster and seems to perform a lot better. I am surprised that a program based on Electron can perform this well.
What you're giving up when moving from Emacs to VSCode
- Using the mouse. Emacs doesn't need one. VSCode will sometimes need mouse interaction. This can impact workflow.
What's to be gained from using VScode over Emacs
- Fonts may look better.
- Performance may be more reliable.
Conclusion,
- I'm seriously impressed by how mature of an editor VSCode is. I really think they should replace the default "open file" panes with something better (compare Emacs minibuffer, ido and such). I had tried Atom and managed to customize it to a functioning state, but really slow startup times and performance reliability made that editor feel bloated and unacceptably slow and I went back to GNU Emacs.
- The performance characteristics of GNU Emacs running on Windows are however quite poor in my experience and I even looked at minimal retro editors such as micro-emacs to always have a fast reliable text editor which always start up in under a second. MicroEmacs achieve that but the downsides are many - apart from all the possible functionality one gives up, making text look decent can be very hard, near impossible. Perhaps running a microEmacs in a good terminal emulator is a smart choice, but if you're on Windows for whatever reason, there really isn't a good terminal emulator available.
Update, April 1st, 2017:
- For quickly opening files, there are extensions such as:
- Hive Opener
- Quick Open (I just bind this to
C-o
keyboard shortcut.) - See [https://github.com/rainbyte/haskell-ide-chart](this helpful chart) for an overview of the level of Haskell support in various editors..
Update, April 2nd, 2017:
- The [https://github.com/Microsoft/vscode/issues/1884#issuecomment-290940262](status bar color can now be themed)! VSCode looks really good now.
- Of course, the limitation of emacs-lisp are there. Some things in Emacs are after all decided in compiled C code. ↩