mirror of
https://github.com/LazyVim/LazyVim.git
synced 2025-06-23 17:28:57 +02:00
feat(go): add gofumpt formatter with conform/none-ls (#1683)
* feat(go): only install required packages * fix: add gofumpt formatter using conform/none-ls * fix: add mason.nvim as dependency of none-ls
This commit is contained in:
parent
c7244d9d47
commit
385c99dbb7
1 changed files with 20 additions and 3 deletions
|
@ -82,15 +82,32 @@ return {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
-- Ensure Go tools are installed
|
-- Ensure Go tools are installed
|
||||||
|
{
|
||||||
|
"williamboman/mason.nvim",
|
||||||
|
opts = function(_, opts)
|
||||||
|
opts.ensure_installed = opts.ensure_installed or {}
|
||||||
|
vim.list_extend(opts.ensure_installed, { "goimports", "gofumpt" })
|
||||||
|
end,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"nvimtools/none-ls.nvim",
|
"nvimtools/none-ls.nvim",
|
||||||
optional = true,
|
optional = true,
|
||||||
|
dependencies = {
|
||||||
|
{
|
||||||
|
"williamboman/mason.nvim",
|
||||||
|
opts = function(_, opts)
|
||||||
|
opts.ensure_installed = opts.ensure_installed or {}
|
||||||
|
vim.list_extend(opts.ensure_installed, { "gomodifytags", "impl" })
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
opts = function(_, opts)
|
opts = function(_, opts)
|
||||||
local nls = require("null-ls")
|
local nls = require("null-ls")
|
||||||
opts.sources = vim.list_extend(opts.sources or {}, {
|
opts.sources = vim.list_extend(opts.sources or {}, {
|
||||||
nls.builtins.code_actions.gomodifytags,
|
nls.builtins.code_actions.gomodifytags,
|
||||||
nls.builtins.code_actions.impl,
|
nls.builtins.code_actions.impl,
|
||||||
nls.builtins.formatting.goimports,
|
nls.builtins.formatting.goimports,
|
||||||
|
nls.builtins.formatting.gofumpt,
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
@ -99,7 +116,7 @@ return {
|
||||||
optional = true,
|
optional = true,
|
||||||
opts = {
|
opts = {
|
||||||
formatters_by_ft = {
|
formatters_by_ft = {
|
||||||
go = { "goimports" },
|
go = { "goimports", "gofumpt" },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -108,10 +125,10 @@ return {
|
||||||
optional = true,
|
optional = true,
|
||||||
dependencies = {
|
dependencies = {
|
||||||
{
|
{
|
||||||
"mason.nvim",
|
"williamboman/mason.nvim",
|
||||||
opts = function(_, opts)
|
opts = function(_, opts)
|
||||||
opts.ensure_installed = opts.ensure_installed or {}
|
opts.ensure_installed = opts.ensure_installed or {}
|
||||||
vim.list_extend(opts.ensure_installed, { "gomodifytags", "impl", "goimports", "delve" })
|
vim.list_extend(opts.ensure_installed, { "delve" })
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue