我的neovim设置,但我不知道如何修复错误



你好,我从'https://github.com/craftzdog/dotfiles-public'设置了我的neovim。但是发生了一个错误,我不知道如何解决它。请帮帮我!!

错误是'尝试调用字段'init_lsp_saga' (nil值)'

lspsaga.rc.lua

local status, saga = pcall(require, "lspsaga")
if (not status) then return end
saga.init_lsp_saga {
server_filetype_map = {
typescript = 'typescript'
}
}
local opts = { noremap = true, silent = true }
vim.keymap.set('n', '<C-j>', '<Cmd>Lspsaga diagnostic_jump_next<CR>', opts)
vim.keymap.set('n', 'K', '<Cmd>Lspsaga hover_doc<CR>', opts)
vim.keymap.set('n', 'gd', '<Cmd>Lspsaga lsp_finder<CR>', opts)
-- vim.keymap.set('i', '<C-k>', '<Cmd>Lspsaga signature_help<CR>', opts)
vim.keymap.set('i', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<CR>', opts)
vim.keymap.set('n', 'gp', '<Cmd>Lspsaga peek_definition<CR>', opts)
vim.keymap.set('n', 'gr', '<Cmd>Lspsaga rename<CR>', opts)

如何修复这个错误?

因为您使用的是最新版本(比0.2.3更新,有以下更改PR: https://github.com/glepnir/lspsaga.nvim/pull/586参见init.lua)

中的具体更改你需要做saga。Setup而不是saga。Init_lsp_sag和您应该可以开始了!

local status, saga = pcall(require, "lspsaga")
if (not status) then return end
saga.setup {
server_filetype_map = {
typescript = 'typescript'
}
}

不是

local status, saga = pcall(require, "lspsaga")
if (not status) then return end
saga.init_lsp_saga {
server_filetype_map = {
typescript = 'typescript'
}
}

似乎lsp-saga已经中断了变化我使用这个提交并且工作得很好。

目前,lsp-saga有很多重构变化,我更喜欢使用旧版本,直到它稳定。"lspsaga.nvim" {"commit"b7b4777"},

相关内容