Linter plugin for pylsp based using ruff.
Formatting via ruff's --fix is available since v1.3.0.
In the same virtualenv as python-lsp-server:
pip install python-lsp-ruffThere also exists an AUR package.
This plugin will disable flake8, pycodestyle, pyflakes and mccabe by default.
When enabled, all linting diagnostics will be provided by ruff.
Configuration options can be passed to the python-language-server. If a pyproject.toml
file is present in the project, python-lsp-ruff will use these configuration options.
Note that any configuration options (except for extendIgnore and extendSelect, see
this issue) passed to ruff via
pylsp are ignored if the project has a pyproject.toml.
The plugin follows python-lsp-server's configuration. These are the valid configuration keys:
pylsp.plugins.ruff.enabled: boolean to enable/disable the plugin.trueby default.pylsp.plugins.ruff.config: Path to optionalpyproject.tomlfile.pylsp.plugins.ruff.exclude: Exclude files from being checked byruff.pylsp.plugins.ruff.executable: Path to theruffexecutable. Assumed to be in PATH by default.pylsp.plugins.ruff.ignore: Error codes to ignore.pylsp.plugins.ruff.extendIgnore: Same as ignore, but append to existing ignores.pylsp.plugins.ruff.lineLength: Set the line-length for length checks.pylsp.plugins.ruff.perFileIgnores: File-specific error codes to be ignored.pylsp.plugins.ruff.select: List of error codes to enable.pylsp.plugins.ruff.extendSelect: Same as select, but append to existing error codes.
For more information on the configuration visit Ruff's homepage.