From 836286798e959fbaa43bd4502561cf85aea537c9 Mon Sep 17 00:00:00 2001 From: Luc Sinet Date: Sat, 17 Jul 2021 00:30:38 +0200 Subject: [Feature] add linter support (#982) --- lua/lang/python.lua | 41 +++++++---------------------------------- 1 file changed, 7 insertions(+), 34 deletions(-) (limited to 'lua/lang/python.lua') diff --git a/lua/lang/python.lua b/lua/lang/python.lua index 3bab555a..b4f74a6a 100644 --- a/lua/lang/python.lua +++ b/lua/lang/python.lua @@ -19,6 +19,11 @@ M.config = function() exe = "yapf", args = {}, }, + linters = { + "flake8", + "pylint", + "mypy", + }, } end @@ -40,41 +45,9 @@ M.format = function() end M.lint = function() - if require("lv-utils").check_lsp_client_active "efm" then - return - end - local python_arguments = {} - - local flake8 = { - LintCommand = "flake8 --ignore=E501 --stdin-display-name ${INPUT} -", - lintStdin = true, - lintFormats = { "%f:%l:%c: %m" }, + require("lint").linters_by_ft = { + python = O.lang.python.linters, } - - local isort = { formatCommand = "isort --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 not require("lv-utils").check_lsp_client_active "efm" then - require("lspconfig").efm.setup { - cmd = { DATA_PATH .. "/lspinstall/efm/efm-langserver" }, - init_options = { documentFormatting = true, codeAction = false }, - root_dir = require("lspconfig").util.root_pattern(".git/", "requirements.txt"), - filetypes = { "python" }, - settings = { - rootMarkers = { ".git/", "requirements.txt" }, - languages = { - python = python_arguments, - }, - }, - } - end end M.lsp = function() -- cgit v1.2.3