Python-Nova.novaextension
Python-Nova.novaextension copied to clipboard
Python Extension for Panic's Nova editor for macOS
Python for Nova
Full featured Python Language Server plugin (implements PyLS) for Nova, supports Jedi Autocomplete, PyFlakes, PyLint, YAPF, Rope, McCabe, PyDoc and CodeStyles.
Also supports all the Python Language Server plugins → mypy
, isort
and black
Working Features
- [x] Auto-completion (including snippet fills-- Turn on
Include Function and Class Parameters
, Fixed in Nova 2.0) - [x] Follow imports (Fixed in Nova 2.0)
- [x] Full Function hover tooltips with syntax highlighting
- [x] Module and function docstrings
- [x] PyDocStyle and PyCodeStyle flags
- [x] McCabe Cyclomatic Complexity
- [x] Automatic Preferences Reload on changes (Some preferences still need a full extension reload).
Installation
- Install the LSP server and its dependencies using:
pip3 install 'python-lsp-server[all]'
-
Enable required modules from settings.
-
(Optional) Install Python Language Server plugins and enable them from settings:
-
mypy
plugin:pip3 install pyls-mypy
-
isort
plugin:pip3 install pyls-isort
-
black
plugin:pip3 install pyls-black
Features
- Real time Linting (Pyflakes):
- Hover actions on Functions and Modules:
- PyCodeStyle and PyDocStyle hints:
- Autocomplete using Jedi:
Contributing
I would be extremely grateful if you could lend a hand in the development of this extension. PRs with new features and fixes would be greatly appreciated. Also, feel free to open bug reports.