summaryrefslogtreecommitdiff
path: root/lua/plugins/lang/go.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/plugins/lang/go.lua')
-rw-r--r--lua/plugins/lang/go.lua121
1 files changed, 61 insertions, 60 deletions
diff --git a/lua/plugins/lang/go.lua b/lua/plugins/lang/go.lua
index 7e7fa03..becddf8 100644
--- a/lua/plugins/lang/go.lua
+++ b/lua/plugins/lang/go.lua
@@ -1,65 +1,66 @@
return {
- {
- "fatih/vim-go",
- init = function()
- vim.g.go_fmt_command = "gofumpt"
- end,
- ft = { "go" },
- },
+ {
+ "fatih/vim-go",
+ init = function()
+ vim.g.go_fmt_command = "gofumpt"
+ end,
+ ft = { "go" },
+ },
- {
- "nvim-treesitter/nvim-treesitter",
- opts = function(_, opts)
- if type(opts) == "table" then
- opts.ensure_installed = opts.ensure_installed or {}
- vim.list_extend(opts.ensure_installed, {
- "go",
- "gomod",
- "gosum",
- })
- end
- end,
- },
+ {
+ "nvim-treesitter/nvim-treesitter",
+ opts = function(_, opts)
+ if type(opts) == "table" then
+ opts.ensure_installed = opts.ensure_installed or {}
+ vim.list_extend(opts.ensure_installed, {
+ "go",
+ "gomod",
+ "gosum",
+ })
+ end
+ end,
+ },
- {
- "jose-elias-alvarez/null-ls.nvim",
- opts = function(_, opts)
- if type(opts) == "table" then
- opts.sources = opts.sources or {}
- local null_ls = require("null-ls")
- vim.list_extend(opts.sources, {
- null_ls.builtins.diagnostics.golangci_lint,
- null_ls.builtins.formatting.gofumpt, -- Just here because gopls integrated gofumpt doesn't work
- })
- end
- end,
- },
+ {
+ "jose-elias-alvarez/null-ls.nvim",
+ opts = function(_, opts)
+ if type(opts) == "table" then
+ opts.sources = opts.sources or {}
+ local null_ls = require("null-ls")
+ vim.list_extend(opts.sources, {
+ null_ls.builtins.diagnostics.golangci_lint,
+ null_ls.builtins.formatting.gofumpt, -- Just here because gopls integrated gofumpt doesn't work
+ })
+ end
+ end,
+ },
- {
- "neovim/nvim-lspconfig",
- opts = function(_, opts)
- if type(opts) == "table" then
- opts.servers = opts.servers or {}
- opts.servers.gopls = {
- -- Because integrated gofumpt doesn't work
- -- I disable formatting for gopls
- -- Formatting is handled with gofumpt by:
- -- - null-ls on format request
- -- - vim-go on save
- on_attach = function(client, _)
- client.server_capabilities.documentFormattingProvider = false
- client.server_capabilities.documentRangeFormattingProvider = false
- end,
- cmd = { "gopls", "-remote=auto", "serve" }, -- Shared with vim-go's gopls instance
- settings = {
- gopls = {
- buildFlags = { "-tags=integration,unit" }, -- To make packages with those build flags actually work with the LSP
- semanticTokens = false,
- gofumpt = true, -- gofumpt formatting, doesn't work
- },
- },
- }
- end
- end,
- },
+ {
+ "neovim/nvim-lspconfig",
+ opts = function(_, opts)
+ if type(opts) == "table" then
+ opts.servers = opts.servers or {}
+ opts.servers.gopls = {
+ -- Because integrated gofumpt doesn't work
+ -- I disable formatting for gopls
+ -- Formatting is handled with gofumpt by:
+ -- - null-ls on format request
+ -- - vim-go on save
+ on_attach = function(client, _)
+ client.server_capabilities.documentFormattingProvider = false
+ client.server_capabilities.documentRangeFormattingProvider =
+ false
+ end,
+ cmd = { "gopls", "-remote=auto", "serve" }, -- Shared with vim-go's gopls instance
+ settings = {
+ gopls = {
+ buildFlags = { "-tags=integration,unit" }, -- To make packages with those build flags actually work with the LSP
+ semanticTokens = false,
+ gofumpt = true, -- gofumpt formatting, doesn't work
+ },
+ },
+ }
+ end
+ end,
+ },
}