diff options
author | christianchiarulli <[email protected]> | 2021-07-01 23:42:26 -0400 |
---|---|---|
committer | christianchiarulli <[email protected]> | 2021-07-01 23:42:26 -0400 |
commit | 20ed47e21e966a5b857ef9970ae6171b3a504ce1 (patch) | |
tree | 92bdefc7589545f4429a55b53e4493ad7832e632 /ftplugin/zsh.lua | |
parent | 9bb4f8a085644914c79343b48c808509311ee203 (diff) |
lsp in ftplugin austonautomoy
Diffstat (limited to 'ftplugin/zsh.lua')
-rw-r--r-- | ftplugin/zsh.lua | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/ftplugin/zsh.lua b/ftplugin/zsh.lua new file mode 100644 index 00000000..7e99ebd3 --- /dev/null +++ b/ftplugin/zsh.lua @@ -0,0 +1,40 @@ +-- npm i -g bash-language-server +require'lspconfig'.bashls.setup { + cmd = {DATA_PATH .. "/lspinstall/bash/node_modules/.bin/bash-language-server", "start"}, + on_attach = require'lsp'.common_on_attach, + filetypes = { "sh", "zsh" } +} + +-- npm i -g bash-language-server +require'lspconfig'.bashls.setup { + cmd = {DATA_PATH .. "/lspinstall/bash/node_modules/.bin/bash-language-server", "start"}, + on_attach = require'lsp'.common_on_attach, + filetypes = { "sh", "zsh" } +} + +-- sh +local sh_arguments = {} + +local shfmt = {formatCommand = 'shfmt -ci -s -bn', formatStdin = true} + +local shellcheck = { + LintCommand = 'shellcheck -f gcc -x', + lintFormats = {'%f:%l:%c: %trror: %m', '%f:%l:%c: %tarning: %m', '%f:%l:%c: %tote: %m'} +} + +if O.lang.sh.formatter == 'shfmt' then table.insert(sh_arguments, shfmt) end + +if O.lang.sh.linter == 'shellcheck' then table.insert(sh_arguments, shellcheck) end + +require"lspconfig".efm.setup { + -- init_options = {initializationOptions}, + cmd = {DATA_PATH .. "/lspinstall/efm/efm-langserver"}, + init_options = {documentFormatting = true, codeAction = false}, + filetypes = {"zsh"}, + settings = { + rootMarkers = {".git/"}, + languages = { + sh = sh_arguments, + } + } +} |