diff options
Diffstat (limited to 'lua')
-rw-r--r-- | lua/default-config.lua | 2 | ||||
-rw-r--r-- | lua/lsp/ts-fmt-lint.lua | 37 |
2 files changed, 25 insertions, 14 deletions
diff --git a/lua/default-config.lua b/lua/default-config.lua index 716f0bae..f2996d53 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -266,7 +266,7 @@ O = { }, terraform = {}, tsserver = { - -- @usage can be 'eslint' + -- @usage can be 'eslint' or 'eslint_d' linter = "", diagnostics = { virtual_text = { spacing = 0, prefix = "ï„‘" }, diff --git a/lua/lsp/ts-fmt-lint.lua b/lua/lsp/ts-fmt-lint.lua index 8a6c366c..f6b37136 100644 --- a/lua/lsp/ts-fmt-lint.lua +++ b/lua/lsp/ts-fmt-lint.lua @@ -5,30 +5,41 @@ local M = {} M.setup = function() local tsserver_args = {} - local prettier = { - formatCommand = "prettier --stdin-filepath ${INPUT}", - formatStdin = true, - } - - if vim.fn.glob "node_modules/.bin/prettier" ~= "" then - prettier = { - formatCommand = "./node_modules/.bin/prettier --stdin-filepath ${INPUT}", + if O.lang.tsserver.linter == "eslint" or O.lang.tsserver.linter == "eslint_d" then + local eslint = { + lintCommand = O.lang.tsserver.linter .. " -f unix --stdin --stdin-filename {INPUT}", + lintStdin = true, + lintFormats = { "%f:%l:%c: %m" }, + lintIgnoreExitCode = true, + formatCommand = O.lang.tsserver.linter .. " --fix-to-stdout --stdin --stdin-filename=${INPUT}", formatStdin = true, } + table.insert(tsserver_args, eslint) end require("lspconfig").efm.setup { -- init_options = {initializationOptions}, cmd = { DATA_PATH .. "/lspinstall/efm/efm-langserver" }, init_options = { documentFormatting = true, codeAction = false }, - filetypes = { "html", "css", "yaml", "vue", "javascript", "javascriptreact", "typescript", "typescriptreact" }, + filetypes = { + "vue", + "javascript", + "javascriptreact", + "typescript", + "typescriptreact", + "javascript.jsx", + "typescript.tsx", + }, settings = { rootMarkers = { ".git/", "package.json" }, languages = { - html = { prettier }, - css = { prettier }, - json = { prettier }, - yaml = { prettier }, + vue = tsserver_args, + javascript = tsserver_args, + javascriptreact = tsserver_args, + ["javascript.jsx"] = tsserver_args, + typescript = tsserver_args, + ["typescript.tsx"] = tsserver_args, + typescriptreact = tsserver_args, }, }, } |