Compare commits

..

2 Commits

Author SHA1 Message Date
f164ec976d virtual lines fix 2022-12-26 15:25:46 -06:00
1740ddafc2 fix rust mappings 2022-12-26 15:00:52 -06:00
3 changed files with 66 additions and 46 deletions

View File

@ -1,6 +1,6 @@
local use_google = require("utils").use_google
local tprint = require("utils").tprint
local dump = require("utils").dump
-- local tprint = require("utils").tprint
-- local dump = require("utils").dump
local log = require("utils").log
local notify = require 'notify'
@ -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", "<leader>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts)
vim.api.nvim_set_keymap("n", "<leader>ca", "<cmd>lua vim.lsp.buf.code_action()<CR>", opts)
vim.api.nvim_set_keymap("n", "L", "<cmd>lua vim.lsp.buf.hover()<CR>", opts)
vim.api.nvim_set_keymap("n", "g0", "<cmd>lua vim.lsp.buf.document_symbol()<CR>", opts)
vim.api.nvim_set_keymap("n", "gW", "<cmd>lua vim.lsp.buf.workspace_symbol()<CR>", opts)
vim.api.nvim_set_keymap("n", "gd", "<cmd>lua vim.lsp.buf.definition()<CR>", opts)
vim.api.nvim_set_keymap("n", "gD", "<cmd>tab split | lua vim.lsp.buf.definition()<CR>", opts)
-- vim.api.nvim_buf_set_keymap(bufnr, "n", "gD", "<cmd>lua vim.lsp.buf.declaration()<CR>", opts)
vim.api.nvim_set_keymap("n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts)
vim.api.nvim_set_keymap("n", "grf", "<cmd>lua vim.lsp.buf.references()<CR>", opts) -- diagnostics controls references
vim.api.nvim_set_keymap("n", "<C-g>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
vim.api.nvim_set_keymap("i", "<C-g>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
vim.api.nvim_set_keymap("n", "gt", "<cmd>lua vim.lsp.buf.type_definition()<CR>", opts)
end
local opts = { noremap = true, silent = true }
vim.api.nvim_set_keymap("n", "<leader>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts)
vim.api.nvim_set_keymap("n", "<leader>ca", "<cmd>lua vim.lsp.buf.code_action()<CR>", opts)
vim.api.nvim_set_keymap("n", "L", "<cmd>lua vim.lsp.buf.hover()<CR>", opts)
vim.api.nvim_set_keymap("n", "g0", "<cmd>lua vim.lsp.buf.document_symbol()<CR>", opts)
vim.api.nvim_set_keymap("n", "gW", "<cmd>lua vim.lsp.buf.workspace_symbol()<CR>", opts)
vim.api.nvim_set_keymap("n", "gd", "<cmd>lua vim.lsp.buf.definition()<CR>", opts)
vim.api.nvim_set_keymap("n", "gD", "<cmd>tab split | lua vim.lsp.buf.definition()<CR>", opts)
-- vim.api.nvim_buf_set_keymap(bufnr, "n", "gD", "<cmd>lua vim.lsp.buf.declaration()<CR>", opts)
vim.api.nvim_set_keymap("n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts)
vim.api.nvim_set_keymap("n", "grf", "<cmd>lua vim.lsp.buf.references()<CR>", opts) -- diagnostics controls references
vim.api.nvim_set_keymap("n", "<C-g>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
vim.api.nvim_set_keymap("i", "<C-g>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
vim.api.nvim_set_keymap("n", "gt", "<cmd>lua vim.lsp.buf.type_definition()<CR>", 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}
@ -358,17 +349,7 @@ cmp.setup({
cmp.config.compare.offset,
cmp.config.compare.exact,
cmp.config.compare.score,
function(entry1, entry2)
local _, entry1_under = entry1.completion_item.label:find("^_+")
local _, entry2_under = entry2.completion_item.label:find("^_+")
entry1_under = entry1_under or 0
entry2_under = entry2_under or 0
if entry1_under > entry2_under then
return false
elseif entry1_under < entry2_under then
return true
end
end,
require "cmp-under-comparator".under,
cmp.config.compare.kind,
cmp.config.compare.sort_text,
cmp.config.compare.length,
@ -407,6 +388,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!

View File

@ -1,3 +1,18 @@
vim.diagnostic.config({
virtual_text = {
prefix = '', -- Could be '●', '▎', 'x'
},
virtual_lines = false,
severity_sort = true,
})
vim.keymap.set(
"",
"<Leader>l",
require("lsp_lines").toggle,
{ desc = "Toggle lsp_lines" }
)
-- Diagnostics
require("trouble").setup({
signs = {

View File

@ -76,6 +76,7 @@ require('packer').startup(function(use)
"tzachar/cmp-tabnine", run = "./install.sh",
disable = use_google(),
}
use { 'ErichDonGubler/lsp_lines.nvim', config = [[ require("lsp_lines").setup() ]] }
use {
"williamboman/mason.nvim",
"williamboman/mason-lspconfig.nvim",
@ -100,7 +101,6 @@ require('packer').startup(function(use)
use 'hrsh7th/vim-vsnip'
use 'kosayoda/nvim-lightbulb'
use {'andymass/vim-matchup', event = 'VimEnter'}
use { 'ErichDonGubler/lsp_lines.nvim', config = [[ require("lsp_lines").setup() ]] }
use 'jghauser/mkdir.nvim'
use { 'simrat39/symbols-outline.nvim', config = [[ require("config.symbols-outline") ]] }
@ -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 ]]
@ -248,8 +250,3 @@ vim.opt.shortmess:append("c")
vim.opt.spell = true
vim.opt.spelllang = { 'en_us' }
-- redundant w/ lsp_lines
vim.diagnostic.config({
virtual_text = false,
})