From 1740ddafc246fa2a3e939d5e7b41e32d3e88ba86 Mon Sep 17 00:00:00 2001 From: Christian Nieves Date: Mon, 26 Dec 2022 15:00:52 -0600 Subject: [PATCH] fix rust mappings --- vim/.vim/lua/config/lsp.lua | 70 +++++++++++++++++++++++-------------- vim/.vim/lua/plugins.lua | 4 ++- 2 files changed, 47 insertions(+), 27 deletions(-) diff --git a/vim/.vim/lua/config/lsp.lua b/vim/.vim/lua/config/lsp.lua index 1199d82..396c0a3 100644 --- a/vim/.vim/lua/config/lsp.lua +++ b/vim/.vim/lua/config/lsp.lua @@ -12,16 +12,6 @@ require("mason-lspconfig").setup({ ensure_installed = { "sumneko_lua", "rust_analyzer" } }) -local lsp = require('lsp-zero') -lsp.preset('manual-setup') - -lsp.nvim_workspace() -lsp.setup() - --- Initialize rust_analyzer with rust-tools -local rust_lsp = lsp.build_options('rust_analyzer', {}) -require('rust-tools').setup({server = rust_lsp}) - local lspconfig = require("lspconfig") local configs = require("lspconfig.configs") if use_google() then @@ -110,24 +100,24 @@ local on_attach = function(client, bufnr) end lsp_status.on_attach(client) + + local opts = { noremap = true, silent = true } + vim.api.nvim_set_keymap("n", "rn", "lua vim.lsp.buf.rename()", opts) + vim.api.nvim_set_keymap("n", "ca", "lua vim.lsp.buf.code_action()", opts) + vim.api.nvim_set_keymap("n", "L", "lua vim.lsp.buf.hover()", opts) + vim.api.nvim_set_keymap("n", "g0", "lua vim.lsp.buf.document_symbol()", opts) + vim.api.nvim_set_keymap("n", "gW", "lua vim.lsp.buf.workspace_symbol()", opts) + vim.api.nvim_set_keymap("n", "gd", "lua vim.lsp.buf.definition()", opts) + vim.api.nvim_set_keymap("n", "gD", "tab split | lua vim.lsp.buf.definition()", opts) + -- vim.api.nvim_buf_set_keymap(bufnr, "n", "gD", "lua vim.lsp.buf.declaration()", opts) + vim.api.nvim_set_keymap("n", "gi", "lua vim.lsp.buf.implementation()", opts) + vim.api.nvim_set_keymap("n", "grf", "lua vim.lsp.buf.references()", opts) -- diagnostics controls references + vim.api.nvim_set_keymap("n", "", "lua vim.lsp.buf.signature_help()", opts) + vim.api.nvim_set_keymap("i", "", "lua vim.lsp.buf.signature_help()", opts) + + vim.api.nvim_set_keymap("n", "gt", "lua vim.lsp.buf.type_definition()", opts) end -local opts = { noremap = true, silent = true } -vim.api.nvim_set_keymap("n", "rn", "lua vim.lsp.buf.rename()", opts) -vim.api.nvim_set_keymap("n", "ca", "lua vim.lsp.buf.code_action()", opts) -vim.api.nvim_set_keymap("n", "L", "lua vim.lsp.buf.hover()", opts) -vim.api.nvim_set_keymap("n", "g0", "lua vim.lsp.buf.document_symbol()", opts) -vim.api.nvim_set_keymap("n", "gW", "lua vim.lsp.buf.workspace_symbol()", opts) -vim.api.nvim_set_keymap("n", "gd", "lua vim.lsp.buf.definition()", opts) -vim.api.nvim_set_keymap("n", "gD", "tab split | lua vim.lsp.buf.definition()", opts) --- vim.api.nvim_buf_set_keymap(bufnr, "n", "gD", "lua vim.lsp.buf.declaration()", opts) -vim.api.nvim_set_keymap("n", "gi", "lua vim.lsp.buf.implementation()", opts) -vim.api.nvim_set_keymap("n", "grf", "lua vim.lsp.buf.references()", opts) -- diagnostics controls references -vim.api.nvim_set_keymap("n", "", "lua vim.lsp.buf.signature_help()", opts) -vim.api.nvim_set_keymap("i", "", "lua vim.lsp.buf.signature_help()", opts) - -vim.api.nvim_set_keymap("n", "gt", "lua vim.lsp.buf.type_definition()", opts) - local capabilities = require('cmp_nvim_lsp').default_capabilities(vim.lsp.protocol.make_client_capabilities()) capabilities['codeLens'] = {dynamicRegistration=false} @@ -178,6 +168,7 @@ lspconfig.sumneko_lua.setup({ }, }) + if use_google() then capabilities = require('cmp_nvim_ciderlsp').update_capabilities(capabilities) capabilities.workspace.codeLens = {refreshSupport=true} @@ -407,6 +398,33 @@ cmp.setup({ }, }) +local lsp = require('lsp-zero') +-- lsp.preset('lsp-compe') +lsp.set_preferences({ + suggest_lsp_servers = true, + setup_servers_on_start = true, + set_lsp_keymaps = false, + configure_diagnostics = true, + cmp_capabilities = true, + manage_nvim_cmp = true, + call_servers = 'local', + sign_icons = { + error = '✘', + warn = '▲', + hint = '⚑', + info = '' + } +}) + +lsp.nvim_workspace() +lsp.on_attach(on_attach) +lsp.setup() + +-- Initialize rust_analyzer with rust-tools +local rust_lsp = lsp.build_options('rust_analyzer', {}) +require('rust-tools').setup({ server = rust_lsp, }) + + vim.cmd([[ augroup CmpZsh au! diff --git a/vim/.vim/lua/plugins.lua b/vim/.vim/lua/plugins.lua index 78f8b13..e793969 100644 --- a/vim/.vim/lua/plugins.lua +++ b/vim/.vim/lua/plugins.lua @@ -208,6 +208,8 @@ require('packer').startup(function(use) use 'ntpeters/vim-better-whitespace' use 'junegunn/fzf.vim' + use { 'junegunn/fzf', run = ":call fzf#install()" } + vim.opt.rtp:append(os.getenv("HOME") .. "/.fzf") use 'nathanaelkane/vim-indent-guides' @@ -221,7 +223,7 @@ require('packer').startup(function(use) use 'udalov/kotlin-vim' use 'tpope/vim-obsession' - use 'Valloric/MatchTagAlways' + -- use 'Valloric/MatchTagAlways' use { 'wesQ3/vim-windowswap', setup = [[ vim.g.windowswap_map_keys = 0 ]]