feat: add mason lsp

This commit is contained in:
Fabio Lenherr / DashieTM 2022-10-12 00:32:56 +02:00
parent 18fc525867
commit a9cb122592
13 changed files with 574 additions and 197 deletions

View file

@ -1,16 +1,44 @@
local null_ls = require("null-ls")
null_ls.setup({
on_attach = function(client, bufnr)
if client.server_capabilities.documentFormattingProvider then
vim.cmd("nnoremap <silent><buffer> <Leader>f :lua vim.lsp.buf.formatting()<CR>")
-- format on save
vim.cmd("autocmd BufWritePost <buffer> lua vim.lsp.buf.formatting()")
end
if client.server_capabilities.documentRangeFormattingProvider then
vim.cmd("xnoremap <silent><buffer> <Leader>f :lua vim.lsp.buf.range_formatting({})<CR>")
end
end,
require("mason-null-ls").setup({
ensure_installed = {
"prettier",
"clang_format",
"latexindent",
"shellharden",
"sql_formatter",
"fixjson",
"autopep8",
"stylua",
"rustfmt",
"stylish-haskell",
},
})
null_ls.setup({
on_attach = function(client, bufnr)
if client.server_capabilities.documentFormattingProvider then
vim.cmd("nnoremap <silent><buffer> <Leader>f :lua vim.lsp.buf.format { async = true }<CR>")
-- format on save
vim.cmd("autocmd BufWritePost <buffer> lua vim.lsp.buf.format { async = true }")
end
if client.server_capabilities.documentRangeFormattingProvider then
vim.cmd("xnoremap <silent><buffer> <Leader>f :lua vim.lsp.buf.range_formatting({})<CR>")
end
end,
sources = {
require("null-ls").builtins.completion.spell,
require("null-ls").builtins.formatting.prettier,
require("null-ls").builtins.formatting.clang_format,
require("null-ls").builtins.formatting.latexindent,
require("null-ls").builtins.formatting.shellharden,
require("null-ls").builtins.formatting.sql_formatter,
require("null-ls").builtins.formatting.fixjson,
require("null-ls").builtins.formatting.autopep8,
require("null-ls").builtins.formatting.stylua,
require("null-ls").builtins.formatting.rustfmt,
require("null-ls").builtins.formatting.stylish_haskell,
},
})