5 ms·
I wonder how it compares to Palantir’s Python Language Server[1] that uses Jedi[2] for intellisense. [1] https://github.com/palantir/python-language-server htt
by Spiritus 8y ago
I wonder how it compares to Palantir’s Python Language Server[1] that uses Jedi[2] for intellisense.
[1] https://github.com/palantir/python-language-server https://github.com/palantir/python-language-server
[2] https://github.com/davidhalter/jedi https://github.com/davidhalter/jedi
- vetinari 8y agoMy pet peeve with Jedi is, that it doesn't support autocompletion for type libraries, that are not parsable python code. For example, anything from gi.repository (i.e. entire Gtk) is then without autocomplete. Jetbrains IDEs do support it: you have to manually generate the symbol cache for the first time, but the IDE knows your intent and maintains it for you, and for you as the user, autocomplete just works. Another thing that Jetbrains has better, is weighing the importance of symbols that are offered: Open a random Django project, try to define a model and see, where the autocomplete makes better sense.
- deleted 8y ago[deleted]
- nerdponx 8y agoThis was my question as well. Seems odd to start from scratch when this already exists. Unless the MS version is a fork of the Palantir one.
- MikhailArk 8y agoMS language server is not based on Jedi. It is based on Python Tools for Visual Studio. Core components were ported to .NET Core so it runs on all platforms. The core engine is not just for IntelliSense, it is capable of many more functions.
- purpleP 8y agoWhere can we see what it's capable of? For now it seems very incapable to me. Much worse than intellij or jedi.
- MikhailArk 8y agoPlease feel free to file issue on github if something is missing. Visual Studio has full functionality but not all of it is exposed through the LS protocol just yet. Having full cross file code model helps with many things.
- wenc 8y agoFrom what I've seen (MS folks can correct me here), language services are part of a much larger effort at Microsoft led by Anders Heijsberg (Delphi, C#) called Roslyn [1], which decouples code analysis from IDEs and provides things like refactoring, autocomplete, find-all-references, Intellisense, etc. as services. This means the compiler is now an abstracted platform that editors can get services from (CompilerAndCodeAnalysis-as-a-service?). Anders talks about the motivation for doing that here [2]. It's a pretty exciting idea. This might mean I would some day be able to use Vim and get IDE-like functionality. [1] Roslyn https://github.com/dotnet/roslyn/wiki/Roslyn-Overview https://github.com/dotnet/roslyn/wiki/Roslyn-Overview [2] https://www.youtube.com/watch?v=wSdV1M7n4gQ https://www.youtube.com/watch?v=wSdV1M7n4gQ
- MikhailArk 8y agoPython extension for VS Code provides both MS Language Server and Jedi based intellisense. Default is actually Jedi as LS is in preview.
- purpleP 8y agoI've tried it, seems to be much worse than intellij. Doesn't understand namedtuples. Doesn't infer types, doesn't check for unhandled exceptions. I'm disappointed. What's with this 'execution simulation'? They aren't better than simple ctags.