diff options
Diffstat (limited to 'start/lspconfig-0.1.3/lua/lspconfig/server_configurations/pyright.lua')
-rw-r--r-- | start/lspconfig-0.1.3/lua/lspconfig/server_configurations/pyright.lua | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/start/lspconfig-0.1.3/lua/lspconfig/server_configurations/pyright.lua b/start/lspconfig-0.1.3/lua/lspconfig/server_configurations/pyright.lua new file mode 100644 index 0000000..a198477 --- /dev/null +++ b/start/lspconfig-0.1.3/lua/lspconfig/server_configurations/pyright.lua @@ -0,0 +1,56 @@ +local util = require 'lspconfig.util' + +local bin_name = 'pyright-langserver' +local cmd = { bin_name, '--stdio' } + +if vim.fn.has 'win32' == 1 then + cmd = { 'cmd.exe', '/C', bin_name, '--stdio' } +end + +local root_files = { + 'pyproject.toml', + 'setup.py', + 'setup.cfg', + 'requirements.txt', + 'Pipfile', + 'pyrightconfig.json', +} + +local function organize_imports() + local params = { + command = 'pyright.organizeimports', + arguments = { vim.uri_from_bufnr(0) }, + } + vim.lsp.buf.execute_command(params) +end + +return { + default_config = { + cmd = cmd, + filetypes = { 'python' }, + root_dir = util.root_pattern(unpack(root_files)), + single_file_support = true, + settings = { + python = { + analysis = { + autoSearchPaths = true, + useLibraryCodeForTypes = true, + diagnosticMode = 'workspace', + }, + }, + }, + }, + commands = { + PyrightOrganizeImports = { + organize_imports, + description = 'Organize Imports', + }, + }, + docs = { + description = [[ +https://github.com/microsoft/pyright + +`pyright`, a static type checker and language server for python +]], + }, +} |