Python language support for Atom-IDE, powered by the Python language server.
ide-python
requires Atom 1.21+
, Python language server 0.17+](https://github.com/palantir/python-language-server) and the [
atom-ide-ui` package to expose the functionality within Atom.
- Jedi for Completions, Definitions, Hover, References, Signature Help, and Symbols
- Rope for Completions and renaming
- Pyflakes linter to detect various errors
- McCabe linter for complexity checking
- pycodestyle linter for style checking
- pydocstyle linter for docstring style checking
- autopep8 for code formatting (preferred over YAPF)
- YAPF for code formatting
Install the language server (we recommend version 0.17.0 or newer) with:
pip install 'python-language-server[all]'
This command will install the language server and all supported feature providers, which can be enabled or disabled in the settings. Checkout the official installation instructions on how to install only the providers you need.
Verify that everything is correctly installed and pyls
is on your PATH
by running pyls --help
from the command line.
It should return
usage: pyls [-h] [--tcp] [--host HOST] [--port PORT]
[--log-config LOG_CONFIG | --log-file LOG_FILE] [-v]
Python Language Server
...
Depending on your Python setup pyls
may be installed in a non default folder. In this case either add the directory to your PATH
or edit the "Python Language Server Path" setting of ide-python
to point to the pyls
executable.
Install ide-python
and atom-ide-ui
from Install in Atom's settings or run:
apm install atom-ide-ui
apm install ide-python
Configuration is loaded from zero or more configuration sources.
pycodestyle
: discovered in~/.config/pycodestyle
,setup.cfg
,tox.ini
andpycodestyle.cfg
flake8
: discovered in~/.config/flake8
,setup.cfg
,tox.ini
andflake8.cfg
Overall configuration is computed first from user configuration (in home directory), overridden by configuration in the ide-python
settings, and then overridden by configuration discovered in the current project.
Always feel free to help out! Whether it's filing bugs and feature requests or working on some of the open issues, Atom's guide for contributing to packages will help get you started.
MIT License. See the license for more details.