diff options
author | Toby Vincent <tobyv@tobyvin.dev> | 2024-02-19 00:37:42 -0600 |
---|---|---|
committer | Toby Vincent <tobyv@tobyvin.dev> | 2024-02-19 00:37:42 -0600 |
commit | 0bf01ac8fbc9f0694b424f2198b2b4111474f054 (patch) | |
tree | aa4d6017d7aa594d6a95e575f2a4995b94a5774e /nvim/.config | |
parent | 9c6399285657ca01247ad88ff9835d42a116ca0c (diff) |
fix(nvim): improve PKGBUILD lsp
Diffstat (limited to 'nvim/.config')
-rw-r--r-- | nvim/.config/nvim/after/ftplugin/PKGBUILD.lua | 3 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/plugins/lint.lua | 14 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/filetype.lua | 1 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/lsp/configs.lua | 7 |
4 files changed, 11 insertions, 14 deletions
diff --git a/nvim/.config/nvim/after/ftplugin/PKGBUILD.lua b/nvim/.config/nvim/after/ftplugin/PKGBUILD.lua index 3c844d9..d1a6bb6 100644 --- a/nvim/.config/nvim/after/ftplugin/PKGBUILD.lua +++ b/nvim/.config/nvim/after/ftplugin/PKGBUILD.lua @@ -1 +1,2 @@ -vim.opt_local.tabstop = 2 +vim.cmd("runtime! ftplugin/sh.{vim,lua}") +vim.treesitter.language.register("bash", { "PKGBUILD" }) diff --git a/nvim/.config/nvim/lua/plugins/lint.lua b/nvim/.config/nvim/lua/plugins/lint.lua index f2b3cfc..09fb0fa 100644 --- a/nvim/.config/nvim/lua/plugins/lint.lua +++ b/nvim/.config/nvim/lua/plugins/lint.lua @@ -60,18 +60,6 @@ local M = { })[1] end, }, - shellcheck = { - condition = function() - return not vim.api.nvim_buf_get_name(0):match(".*/PKGBUILD$") - end, - }, - pkgbuildcheck = { - extend = "shellcheck", - cmd = "pkgbuildcheck", - condition = function() - return vim.api.nvim_buf_get_name(0):match(".*/PKGBUILD$") - end, - }, }, }, } @@ -87,7 +75,7 @@ function M:config(opts) local lint = require("lint") lint.linters_by_ft = opts.linters_by_ft vim.iter(opts.linters):each(function(name, linter) - linter = vim.tbl_deep_extend("keep", linter, require("lint").linters[linter.extend or name] or {}, { + linter = vim.tbl_deep_extend("keep", linter, require("lint").linters[name] or {}, { args = {}, prepend_args = {}, }) diff --git a/nvim/.config/nvim/lua/tobyvin/filetype.lua b/nvim/.config/nvim/lua/tobyvin/filetype.lua index 2f288e9..f82e6b9 100644 --- a/nvim/.config/nvim/lua/tobyvin/filetype.lua +++ b/nvim/.config/nvim/lua/tobyvin/filetype.lua @@ -6,6 +6,7 @@ vim.filetype.add({ service = "systemd", }, filename = { + PKGBUILD = "PKGBUILD", tridactylrc = "trytactylrc", }, pattern = { diff --git a/nvim/.config/nvim/lua/tobyvin/lsp/configs.lua b/nvim/.config/nvim/lua/tobyvin/lsp/configs.lua index 8c59719..d3cf99d 100644 --- a/nvim/.config/nvim/lua/tobyvin/lsp/configs.lua +++ b/nvim/.config/nvim/lua/tobyvin/lsp/configs.lua @@ -2,6 +2,7 @@ local ms = vim.lsp.protocol.Methods local M = { bashls = { + filetypes = { "sh", "PKGBUILD" }, settings = { bashIde = { explainshellEndpoint = "https://explainshell.com", @@ -11,6 +12,12 @@ local M = { }, }, }, + ---@type fun(new_config: lspconfig.options.bashls, new_root_dir: any) + on_new_config = function(new_config, new_root_dir) + if require("lspconfig").util.path.join(new_root_dir, "PKGBUILD") then + new_config.settings.bashIde.shellcheckPath = "pkgbuildcheck" + end + end, }, biome = { capabilities = { |