comparison dot_config/nvim/init.lua @ 318:93b8df942a20

Update LSP bindings to work with telescope
author Zeger Van de Vannet <zegervdv@me.com>
date Thu, 17 Dec 2020 15:00:49 +0100
parents 7d73e664f702
children
comparison
equal deleted inserted replaced
317:7d73e664f702 318:93b8df942a20
84 noremap = true 84 noremap = true
85 end 85 end
86 vim.fn.nvim_buf_set_keymap(0, mode, key, result, {noremap=noremap, silent=true}) 86 vim.fn.nvim_buf_set_keymap(0, mode, key, result, {noremap=noremap, silent=true})
87 end 87 end
88 88
89 vim.api.nvim_command('autocmd CursorHold <buffer> lua vim.lsp.diagnostic.show_line_diagnostics()') 89 -- vim.api.nvim_command('autocmd CursorHold <buffer> lua vim.lsp.diagnostic.show_line_diagnostics()')
90 mapper('n', '<CR>', '<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>')
90 mapper('n', 'gd', '<cmd>lua vim.lsp.buf.declaration()<CR>') 91 mapper('n', 'gd', '<cmd>lua vim.lsp.buf.declaration()<CR>')
91 mapper('n', '<c-]>', '<cmd>lua vim.lsp.buf.definition()<CR>') 92 mapper('n', '<c-]>', '<cmd>lua vim.lsp.buf.definition()<CR>')
92 mapper('n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>') 93 mapper('n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>')
93 mapper('n', 'gD', '<cmd>lua vim.lsp.buf.implementation()<CR>') 94 mapper('n', 'gD', '<cmd>lua vim.lsp.buf.implementation()<CR>')
94 mapper('n', '1gD', '<cmd>lua vim.lsp.buf.type_definition()<CR>') 95 mapper('n', '1gD', '<cmd>lua vim.lsp.buf.type_definition()<CR>')
95 mapper('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>') 96 -- mapper('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>')
97 mapper('n', 'gr', "<cmd>lua require'telescope.builtin'.lsp_references()<CR>")
96 mapper('n', 'g0', '<cmd>lua vim.lsp.buf.document_symbol()<CR>') 98 mapper('n', 'g0', '<cmd>lua vim.lsp.buf.document_symbol()<CR>')
97 mapper('i', '<c-l>', '<cmd>lua vim.lsp.buf.signature_help()<CR>') 99 mapper('i', '<c-l>', '<cmd>lua vim.lsp.buf.signature_help()<CR>')
98 mapper('n', '<leader>f', '<cmd>lua vim.lsp.buf.code_action()<CR>') 100 mapper('n', '<leader>f', '<cmd>lua vim.lsp.buf.code_action()<CR>')
99 mapper('n', '<c-p>', '<cmd>lua vim.lsp.buf.formatting()<CR>') 101 mapper('n', '<c-p>', '<cmd>lua vim.lsp.buf.formatting()<CR>')
100 mapper("i", "<c-n>", "<Plug>(completion_trigger)", false) 102 mapper("i", "<c-n>", "<Plug>(completion_trigger)", false)
101 mapper("i", "<c-j>", "<Plug>(completion_next_source)", false) 103 mapper("i", "<c-j>", "<Plug>(completion_next_source)", false)
102 mapper("i", "<c-k>", "<Plug>(completion_prev_source)", false) 104 mapper("i", "<c-k>", "<Plug>(completion_prev_source)", false)
103 end 105 end
104 106
107
105 vim.lsp.handlers["textDocument/formatting"] = function(err, _, result, _, bufnr) 108 vim.lsp.handlers["textDocument/formatting"] = function(err, _, result, _, bufnr)
106 if err ~= nil or result == nil then 109 if err ~= nil or result == nil then
107 return 110 return
108 end 111 end
109 if not vim.api.nvim_buf_get_option(bufnr, "modified") then 112 if not vim.api.nvim_buf_get_option(bufnr, "modified") then
110 local view = vim.fn.winsaveview() 113 local view = vim.fn.winsaveview()
111 vim.lsp.util.apply_text_edits(result, bufnr) 114 vim.lsp.util.apply_text_edits(result, bufnr)
112 -- Fix to reload Treesitter 115 -- Fix to reload Treesitter
113 vim.api.nvim_command("noautocmd edit") 116 -- vim.api.nvim_command("edit")
114 vim.fn.winrestview(view) 117 vim.fn.winrestview(view)
115 end 118 end
116 end 119 end
117 120
118 lsp.pyls.setup{ 121 lsp.pyls.setup{