coc-pyright

    1.1.191 • Public • Published

    coc-pyright

    GitHub Sponsors Patreon donate button PayPal donate button

    Pyright extension for coc.nvim

    1

    Install

    :CocInstall coc-pyright

    Note: Pyright may not work as expected if can't detect project root correctly, check #521 and Using workspaceFolders in coc.nvim.

    Commands

    • python.runLinting: Run linting
    • python.sortImports: Sort imports by isort
    • pyright.version: Show the currently used Pyright version in :messages
    • pyright.organizeimports: Organize imports by Pyright
    • pyright.restartserver: This command forces the type checker to discard all of its cached type information and restart analysis. It is useful in cases where new type stubs or libraries have been installed.
    • pyright.createtypestub: Creates Type Stubs with given module name, for example :CocCommand pyright.createtypestub numpy

    Configurations

    These configurations are used by coc-pyright, you need to set them in your coc-settings.json.

    Configuration Description Default
    pyright.enable Enable coc-pyright extension true
    python.analysis.autoImportCompletions Determines whether pyright offers auto-import completions true
    python.analysis.autoSearchPaths Automatically add common search paths like 'src' true
    python.analysis.diagnosticMode Analyzes and reports errors for open only or all files in workspace openFilesOnly
    python.analysis.stubPath Path to directory containing custom type stub files typings
    python.analysis.typeshedPaths Paths to look for typeshed modules []
    python.analysis.diagnosticSeverityOverrides Override the severity levels for individual diagnostics {}
    python.analysis.typeCheckingMode Defines the default rule set for type checking basic
    python.analysis.useLibraryCodeForTypes Use library implementations to extract type information true
    python.pythonPath Path to Python python
    python.venvPath Path to folder with a list of Virtual Environments ""
    python.formatting.provider Provider for formatting autopep8
    python.formatting.blackPath Custom path to black black
    python.formatting.blackArgs Arguments passed to black []
    python.formatting.blackdPath Custom path to blackd blackd
    python.formatting.blackdHTTPURL Custom blackd server url ""
    python.formatting.blackdHTTPHeaders Custom blackd request headers {}
    python.formatting.yapfPath Custom path to yapf yapf
    python.formatting.yapfArgs Arguments passed to yapf []
    python.formatting.autopep8Path Custom path to autopep8 autopep8
    python.formatting.autopep8Args Arguments passed to autopep8 []
    python.linting.enabled Whether to lint Python files true
    python.linting.flake8Enabled Whether to lint with flake8 false
    python.linting.banditEnabled Whether to lint with bandit false
    python.linting.mypyEnabled Whether to lint with mypy false
    python.linting.pytypeEnabled Whether to lint with pytype false
    python.linting.pycodestyleEnabled Whether to lint with pycodestyle false
    python.linting.prospectorEnabled Whether to lint with prospector false
    python.linting.pydocstyleEnabled Whether to lint with pydocstyleEnabled false
    python.linting.pylamaEnabled Whether to lint with pylama false
    python.linting.pylintEnabled Whether to lint with pylint false
    python.sortImports.path Path to isort script, default using inner version ''
    python.sortImports.args Arguments passed to isort []
    pyright.server Custom pyright-langserver path ''
    pyright.disableCompletion Disables completion from Pyright, left other LSP features work false
    pyright.disableDiagnostics Disable diagnostics from Pyright false
    pyright.completion.importSupport Enable python-import completion source support true
    pyright.completion.snippetSupport Enable completion snippets support true
    pyright.organizeimports.provider Organize imports provider, pyright or isort pyright

    pyrightconfig.json

    Pyright supports pyrightconfig.json that provide granular control over settings.

    Python typing and stub files

    To provide best experience, Pyright requires packages to be type annotated and/or have stub files. The Python community is currently in a transition phase where package authors are actively looking to provide that. Meanwhile, stub files for well-known packages may also be obtained from 3rd party, for example:

    Conda setup

    1. Create the following file:
    #!/bin/bash
    python "$@"
    
    1. Make it executable: chmod +x $path
    2. Add the following to your coc-settings.json:
    "python.pythonPath": "<PUT PATH HERE>"
    
    1. Activate the environment before starting vim

    This way python from your currently activated environment will be used

    My Workflow with Pyright

    1. create venv in project: python3 -m venv .venv
    2. source .venv/bin/activate
    3. install modules with pip and work with Pyright
    4. deactivate

    License

    MIT


    This extension is created by create-coc-extension

    Install

    npm i coc-pyright

    DownloadsWeekly Downloads

    3,848

    Version

    1.1.191

    License

    MIT

    Unpacked Size

    1.36 MB

    Total Files

    7

    Last publish

    Collaborators

    • fannheyward