-- Eryn Wells local map = vim.keymap.set vim.g.mapleader = "," local options = { silent = true } -- Allow starting commands with ; instead of typing Shift-;. Save lots of keypresses! map('n', ';', ':') map('n', '', 'h', options) map('n', '', 'j', options) map('n', '', 'k', options) map('n', '', 'l', options) map('n', '', ':bn', options) map('n', '', ':bp', options) map('n', '', function() vim.cmd [[ setlocal invhlsearch ]] end, options) -- -- Language Server mappings -- -- Basic diagnostic mappings, these will navigate to or display diagnostics local diagnostic_options = { noremap=true, silent=true } map('n', 'd', vim.diagnostic.open_float, diagnostic_options) map('n', '[d', vim.diagnostic.goto_prev, diagnostic_options) map('n', ']d', vim.diagnostic.goto_next, diagnostic_options) map('n', 'q', vim.diagnostic.setloclist, diagnostic_options) function set_up_local_lsp_mappings(buffer_number) local options = { noremap=true, silent=true, buffer=buffer_number } map('n', 'gD', vim.lsp.buf.declaration, options) map('n', 'gd', vim.lsp.buf.definition, options) map('n', 'gk', vim.lsp.buf.hover, options) map('n', 'gi', vim.lsp.buf.implementation, options) map('n', 'gK', vim.lsp.buf.signature_help, options) map('n', 'D', vim.lsp.buf.type_definition, options) map('n', 'rn', vim.lsp.buf.rename, options) map('n', 'ca', vim.lsp.buf.code_action, options) map('n', 'gr', vim.lsp.buf.references, options) -- Replace W in .vimrc.common map('n', 'W', function() vim.lsp.buf.format { async = true } end, options) end