Sublime Forum

Visual Studio Code

#1

New cross-platform text editor from MS.
arstechnica.com/information-tech … o-2015-rc/

code.visualstudio.com/Download

Some cool stuff:

  • cmd+comma opens both the default preferences and the user preferences, side-by-side, so that you can copy prefs from one to the other. This is amazing. Can we get this?

  • Remember how go to anything integrated a couple different popover menus? This thing has the command palette and go to anything all in one. You can pop up the menu, then type ? and it’ll say something like “type @ for symbols, : for line numbers, > for commands, ! for errors and warnings (!!) etc”.

No multiple cursors, though. What’s that all about? It’s all Sublime-y but no multiple cursors (not even block selections as far as I can tell).

0 Likes

#2

This could probably be done with a plugin. Sounds useful.

This also sounds neat. A unified palette would be neat. I hate Visual Studio, but those are some pretty niffty ideas. MS is slowly starting to make some better decisions.

0 Likes

#3

Yeah, I think Satya Nadella might know what he’s doing. I’m interested to see them over the next couple of years. Did you also see this?
arstechnica.com/information-tech … indows-10/

0 Likes

#4

No, not yet, I’ve been behind in my news feed today, but that is also interested. It’s refreshing to see MS taking a new approach.

0 Likes

#5

It’s essentially Atom’s core.

0 Likes

#6

Another born death then.

It has, ALT+CLICK

What’s wrong with editor developers they can’t create a good sidebar/file tree >.<

0 Likes

#7

Oh, I thought they were doing something more unique.

0 Likes

#8

[quote=“facelessuser”]

Oh, I thought they were doing something more unique.[/quote]

Nope VS Code, is literally a forked version of Atom.

0 Likes

#9

I just installed Code and Atom to see if how long it took to open a blank page, because the last time i tried Atom, it took forever.

Atom takes about 3 seconds, Code about 2 seconds, and Subl is almost instantaneous.

EDIT: in my twitter feeds:

FYI @code != Atom but the VS online editor Monaco wrapped in the same node/chromium xplatform skeleton (electron) as atom + omnisharp for C#

EDIT2: a good blogpost about Code:
hanselman.com/blog/Introduci … Linux.aspx

0 Likes

#10

[quote=“dubeg_01”]I just installed Code and Atom to see if how long it took to open a blank page, because the last time i tried Atom, it took forever.

Atom takes about 3 seconds, Code about 2 seconds, and Subl is almost instantaneous.

EDIT: in my twitter feeds:

FYI @code != Atom but the VS online editor Monaco wrapped in the same node/chromium xplatform skeleton (electron) as atom + omnisharp for C#

EDIT2: a good blogpost about Code:
hanselman.com/blog/Introduci … Linux.aspx[/quote]

Several have reported going through the plists and finding the Atom bits, with code using Electron as its base. Its far more likely they forked Atom and did their mucking about from the Monaco editor.

“Code\app-0.1.0\resources\atom.asar” Not atom?

0 Likes

#11

hm.

They didnt forked atom per se, they forked atom’ shell. Which handles automatic updates, native menus/notifs, installer, etc. So the editor part of the program is completely different (Monako), which is based on the vs online editor.

Is it what you were saying? Am I interpreting your post incorrectly?

0 Likes

#12

Yes, dubeg_01 is correct, it’s not a fork of Atom. They’ve used Electron as the cross-platform shell. Electron was previously called Atom Shell, mentions Atom in its codebase and is what Atom is built on top of, but it’s no more Atom than Basecamp is Rails. From the Electron Github page:

“The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on io.js and Chromium and is used in the Atom editor.”

So VSC does use Electron at its core, but is actually using Monaco as it’s editor, not Atom. It also uses Squirrel for handling updates and Omnisharp for Intellisense. There’s a little more detail here:

blogs.msdn.com/b/somasegar/archi … d-mac.aspx

Perhaps of most interest to Sublime users is the use of Omnisharp:

“Visual Studio Code builds on top of a tools service architecture to enable rich code analysis support for C# and TypeScript. Based on technology from the OmniSharp and TypeScript Server projects, the language services of Visual Studio Code are available as open source projects and offering integration into a wide range of alternate editors – including Sublime Text, Vim and Atom.”

So it’s good that Microsoft is working on this as it is pouring resources into open source cross-platform projects that anyone, including Sublime, can leverage.

I’ve been using VSC for a few hours now and I really like it. It takes a lot of what makes Sublime great (actually, it steals pretty blatantly), but also what makes the full VS great (i.e., really good intellisense for the languages it supports) and brings the two together with a great deal of grace, style and polish. It’s sort of halfway between editor and IDE. Closer to Brackets in many ways, with a dollop of WebStorm thrown it. It feels really snappy (unlike Brackets and Atom), looks beautiful (unlike Sublime, which looks quite rough these days on my HiDPI Windows laptop - WHY don’t we have “Retina” themes enabled for Windows yet!?), and has a really, really nice out-of-the-box experience (unlike Sublime) if you do web dev.

Overall, I’m very impressed. There’s still a way to go before I would give up Sublime, though. Microsoft would have to get the extensibility API just right and provide a heap of support to developers. They need to keep iterating fast and communicate lots (like Brackets). And I think, but I may be wrong here, that there is an expectation they open source it. Given so many of the component parts are OSS, I wonder if MS feels it has gone far enough? I am guessed there’s a battle going on in Microsoft between the new guard OSS advocates and the old guard proprietary crew. Or maybe the code in Monaco just isn’t ready to be open sourced just yet? Don’t know, but either way - interesting times.

0 Likes

#13

[quote=“charlesroper”]Yes, dubeg_01 is correct, it’s not a fork of Atom. They’ve used Electron as the cross-platform shell. Electron was previously called Atom Shell, mentions Atom in its codebase and is what Atom is built on top of, but it’s no more Atom than Basecamp is Rails. From the Electron Github page:

“The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on io.js and Chromium and is used in the Atom editor.”

So VSC does use Electron at its core, but is actually using Monaco as it’s editor, not Atom. It also uses Squirrel for handling updates and Omnisharp for Intellisense. There’s a little more detail here:

blogs.msdn.com/b/somasegar/archi … d-mac.aspx

Perhaps of most interest to Sublime users is the use of Omnisharp:

“Visual Studio Code builds on top of a tools service architecture to enable rich code analysis support for C# and TypeScript. Based on technology from the OmniSharp and TypeScript Server projects, the language services of Visual Studio Code are available as open source projects and offering integration into a wide range of alternate editors – including Sublime Text, Vim and Atom.”

So it’s good that Microsoft is working on this as it is pouring resources into open source cross-platform projects that anyone, including Sublime, can leverage.

I’ve been using VSC for a few hours now and I really like it. It takes a lot of what makes Sublime great (actually, it steals pretty blatantly), but also what makes the full VS great (i.e., really good intellisense for the languages it supports) and brings the two together with a great deal of grace, style and polish. It’s sort of halfway between editor and IDE. Closer to Brackets in many ways, with a dollop of WebStorm thrown it. It feels really snappy (unlike Brackets and Atom), looks beautiful (unlike Sublime, which looks quite rough these days on my HiDPI Windows laptop - WHY don’t we have “Retina” themes enabled for Windows yet!?), and has a really, really nice out-of-the-box experience (unlike Sublime) if you do web dev.

Overall, I’m very impressed. There’s still a way to go before I would give up Sublime, though. Microsoft would have to get the extensibility API just right and provide a heap of support to developers. They need to keep iterating fast and communicate lots (like Brackets). And I think, but I may be wrong here, that there is an expectation they open source it. Given so many of the component parts are OSS, I wonder if MS feels it has gone far enough? I am guessed there’s a battle going on in Microsoft between the new guard OSS advocates and the old guard proprietary crew. Or maybe the code in Monaco just isn’t ready to be open sourced just yet? Don’t know, but either way - interesting times.[/quote]

So all Electron based programs using the “atom shell” are going to be called atom.exe too? http://i.imgur.com/Ux4TPQp.png

0 Likes

#14

Electron is Atom Shell. They renamed it I guess to distance it from the Atom Editor. The reason you’re seeing that atom.exe there is because renaming it breaks some of the Node dependencies: github.com/atom/electron/issues/713

0 Likes

#15

Deep dive into Code has been out for a few days, for the interested: channel9.msdn.com/Events/Build/2015/3-680

0 Likes

#16

One thing I find interesting and hope we can get in sublime is the sub-category of symbol (plus the little icon to differentiate them is great): not only it would help navigate inside file, but also improve what we can do in plugins in terms of auto-completion or tool-tip.

Also the context edition / peek is really cool.

0 Likes

#17

I find it interesting that Microsoft noticed that programmers could need more than Notepad and less than a full-blown IDE. Late to the party.

0 Likes

#18

I’ve written a simple plugin to do this. It’s simple, and I hope to improve things over time, but it’s a place to start. Here’s the URL on Package Control: SxS (Side-by-Side) Settings.

0 Likes

#19

This plugin is great! Thanks :smile:
I use:

{ "keys": "super+,"], "command": "sxs_settings" }, { "keys": "super+shift+,"], "command": "sxs_key_bindings" },

0 Likes

#20

[quote=“jgbishop”]

I’ve written a simple plugin to do this. It’s simple, and I hope to improve things over time, but it’s a place to start. Here’s the URL on Package Control: SxS (Side-by-Side) Settings.[/quote]

The actual URL is packagecontrol.io/packages/Side … 20Settings

0 Likes