Python & Emacs, Take 3.
At this point I use Eglot and lsp-mode pretty interchangeably. I just like both of them and it’s fun to mix it up. I also continue to use pyenv for managing python versions and virtual environments and pyvenv for handling them inside of Emacs.
What has triggered writing a new post is the development of a new
Python language server: python-lsp-server (or
pylsp). The old
pyls) project is no longer
maintained. Both Eglot and lsp-mode now support
pylsp (lsp-mode PR
and Eglot commit).
pylsp, there are a number of other Python language servers
that I’ve played around with:
- jedi-language-server with lsp-jedi.
- Pyright with lsp-pyright.
- anakin-language-server with a sandbox patching of lsp-jedi.
It’s both a blessing and a curse to have all of these options!