108 ms·
Regarding programming languages, the answer is the language server protocol (LSP), an editor-agnostic way to use IDE-like features, originally developed for VSC
by davidkunz 5y ago
Regarding programming languages, the answer is the language server protocol (LSP), an editor-agnostic way to use IDE-like features, originally developed for VSCode. Works for both Neovim and VSCode (and many others). Somewhat ironic that one of VSCode's best inventions is the one which made me switch away from it.
- qudat 5y agoI just switched from 0.4 to 0.5 specifically for LSP and treesitter support. There is zero difference between it and vscode for me now. Neovim 0.5 is a game changer and closes the gap between it and vscode.
- robryan 5y agoYeah LSP also makes Sublime viable going forward where it otherwise probably would have fallen behind.
- malloryerik 5y agoI saw it as Microsoft's signalling that they care more about being in the good graces of the wider developer community than about dominating the programming editor/IDE market. After all VSCode is free. I'd argue that giving away VSCode, LSP, Monaco (the base editor) and so on has been a successful means of redeeming their brand in the eyes of developers and really anyone who ever touches code. That could backfire if they took on an aggressively competitive stance. Letting LSP play nicely with other editors seems therefore good business for them. It also appears that as a profitable business, money Microsoft spends on VSCode might otherwise be spent as taxes?
- draebek 5y agoEmbrace, extend, extinguish They've done it before and they'll do it again. LSP for MS and VS Code is "come, make our proprietary editor more valuable by supporting languages we can't be arsed to worry about!" https://github.com/microsoft/pylance-release/issues/4 https://github.com/microsoft/pylance-release/issues/4 (I am an enthusiastic advocate for LSP otherwise.)
- malloryerik 5y ago> Embrace, extend, extinguish. They've done it before and they'll do it again. Truly a valid concern.
- reader_mode 5y agoIf I am up to date TypeScript doesn't actually provide LSP and the 3rd party implementation is a wrapper around TS language server custom protocol and is worse in comparison. (They have/had plans to change this but it's been years since I saw the issue raised and not much progress from what I saw, haven't checked in last couple of months since I'm no longer in TS space) IMO TypeScript is VSCode strongest use case - I would use VS code over VisualStudio for example on C# projects when I had to edit fronted parts - it was so much better. IntelliJ TS stuff is the only thing that comes close/is on par maybe and I'm a happy camper in that ecosystem for the last few years. None of the LSP plugins I've tried with neovim worked nearly as well as they do in VSCode (the few times I tried to spin it up for old times sake).