update formatting code

This commit is contained in:
sudacode 2025-02-13 18:37:26 -08:00
parent 57f8e53ec0
commit 0f860cf709
3 changed files with 49 additions and 148 deletions

View File

@ -1 +1 @@
require("lsp-format").setup {} -- require("lsp-format").setup {}

View File

@ -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)

View File

@ -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