refactor: notebook configration
This commit is contained in:
54
hosts/nb/modules/development/nvim/config/lspconfig.lua
Normal file
54
hosts/nb/modules/development/nvim/config/lspconfig.lua
Normal file
@@ -0,0 +1,54 @@
|
||||
local status, lspc = pcall(require, 'lspconfig')
|
||||
if (not status) then return end
|
||||
|
||||
lspc.clangd.setup{}
|
||||
|
||||
local buf_map = function(bufnr, mode, lhs, rhs, opts)
|
||||
vim.api.nvim_buf_set_keymap(bufnr, mode, lhs, rhs, opts or {
|
||||
silent = true,
|
||||
})
|
||||
end
|
||||
|
||||
local protocol = require('vim.lsp.protocol')
|
||||
|
||||
local on_attach = function(client, buffnr)
|
||||
if client.server.capabilities.documentFormattingProvider then
|
||||
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||
group = vim.api.nvim_create_augroup("format", { clear = true }),
|
||||
buffer = buffnr,
|
||||
callback = function() vim.lsp.buf.formatting_seq_sync() end
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||
capabilities.textDocument.completion.completionItem.snippetSupport = true
|
||||
capabilities = require('cmp_nvim_lsp').default_capabilities(capabilities)
|
||||
|
||||
local servers = { 'ts_ls', 'lua_ls', 'cssls', 'yamlls', 'intelephense', 'gopls' }
|
||||
for _, lsp in pairs(servers) do
|
||||
require('lspconfig')[lsp].setup {
|
||||
-- on_attach = on_attach,
|
||||
capabilities = capabilities,
|
||||
}
|
||||
end
|
||||
|
||||
lspc.yamlls.setup({
|
||||
settings = {
|
||||
yaml = {
|
||||
keyOrdering = false,
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
-- autoformat json files with jq
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = "json",
|
||||
callback = function(ev)
|
||||
vim.bo[ev.buf].formatprg = "jq"
|
||||
print("It's a json file")
|
||||
end,
|
||||
})
|
||||
|
||||
|
||||
-- lspc.intelephense.setup()
|
||||
Reference in New Issue
Block a user