update formatting code
This commit is contained in:
parent
57f8e53ec0
commit
0f860cf709
@ -1 +1 @@
|
|||||||
require("lsp-format").setup {}
|
-- require("lsp-format").setup {}
|
||||||
|
@ -1,161 +1,58 @@
|
|||||||
local null_ls = require("null-ls")
|
local null_ls = require("null-ls")
|
||||||
local helpers = require("null-ls.helpers")
|
local helpers = require("null-ls.helpers")
|
||||||
-- syncronous formatting
|
-- syncronous formatting
|
||||||
-- local augroup = vim.api.nvim_create_augroup("LspFormatting", {})
|
local augroup = vim.api.nvim_create_augroup("LspFormatting", {})
|
||||||
-- require("null-ls").setup({
|
require("null-ls").setup({
|
||||||
-- -- you can reuse a shared lspconfig on_attach callback here
|
-- you can reuse a shared lspconfig on_attach callback here
|
||||||
-- on_attach = function(client, bufnr)
|
on_attach = function(client, bufnr)
|
||||||
-- if client.supports_method("textDocument/formatting") then
|
if client.supports_method("textDocument/formatting") then
|
||||||
-- vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr })
|
vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr })
|
||||||
-- vim.api.nvim_create_autocmd("BufWritePre", {
|
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||||
-- group = augroup,
|
group = augroup,
|
||||||
-- buffer = bufnr,
|
buffer = bufnr,
|
||||||
-- callback = function()
|
callback = function()
|
||||||
-- -- on 0.8, you should use vim.lsp.buf.format({ bufnr = bufnr }) instead
|
-- on 0.8, you should use vim.lsp.buf.format({ bufnr = bufnr }) instead
|
||||||
-- -- on later neovim version, you should use vim.lsp.buf.format({ async = false }) instead
|
-- on later neovim version, you should use vim.lsp.buf.format({ async = false }) instead
|
||||||
-- vim.lsp.buf.formatting_sync()
|
-- vim.lsp.buf.formatting_sync()
|
||||||
-- end,
|
vim.lsp.buf.format({
|
||||||
-- })
|
async = false,
|
||||||
-- end
|
bufnr = bufnr,
|
||||||
-- end,
|
filter = function(client)
|
||||||
-- })
|
return client.name == "null-ls"
|
||||||
|
end
|
||||||
null_ls.setup({
|
})
|
||||||
-- on_attach = function(client)
|
end,
|
||||||
-- if client.supports_method "textDocument/formatting" then
|
})
|
||||||
-- vim.cmd([[
|
end
|
||||||
-- augroup LspFormatting
|
end,
|
||||||
-- autocmd! * <buffer>
|
|
||||||
-- autocmd BufWritePre <buffer> lua vim.lsp.buf.format()
|
|
||||||
-- augroup END
|
|
||||||
-- ]])
|
|
||||||
-- end
|
|
||||||
-- end,
|
|
||||||
sources = {
|
sources = {
|
||||||
-- null_ls.builtins.completion.spell,
|
|
||||||
null_ls.builtins.completion.luasnip,
|
null_ls.builtins.completion.luasnip,
|
||||||
-- null_ls.builtins.code_actions.gitsigns,
|
null_ls.builtins.formatting.black,
|
||||||
-- null_ls.builtins.code_actions.eslint,
|
null_ls.builtins.formatting.isort,
|
||||||
null_ls.builtins.diagnostics.tsc,
|
|
||||||
null_ls.builtins.diagnostics.cppcheck,
|
|
||||||
null_ls.builtins.diagnostics.gitlint,
|
|
||||||
-- null_ls.builtins.diagnostics.eslint
|
|
||||||
-- .with({ cmd = "/usr/bin/eslint-language-server" }),
|
|
||||||
null_ls.builtins.diagnostics.jsonlint,
|
|
||||||
require("null-ls").builtins.diagnostics.luacheck,
|
|
||||||
null_ls.builtins.diagnostics.markdownlint,
|
|
||||||
-- null_ls.builtins.diagnostics.sqlfluff.with({
|
|
||||||
-- extra_args = {
|
|
||||||
-- "--dialect", "oracle"
|
|
||||||
-- }
|
|
||||||
-- }),
|
|
||||||
-- null_ls.builtins.formatting.sql_formatter,
|
|
||||||
null_ls.builtins.diagnostics.pylint,
|
|
||||||
-- null_ls.builtins.diagnostics.pylint.with({
|
|
||||||
-- diagnostics_postprocess = function(diagnostic)
|
|
||||||
-- diagnostic.code = diagnostic.message_id
|
|
||||||
-- end,
|
|
||||||
-- }),
|
|
||||||
null_ls.builtins.diagnostics.mypy,
|
null_ls.builtins.diagnostics.mypy,
|
||||||
|
null_ls.builtins.diagnostics.markdownlint,
|
||||||
|
null_ls.builtins.diagnostics.pylint,
|
||||||
null_ls.builtins.diagnostics.pycodestyle,
|
null_ls.builtins.diagnostics.pycodestyle,
|
||||||
-- null_ls.builtins.diagnostics.pydocstyle.with({
|
|
||||||
-- extra_args = { "--config=$ROOT/setup.cfg" }
|
|
||||||
-- }),
|
|
||||||
null_ls.builtins.diagnostics.vint,
|
|
||||||
-- null_ls.builtins.code_actions.shellcheck,
|
|
||||||
-- null_ls.builtins.diagnostics.shellcheck.with({
|
|
||||||
-- extra_args = {
|
|
||||||
-- "-s", "bash", "-o",
|
|
||||||
-- "add-default-case, check-set-e-suppressed, check-unassigned-uppercase, deprecate-which, quote-safe-variables"
|
|
||||||
-- }
|
|
||||||
-- }),
|
|
||||||
null_ls.builtins.diagnostics.ansiblelint,
|
|
||||||
null_ls.builtins.formatting.json_tool,
|
|
||||||
require("null-ls").builtins.formatting.lua_format,
|
|
||||||
null_ls.builtins.formatting.stylua,
|
null_ls.builtins.formatting.stylua,
|
||||||
null_ls.builtins.formatting.markdownlint,
|
null_ls.builtins.formatting.markdownlint,
|
||||||
null_ls.builtins.formatting.prettier, -- handled by lsp server
|
null_ls.builtins.formatting.prettier, -- handled by lsp server
|
||||||
-- require("null-ls").builtins.formatting.rustfmt,
|
|
||||||
null_ls.builtins.formatting.shfmt.with({
|
null_ls.builtins.formatting.shfmt.with({
|
||||||
filetypes = { "sh", "bash" },
|
filetypes = { "sh", "bash" },
|
||||||
extra_args = { "-i", "0", "-ci", "-sr" }
|
extra_args = { "-i", "0", "-ci", "-sr" }
|
||||||
}), null_ls.builtins.formatting.black,
|
}),
|
||||||
null_ls.builtins.formatting.isort, null_ls.builtins.formatting.djlint,
|
-- null_ls.builtins.diagnostics.actionlint,
|
||||||
null_ls.builtins.diagnostics.actionlint,
|
|
||||||
-- null_ls.builtins.hover.printenv
|
|
||||||
-- null_ls.builtins.formatting.tidy
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
-- local markdownlint = {
|
-- null_ls.setup({
|
||||||
-- method = null_ls.methods.DIAGNOSTICS,
|
-- on_attach = function(client)
|
||||||
-- filetypes = { "markdown" },
|
-- if client.supports_method "textDocument/formatting" then
|
||||||
-- -- null_ls.generator creates an async source
|
-- vim.cmd([[
|
||||||
-- -- that spawns the command with the given arguments and options
|
-- augroup LspFormatting
|
||||||
-- generator = null_ls.generator({
|
-- autocmd! * <buffer>
|
||||||
-- command = "markdownlint",
|
-- autocmd BufWritePre <buffer> lua vim.lsp.buf.format()
|
||||||
-- args = { "--stdin" },
|
-- augroup END
|
||||||
-- to_stdin = true,
|
-- ]])
|
||||||
-- from_stderr = true,
|
-- end
|
||||||
-- -- choose an output format (raw, json, or line)
|
-- end,
|
||||||
-- format = "line",
|
-- })
|
||||||
-- check_exit_code = function(code, stderr)
|
|
||||||
-- local success = code <= 1
|
|
||||||
|
|
||||||
-- if not success then
|
|
||||||
-- -- can be noisy for things that run often (e.g. diagnostics), but can
|
|
||||||
-- -- be useful for things that run on demand (e.g. formatting)
|
|
||||||
-- print(stderr)
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- return success
|
|
||||||
-- end,
|
|
||||||
-- -- use helpers to parse the output from string matchers,
|
|
||||||
-- -- or parse it manually with a function
|
|
||||||
-- on_output = helpers.diagnostics.from_patterns({
|
|
||||||
-- {
|
|
||||||
-- pattern = [[:(%d+):(%d+) [%w-/]+ (.*)]],
|
|
||||||
-- groups = { "row", "col", "message" },
|
|
||||||
-- },
|
|
||||||
-- {
|
|
||||||
-- pattern = [[:(%d+) [%w-/]+ (.*)]],
|
|
||||||
-- groups = { "row", "message" },
|
|
||||||
-- },
|
|
||||||
-- }),
|
|
||||||
-- }),
|
|
||||||
-- }
|
|
||||||
|
|
||||||
-- local shellcheck = {
|
|
||||||
-- method = null_ls.methods.DIAGNOSTICS,
|
|
||||||
-- filetypes = { "sh", "bash", "zsh", "fish" },
|
|
||||||
-- generator = null_ls.generator({
|
|
||||||
-- command = "shellcheck",
|
|
||||||
-- args = { "-s", "bash", "-o", "all", "-e", "2250" },
|
|
||||||
-- from_stderr = true,
|
|
||||||
-- format = "line",
|
|
||||||
-- check_exit_code = function(code, stderr)
|
|
||||||
-- local success = code <= 1
|
|
||||||
|
|
||||||
-- if not success then
|
|
||||||
-- -- can be noisy for things that run often (e.g. diagnostics), but can
|
|
||||||
-- -- be useful for things that run on demand (e.g. formatting)
|
|
||||||
-- print(stderr)
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- return success
|
|
||||||
-- end,
|
|
||||||
-- on_output = helpers.diagnostics.from_patterns({
|
|
||||||
-- {
|
|
||||||
-- pattern = [[:(%d+):(%d+) [%w-/]+ (.*)]],
|
|
||||||
-- groups = { "row", "col", "message" },
|
|
||||||
-- },
|
|
||||||
-- {
|
|
||||||
-- pattern = [[:(%d+) [%w-/]+ (.*)]],
|
|
||||||
-- groups = { "row", "message" },
|
|
||||||
-- },
|
|
||||||
-- }),
|
|
||||||
-- }),
|
|
||||||
-- }
|
|
||||||
|
|
||||||
-- null_ls.register(markdownlint)
|
|
||||||
-- null_ls.register(shellcheck)
|
|
||||||
|
@ -219,12 +219,13 @@ cmp.setup.cmdline(':', {
|
|||||||
})
|
})
|
||||||
|
|
||||||
local servers = {
|
local servers = {
|
||||||
'bashls', 'pyright', 'jsonls', 'yamlls', 'vimls', 'dotls', 'dockerls',
|
'bashls', 'jedi_language_server', 'jsonls', 'yamlls', 'vimls', 'dotls', 'dockerls',
|
||||||
'html', 'cssls', 'lua_ls', 'eslint', 'ts_ls', 'angularls', 'ansiblels'
|
'html', 'cssls', 'lua_ls', 'eslint', 'ts_ls', 'angularls', 'ansiblels'
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, lsp in ipairs(servers) do
|
for _, lsp in ipairs(servers) do
|
||||||
if lsp == 'lua_ls' then
|
if lsp == 'lua_ls' then
|
||||||
|
require("lsp-format").setup {}
|
||||||
lspconfig[lsp].setup {
|
lspconfig[lsp].setup {
|
||||||
on_attach = require("lsp-format").on_attach,
|
on_attach = require("lsp-format").on_attach,
|
||||||
on_init = function(client)
|
on_init = function(client)
|
||||||
@ -261,7 +262,10 @@ for _, lsp in ipairs(servers) do
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
lspconfig[lsp].setup { on_attach = require("lsp-format").on_attach, capabilities = capabilities }
|
lspconfig[lsp].setup {
|
||||||
|
-- on_attach = require("lsp-format").on_attach,
|
||||||
|
capabilities = capabilities
|
||||||
|
}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user