diff options
Diffstat (limited to 'ftplugin/python.lua')
-rw-r--r-- | ftplugin/python.lua | 118 |
1 files changed, 48 insertions, 70 deletions
diff --git a/ftplugin/python.lua b/ftplugin/python.lua index 23e54880..a9b41648 100644 --- a/ftplugin/python.lua +++ b/ftplugin/python.lua @@ -2,86 +2,64 @@ local python_arguments = {} -- TODO replace with path argument local flake8 = { - LintCommand = "flake8 --ignore=E501 --stdin-display-name ${INPUT} -", - lintStdin = true, - lintFormats = {"%f:%l:%c: %m"} + LintCommand = "flake8 --ignore=E501 --stdin-display-name ${INPUT} -", + lintStdin = true, + lintFormats = { "%f:%l:%c: %m" }, } -local isort = {formatCommand = "isort --quiet -", formatStdin = true} +local isort = { formatCommand = "isort --quiet -", formatStdin = true } -local yapf = {formatCommand = "yapf --quiet", formatStdin = true} -local black = {formatCommand = "black --quiet -", formatStdin = true} +local yapf = { formatCommand = "yapf --quiet", formatStdin = true } +local black = { formatCommand = "black --quiet -", formatStdin = true } -if O.lang.python.linter == 'flake8' then table.insert(python_arguments, flake8) end - -if O.lang.python.isort then table.insert(python_arguments, isort) end +if O.lang.python.linter == "flake8" then + table.insert(python_arguments, flake8) +end -if O.lang.python.formatter == 'yapf' then - table.insert(python_arguments, yapf) -elseif O.lang.python.formatter == 'black' then - table.insert(python_arguments, black) +if O.lang.python.isort then + table.insert(python_arguments, isort) end -require"lspconfig".efm.setup { - -- init_options = {initializationOptions}, - cmd = {DATA_PATH .. "/lspinstall/efm/efm-langserver"}, - init_options = {documentFormatting = true, codeAction = false}, - filetypes = {"python"}, - settings = { - rootMarkers = {".git/", "requirements.txt"}, - languages = { - python = python_arguments, - } - } +require("lspconfig").efm.setup { + -- init_options = {initializationOptions}, + cmd = { DATA_PATH .. "/lspinstall/efm/efm-langserver" }, + init_options = { documentFormatting = true, codeAction = false }, + filetypes = { "python" }, + settings = { + rootMarkers = { ".git/", "requirements.txt" }, + languages = { + python = python_arguments, + }, + }, } - - - - - - - - - - - - -- npm i -g pyright -require'lspconfig'.pyright.setup { - cmd = { - DATA_PATH .. "/lspinstall/python/node_modules/.bin/pyright-langserver", - "--stdio" +require("lspconfig").pyright.setup { + cmd = { + DATA_PATH .. "/lspinstall/python/node_modules/.bin/pyright-langserver", + "--stdio", + }, + on_attach = require("lsp").common_on_attach, + handlers = { + ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, { + virtual_text = O.lang.python.diagnostics.virtual_text, + signs = O.lang.python.diagnostics.signs, + underline = O.lang.python.diagnostics.underline, + update_in_insert = true, + }), + }, + settings = { + python = { + analysis = { + typeCheckingMode = O.lang.python.analysis.type_checking, + autoSearchPaths = O.lang.python.analysis.auto_search_paths, + useLibraryCodeForTypes = O.lang.python.analysis.use_library_code_types, + }, }, - on_attach = require'lsp'.common_on_attach, - handlers = { - ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic - .on_publish_diagnostics, - { - virtual_text = O.lang.python.diagnostics.virtual_text, - signs = O.lang.python.diagnostics.signs, - underline = O.lang.python.diagnostics.underline, - update_in_insert = true - }) - }, - settings = { - python = { - analysis = { - typeCheckingMode = O.lang.python.analysis.type_checking, - autoSearchPaths = O.lang.python.analysis.auto_search_paths, - useLibraryCodeForTypes = O.lang.python.analysis - .use_library_code_types - } - } - } + }, } -if O.lang.python.autoformat then - require('lv-utils').define_augroups({ - _python_autoformat = { - { - 'BufWritePre', '*.py', - 'lua vim.lsp.buf.formatting_sync(nil, 1000)' - } - } - }) + +if O.plugin.debug.active and O.plugin.dap_install.active then + local dap_install = require("dap-install") + dap_install.config("python_dbg", {}) end |