38 comments

[ 2.0 ms ] story [ 114 ms ] thread
At this point I am 100% sure, VS code will become a IDE like Visual Studio.
Is that bad? As long as it remains fast and easy to use, I am happy!
If they ever add a visual editor that could be true. Still tons of thing Visual Studio does that VS Code doesn't.
Like what? Never used Visual Studio.
A lot of debugging and profiling features.
I think the key is that it has the potential to be a great platform.

The text-editing "fundamentals" are covered by the Monaco engine. The rest is covered by extensions.

Out of the box, it's not much more than a glorified Notepad. Add some extensions and suddenly I'm stepping through my Rust breakpoints and inspecting values.

The language server protocol (LSP) is a massive leap forward. And unlike the Microsoft of Ballmer, LSP is an open standard that any editor designer can implement.
Is there any reason to use LSP, rather than simple JSON messages passed between the front-end and back-end? That's the approach that Xi uses.

https://github.com/xi-editor/xi-editor

What makes you say Xi's protocol is simpler just because the messages are encoded with JSON?
Because LSP is a widely used protocol for language tooling that's not coupled to any particular editor.

I'm surprised xi didn't just add an LSP client to leverage the existing ecosystem. The benefits of in-house language server implementations seem marginal at best.

> Is there any reason to use LSP, rather than simple JSON messages passed between the front-end and back-end

Yes, there's a reason to use a documented open standard supported by multiple servers and clients that passes JSON back and forth rather than an ad hoc, client specific mechanism that also passes JSON back and forth.

In fact, the reason is exactly the problem LSP addresses, labeled as “The Matrix” at https://langserver.org

In short, a problem with N+M cost is better than N×M when both N and M are >2.

LSP also uses JSON messages.
For many languages it's pretty much there, if you install the right extensions. Sometimes, yeah, excessively so.

But then you uninstall that extension and it's a nice, reasonably lightweight editor again.

I thing it's already more an IDE than a plain editor. There is not even a normal file-explorer anymore, just an workspace-explorer. Using VS Code for regular editor-stuff is kinda painful IMHO.
VS Code always has such wonderful release notes. I don't think I use 10% of the features mentioned, but I love reading about them and learning about them in these notes anyway.
Not reloading when adding an extension is a long-overdue feature, in my opinion. What were the technical reasons for needed to reload?
It's easier to write correct code when you know certain state changes always entail a full reload. Extension installs are rare enough and VSCode reloads quick enough that the tradeoff seems sensible.

This change introduces a new "extensions changed" event that extension points must (correctly) implement, so the cost is more code i.e. more opportunity for bugs. The essential question is of course, how much more, and I have no answer to that.

This allows you to create a VS Code terminal panel, which occupies the complete editor area as shown below:

Emphasis on: which occupies the complete editor area as shown below:

So finally windows has a decent terminal emulator, will install vscode just for this next time I'm on windows.

It's using xterm.js which has limitations on windows, for example PowerShell/cmd.exe will report mouse movement and I have not been able to get xterm.js based terminal emulators (vs code, hyper) to do the same.
It’s still from a UI/UX perspective needlessly complicated. I wish they would make things a bit more obvious.
As a Linux user, MS Code is one of my favorite MS products.
As a Windows user VS Code is my favourite MS product
Can someone recommend a good tutorial on getting started with VSCode? I downloaded it and it feels overwhelming to develop C/C++ code compared to Sublime Text. ST has simple build system (just path to compiler) and it runs out of the box. With VSCode, there are extensions and .json files for configuration and it is all extremely complex and overwhelming.
I tried VS Code early on and decided I'd give it a serious shot when I could modify the color scheme without having to go through a whole page of notes, download and install something like 3 other programs and practically learn a whole new language.

Is that possible yet? In other words, is there an actual GUI for configuring color, or at least a config file that's not some cryptic format for a program I've never used?

I know I'm probably exaggerating quite a bit, but I literally couldn't figure out how to do it after wasting a fair bit of time and gave up.

I was raised in the era of "programmer editors" like Brief and Multi-edit (the latter of which I still use) and those were always extremely easy to configure and enhance without having to use a bunch of external tools.

???

The article is for microsoft/vscode.

Your links are for dotnet/cli.

It's Microsoft telemetry in an open source project that doesn't respect the setting set by the user. The lack of a reply as to why should probably set off some alarms for the average tech user when it comes to any project with Microsoft telemetry in it.
Vscode is great, but it's a pitty they are running it on electron. 1.3GB of RAM usage for a 8GB machine is not efficient at all.

I switched to sublime3 because of this, sublime is great, really fast, only uses 300mb of RAM, unfortunately the packages and plugins aren't as streamlined as vscode. Hoping they improve this.

I think this is only a problem when working unplugged. I have visual studio code sitting idle all the time and it really doesn't seem to slow down my system. It generally only uses about 500MB of RAM with two windows open with multiple tabs on each. I have 16GB of RAM but thats not much compared to today's standards.

Sublime text using 300mb of RAM is a little odd. Generally in my case, its uses around 20-25MB with 50+ tabs opened.

Yeah, you are right. Sublime uses about 30MB for me after testing