|
@@ -53,6 +53,9 @@ require("lazy").setup({
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
|
|
+ -- Show definitions and referenes in a floating window
|
|
|
|
|
+ 'rmagatti/goto-preview',
|
|
|
|
|
+
|
|
|
-- Autocompletion
|
|
-- Autocompletion
|
|
|
{
|
|
{
|
|
|
'hrsh7th/nvim-cmp',
|
|
'hrsh7th/nvim-cmp',
|
|
@@ -267,6 +270,13 @@ vim.keymap.set('n', '<Leader>dn', vim.diagnostic.goto_next, { desc = 'Go to next
|
|
|
vim.keymap.set('n', '<leader>de', vim.diagnostic.open_float, { desc = 'Open floating diagnostic message' })
|
|
vim.keymap.set('n', '<leader>de', vim.diagnostic.open_float, { desc = 'Open floating diagnostic message' })
|
|
|
vim.keymap.set('n', '<leader>dl', vim.diagnostic.setloclist, { desc = 'Open diagnostics list' })
|
|
vim.keymap.set('n', '<leader>dl', vim.diagnostic.setloclist, { desc = 'Open diagnostics list' })
|
|
|
|
|
|
|
|
|
|
+require('goto-preview').setup {
|
|
|
|
|
+ default_mappings = false,
|
|
|
|
|
+ references = { -- Configure the telescope UI for slowing the references cycling window.
|
|
|
|
|
+ telescope = require("telescope.themes").get_dropdown({ hide_preview = false })
|
|
|
|
|
+ },
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
-- Configure LSP
|
|
-- Configure LSP
|
|
|
-- This function gets run when an LSP connects to a particular buffer.
|
|
-- This function gets run when an LSP connects to a particular buffer.
|
|
|
local on_attach = function(_, bufnr)
|
|
local on_attach = function(_, bufnr)
|
|
@@ -287,8 +297,9 @@ local on_attach = function(_, bufnr)
|
|
|
nmap('<leader>rn', vim.lsp.buf.rename, '[R]e[n]ame')
|
|
nmap('<leader>rn', vim.lsp.buf.rename, '[R]e[n]ame')
|
|
|
nmap('<leader>ca', vim.lsp.buf.code_action, '[C]ode [A]ction')
|
|
nmap('<leader>ca', vim.lsp.buf.code_action, '[C]ode [A]ction')
|
|
|
|
|
|
|
|
- nmap('gd', vim.lsp.buf.definition, '[G]oto [D]efinition')
|
|
|
|
|
- nmap('gr', require('telescope.builtin').lsp_references, '[G]oto [R]eferences')
|
|
|
|
|
|
|
+ nmap('gd', require('goto-preview').goto_preview_definition, '[G]oto [D]efinition')
|
|
|
|
|
+ nmap('gr', require('goto-preview').goto_preview_references, '[G]oto [R]eferences')
|
|
|
|
|
+ nmap('gc', require('goto-preview').close_all_win, 'Close all preview windows')
|
|
|
nmap('gI', vim.lsp.buf.implementation, '[G]oto [I]mplementation')
|
|
nmap('gI', vim.lsp.buf.implementation, '[G]oto [I]mplementation')
|
|
|
nmap('<leader>D', vim.lsp.buf.type_definition, 'Type [D]efinition')
|
|
nmap('<leader>D', vim.lsp.buf.type_definition, 'Type [D]efinition')
|
|
|
nmap('<leader>ds', require('telescope.builtin').lsp_document_symbols, '[D]ocument [S]ymbols')
|
|
nmap('<leader>ds', require('telescope.builtin').lsp_document_symbols, '[D]ocument [S]ymbols')
|