Microsoft has just released a new IDE that works on Mac, Linux and Windows; It’s called Visual Studio Code. It doesn’t handle Windows Forms, or WPF but it does do ASP.NET and Node.js. (It’s also labeled as Preview, so I suspect there might be more to come.) The Node.js support is very good and has quickly become my favorite editor on Mac for my Node code.
The editor was built keyboard first, which is beautiful. Everything is available via the keyboard. All the commands are customizable via a keybindings.json file which makes it very easy to send to another machine and instantly update your settings.
For anyone familiar with Visual Studio the editor should feel familiar. It has inteli-sense and a great debugger as you would expect from Visual Studio.
When installing on windows it also adds some shell integrations. If you right-click on a file that is supported it will have an “Open in Code” link. If your in the command prompt in windows you can type “code .” and it will open code and load the folder as your project.
This is a very light editor, opens quick and doesn’t add a ton of “stuff” to your project. You can select a folder and it will be added as if it were a solution in Visual Studio!
There is GIT integration which works good, but still feels a bit clunky.
My only major gripe is that while it allows showing multiple windows in it’s frame (see above screenshot) it does NOT let you drag one out to put it on a different monitor. With multiple monitor setups being the norm this seems like a rather large omission to me. (please correct me in the comments below if I’ve missed how to do this.)
Comparing Visual Studio’s node.js tools vs Visual Studio Code I did notice a few differences: primarily in the color coding in the IDE. While both support reading Jade files, Node.js Tools for Visual Studio had some issues in color coding where the colors were not always consistent. Code didn’t have this problem. On the inverse, Node.js Tools for Visual Studio colors “.script” tags in jade files where as Code displays the content of a “.script” tag as the default color without color coding support. (it is a preview build after all, so hopefully this is fixed.)
If your an ASP.NET programmer I would check it out, if your a Node.js programmer I would definately have a good hard look at this.