diff options
author | Santo Cariotti <santo@dcariotti.me> | 2021-12-08 11:52:16 +0100 |
---|---|---|
committer | Santo Cariotti <santo@dcariotti.me> | 2021-12-08 11:52:16 +0100 |
commit | 956df69d7496081db5e7b3621a0bcc7b9d7f7dfc (patch) | |
tree | 2c1de01541d70d1cbcb59974e42102440359f153 /nvim/lua/lsp_conf.lua | |
parent | 1eca5dc0fe3648341e1707efc811162fc5056888 (diff) |
move to .config folder
Diffstat (limited to 'nvim/lua/lsp_conf.lua')
-rw-r--r-- | nvim/lua/lsp_conf.lua | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/nvim/lua/lsp_conf.lua b/nvim/lua/lsp_conf.lua deleted file mode 100644 index e339a5c..0000000 --- a/nvim/lua/lsp_conf.lua +++ /dev/null @@ -1,77 +0,0 @@ -local nvim_lsp = require('lspconfig') -local coq = require('coq') -local null_ls = require("null-ls") -local trouble = require("trouble") - --- Redefine sign. -local signs = { Error = 'E', Warning = 'W', Hint = 'H', Information = 'I' } - -for type, icon in pairs(signs) do - local hl = 'LspDiagnosticsSign' .. type - vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = '' }) -end - -local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end -local opts = { noremap=true, silent=true } - -null_ls.config({ - debug = false, - save_after_format = false, - sources = { - -- Python - null_ls.builtins.formatting.black, - null_ls.builtins.formatting.isort, - null_ls.builtins.diagnostics.flake8, - -- Rust - null_ls.builtins.formatting.rustfmt, - -- C - null_ls.builtins.formatting.clang_format, - -- JS/TS - null_ls.builtins.formatting.prettier, - } -}) - --- Setup lspconfig. - ---- Use a loop to conveniently call 'setup' on multiple servers and --- map buffer local keybindings when the language server attaches -local servers = { 'pyright', 'rust_analyzer', 'tsserver', 'clangd' } -for _, lsp in ipairs(servers) do - nvim_lsp[lsp].setup { - capabilities = coq.lsp_ensure_capabilities(), - on_attach = function(client, bufnr) - client.resolved_capabilities.document_formatting = false - - require "lsp_signature".on_attach() - - -- Mappings. - local opts = { noremap=true, silent=true } - - -- See `:help vim.lsp.*` for documentation on any of the below functions - buf_set_keymap('n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<CR>', opts) - buf_set_keymap('n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>', opts) - buf_set_keymap('n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>', opts) - buf_set_keymap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts) - buf_set_keymap('n', '<space>e', '<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>', opts) - end, - flags = { - debounce_text_changes = 150, - } - } -end - -nvim_lsp["null-ls"].setup({ - on_attach = function(client) - if client.resolved_capabilities.document_formatting then - buf_set_keymap('n', '<A-f>', '<cmd>lua vim.lsp.buf.formatting_sync()<cr>', opts) - vim.cmd "autocmd BufWritePre <buffer> lua vim.lsp.buf.formatting_seq_sync()" - end - end -}) - -trouble.setup({ - use_lsp_diagnostic_signs = true, - auto_close = true, - auto_open = true -}) - |