如何修复Nvim报错'E5113: Error while calling lua chunk'?
问题解决步骤
1. 修复Telescope内置函数拼写错误
启动错误的核心是你在telescope.lua中使用了不存在的builtin.old_files,正确的函数名是builtin.oldfiles(无下划线)。修改后的telescope.lua内容如下:
local builtin = require('telescope.builtin') vim.keymap.set('n', '<c-p>', builtin.find_files, {}) vim.keymap.set('n', '<Space><Space>', builtin.oldfiles, {}) -- 修正此处的函数名 vim.keymap.set('n', '<Space>fg', builtin.live_grep, {}) vim.keymap.set('n', '<Space>fh', builtin.help_tags, {})
2. 适配Lazy.nvim懒加载机制(可选但推荐)
当前直接在plugin_config中加载Telescope配置,可能出现插件未加载完成就执行配置的问题。更规范的做法是将Telescope配置放在插件的config字段中,让Lazy.nvim在插件加载后自动执行:
修改~/.config/nvim/lua/core/plugins.lua中的Telescope插件定义:
{ 'nvim-telescope/telescope.nvim', tag = '0.1.8', dependencies = { {'nvim-lua/plenary.nvim'} }, config = function() local builtin = require('telescope.builtin') vim.keymap.set('n', '<c-p>', builtin.find_files, {}) vim.keymap.set('n', '<Space><Space>', builtin.oldfiles, {}) vim.keymap.set('n', '<Space>fg', builtin.live_grep, {}) vim.keymap.set('n', '<Space>fh', builtin.help_tags, {}) end },
修改后可以删除~/.config/nvim/lua/core/plugin_config/telescope.lua,并从plugin_config/init.lua中移除require("core.plugin_config.telescope")这一行。
3. 关于Treesitter的提示说明
启动时出现的[nvim-treesitter] [0/7] Downloading tree-sitter-markdown_inline...不是错误,是Treesitter自动下载你指定语法解析器的正常提示,等待下载完成后即可正常使用,无需额外处理。
完成以上修改后,重新启动Neovim,错误即可消失。
内容的提问来源于stack exchange,提问作者eiken
相关产品推荐
相关产品推荐

