3 ms·
PyCharm is an open-core editor. The FOSS edition is a second-class citizen. I make a point not to run any proprietary software on my machine besides occasional
by Seirdy 6y ago
PyCharm is an open-core editor. The FOSS edition is a second-class citizen. I make a
point not to run any proprietary software on my machine besides occasional
whitelisted JS, firmware, and patent-encumbered media codecs (which still have free
implementations).
Neovim's master branch has a built-in Language Server Protocol client and Treesitter
implementation, both of which have pre-made configs for Python development. Jumping
between symbols, viewing floating documentation/signatures/git-blame, asynchronous
completion, diagnostics, etc. are all readily available with a fraction of the
battery/CPU/memory usage on a fully-FOSS platform that works on even more platforms
(BSD, over SSH, etc). Jumping between symbols and listing usage of an object in a
project with hundreds of files has never been faster. All this starts up in
milliseconds. Being able to use an editor advanced enoguh for a large project but
lightweight enough to launch with a keybind just to write the HN comment is amazing.
Here are some screenshots of the LSP and treesitter in action:
Floating documentation and diagnostics: https://i.imgur.com/0TYi5en.png https://i.imgur.com/0TYi5en.png
A small taste of Treesitter's highlighting + navigation features:
https://i.imgur.com/wrSpJ2X.png https://i.imgur.com/wrSpJ2X.png
Completion from the nvim-lsp source: https://i.imgur.com/CzAAJuC.png https://i.imgur.com/CzAAJuC.png
Neovim also has FZF integration to fuzzy-search thousands of symbols, files,
reference, etc. Since it's the same FZF that I use everywhere else underneath, the
interface is quite familiar.
TLDR: Neovim is a lightweight text editor that integrates with external tools to
transform itself into an IDE.