From 9fd4b66c1380f2b51d6cfcb28cea9454b741eb1a Mon Sep 17 00:00:00 2001 From: LuKe Tidd Date: Thu, 18 May 2023 09:44:31 -0400 Subject: [PATCH] update null-sl --- configs/null-ls.lua | 38 ++++++++++++++++++++++++++++++++++++++ plugins.lua | 9 +++------ 2 files changed, 41 insertions(+), 6 deletions(-) diff --git a/configs/null-ls.lua b/configs/null-ls.lua index 320716b..fd6f205 100644 --- a/configs/null-ls.lua +++ b/configs/null-ls.lua @@ -1,3 +1,4 @@ +--[[ local null_ls = require("null-ls") local augroup = vim.api.nvim_create_augroup("LspFormatting", {}) @@ -23,3 +24,40 @@ local opts = { end, } return opts + +]]-- + +local null_ls = require("null-ls") +local format = null_ls.builtins.formatting +local lint = null_ls.builtins.diagnostics +local augroup = vim.api.nvim_create_augroup("LspFormatting", {}) + +local sources = { + -- lua + format.stylua, + lint.shellcheck, + -- webdev + format.prettier.with({ filetypes = { "html", "markdown", "css", "typescript", "tsx", "javascript" } }), + --cpp + format.clang_format, + -- golang + format.gofumpt, + format.goimports_reviser, +} + +null_ls.setup({ + debug = true, + sources = sources, + on_attach = function(client, bufnr) + if client.supports_method("textDocument/formatting") then + vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr }) + vim.api.nvim_create_autocmd("BufWritePre", { + group = augroup, + buffer = bufnr, + callback = function() + vim.lsp.buf.format({ bufnr = bufnr }) + end, + }) + end + end, +}) diff --git a/plugins.lua b/plugins.lua index 9bac19b..55847f7 100644 --- a/plugins.lua +++ b/plugins.lua @@ -3,9 +3,9 @@ local plugins = { "williamboman/mason.nvim", opts = { ensure_installed = { - "delve", - "gofumpt", - "goimports-reviser", + "delve", + "gofumpt", + "goimports-reviser", "gopls", "json-lsp", "json-to-struct", @@ -88,9 +88,6 @@ local plugins = { require("dap-go").setup(opts) require("core.utils").load_mappings("dap_go") end - - - } }