I have been quiet about this until now, and this will probably go against some grain here, but here is a question:
If emacs is so much more extensible, why is there so much better language support for mainstream languages in VSCode?
I couldn't find support for Angular with Typescript. Java support isn't anywhere near the big three (Netbeans, Eclipse and IntelliJ) and even the newcomer VSCode has decent Java support these days.
You'd think that the most extensible IDE with the smartest users should have support for most stuff one needs on a day to day basis?
> If emacs is so much more extensible, why is there so much better language support for mainstream languages in VSCode?
Writing language support like refactoring and stuff is a huge task, and emacs has a handful of volunteer maintainers, unlike the other tools you mention which have corporate backing behind them with programmers paid to add such support. So emacs could have the same level of support if companies would pay teams for years to develop such features.
But we have language servers now, because it became obvious there is no need to reimplement such support for every editor separately when a server can answer these requests.
Microsoft created LSP for Vscode, but it can be used by any other editor, and emacs too has language server support. I haven't tried it yet, but with LSP it can support the same language features as vscode.
I triedVS Code and found it to be not as enjoyable as emacs. Sure, it makes some things easier, but emacs is light years ahead in functionality. I think most of the shortcomings could be addressed with a couple of projects.
Because it doesn't feel like an extension, so it doesn't feel serious.
There's also a difference between knowing emacs and knowing emacs. One can use it proficiently for years and still be completely taken by surprise when starting up unassuming ielm and slowly realising you have the complete superbly documented system at your fingertips, followed--indeed--by wondering why not everything that needs a (text)interface is written in emacs.
You are quite correct, but it's not obvious from the outset.
Those who don't know Emacs can't really understand how quick it is to write extensions for emacs.
I wonder why VSCode could not replicate this simplicity instead of creating package.json files and stuff.