diff options
author | Christian Segundo | 2023-10-12 15:29:11 +0200 |
---|---|---|
committer | Christian Segundo | 2023-10-12 15:29:11 +0200 |
commit | 542613a0f58ccb3722c93b4b68677d7b5053fd57 (patch) | |
tree | 04a940df3e75a4b4cbe53cc3392c4e1c63fc8c6f /public/nvim/.nvim/lua/plugins/lang/bash.lua | |
parent | 449a6f57a36862a8ff27b2a3cee0922f4e4d949e (diff) | |
download | dotfiles-542613a0f58ccb3722c93b4b68677d7b5053fd57.tar.gz |
Add nvim
Diffstat (limited to 'public/nvim/.nvim/lua/plugins/lang/bash.lua')
-rw-r--r-- | public/nvim/.nvim/lua/plugins/lang/bash.lua | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/public/nvim/.nvim/lua/plugins/lang/bash.lua b/public/nvim/.nvim/lua/plugins/lang/bash.lua new file mode 100644 index 0000000..d9911a6 --- /dev/null +++ b/public/nvim/.nvim/lua/plugins/lang/bash.lua @@ -0,0 +1,40 @@ +return { + { + "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, { "bash" }) + 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.code_actions.shellcheck, -- Diagnostics handled by Bash LS + }) + end + end, + }, + + { + "neovim/nvim-lspconfig", + opts = function(_, opts) + if type(opts) == "table" then + opts.servers = opts.servers or {} + -- Just here because it doesn't work with the default node + -- https://github.com/bash-lsp/bash-language-server/issues/418 + local brew_prefix = vim.fn.systemlist("brew --prefix")[1] + local bashls_script_name = "bash-language-server" + local bashls_script_path = vim.fn.systemlist("which " .. bashls_script_name)[1] + local bashls_cmd = { brew_prefix .. "/opt/node@16/bin/node", bashls_script_path, "start" } + opts.servers.bashls = { cmd = bashls_cmd } + end + end, + }, +} |