Python Language Server for the Language Server Protocol
Project description
Python Language Server
A Python 2.7 and 3.4+ implementation of the Language Server Protocol.
Feature Providers
- Jedi for Completions, Definitions, Hover, References, Signature Help, and Symbols
- Pyflakes linter to detect various errors
- McCabe linter for complexity checking
- pycodestyle linter for style checking
- pydocstyle linter for docstring style checking
- YAPF for code formatting
3rd Party Plugins
Installing these plugins will add extra functionality to the language server:
- pyls-mypy Mypy type checking for Python 3
Language Server Features
Auto Completion:
Code Linting with pycodestyle and pyflakes:
Signature Help:
Go to definition:
Hover:
Find References:
Document Symbols:
Document Formatting:
Installation
pip install python-language-server
Development
To run the test suite:
pip install .[test] && tox
Develop against VS Code
The Python language server can be developed against a local instance of Visual Studio Code.
- Install VSCode for Mac
- From within VSCode View -> Command Palette, then type shell and run install 'code' command in PATH
# Setup a virtual env virtualenv env . env/bin/activate # Install pyls pip install . # Install the vscode-client extension cd vscode-client npm install . # Run VSCode which is configured to use pyls # See the bottom of vscode-client/src/extension.ts for info npm run vscode -- $PWD/../
Then to debug, click View -> Output and in the dropdown will be pyls. To refresh VSCode, press Cmd + r
License
This project is made available under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size python-language-server-0.9.0.tar.gz (41.7 kB) | File type Source | Python version None | Upload date | Hashes View |
Hashes for python-language-server-0.9.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 866b752df933f93c6e60cf3cb5d12bfba24b13990a427c71f8baa12e92aade1f |
|
MD5 | f7fdc85e58123f7492a9dc4575074c08 |
|
BLAKE2-256 | b23154b892e37d5feccb770a0936fe35ea9da70aeeea398d6c14622c8b4347a8 |