diff options
Diffstat (limited to '.config/nvim/lsp/bashls.lua')
-rw-r--r-- | .config/nvim/lsp/bashls.lua | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/.config/nvim/lsp/bashls.lua b/.config/nvim/lsp/bashls.lua new file mode 100644 index 0000000..fbd396a --- /dev/null +++ b/.config/nvim/lsp/bashls.lua @@ -0,0 +1,29 @@ +---@brief +--- +--- https://github.com/bash-lsp/bash-language-server +--- +--- `bash-language-server` can be installed via `npm`: +--- ```sh +--- npm i -g bash-language-server +--- ``` +--- +--- Language server for bash, written using tree sitter in typescript. + +---@type vim.lsp.Config +return { + cmd = { 'bash-language-server', 'start' }, + settings = { + bashIde = { + -- Glob pattern for finding and parsing shell script files in the workspace. + -- Used by the background analysis features across files. + + -- Prevent recursive scanning which will cause issues when opening a file + -- directly in the home directory (e.g. ~/foo.sh). + -- + -- Default upstream pattern is "**/*@(.sh|.inc|.bash|.command)". + globPattern = vim.env.GLOB_PATTERN or '*@(.sh|.inc|.bash|.command)', + }, + }, + filetypes = { 'bash', 'sh' }, + root_markers = { '.git' }, +} |