找不到 neovim init.lua 模块 "lua.plguins"

neovim init.lua module "lua.plguins" not found

我在配置neovim 我在C:\Users\wupan\AppData\Local\nvim\init.lua

中添加了配置文件
require("lua.plugins")

和 C:\Users\wupan\AppData\Local\nvim\lua\plugins.lua

return require('packer').startup(function()
use "wbthomason/packer.nvim"
end)

启动neovim后

Error detected while processing C:\Users\wupan\AppData\Local\nvim\init.lua:
E5113: Error while calling lua chunk: C:\Users\wupan\AppData\Local\nvim\init.lua:1: module 'lua.plugins' not found:
    no field package.preload['lua.plugins']
    no file '.\lua\plugins.lua'
    no file 'C:\Users\wupan\scoop\apps\neovim\current\bin\lua\lua\plugins.lua'
    no file 'C:\Users\wupan\scoop\apps\neovim\current\bin\lua\lua\plugins\init.lua'
    no file '.\lua\plugins.dll'
    no file 'C:\Users\wupan\scoop\apps\neovim\current\bin\lua\plugins.dll'
    no file 'C:\Users\wupan\scoop\apps\neovim\current\bin\loadall.dll'
    no file '.\lua.dll'
    no file 'C:\Users\wupan\scoop\apps\neovim\current\bin\lua.dll'
    no file 'C:\Users\wupan\scoop\apps\neovim\current\bin\loadall.dll'
stack traceback:
    [C]: in function 'require'
    C:\Users\wupan\AppData\Local\nvim\init.lua:1: in main chunk
Press ENTER or type command to continue

请问为什么

我尝试安装 Lua 测试需求

scoop install lua

C:\Users\wupan\code\lua\test.lua

require("hello")

C:\Users\wupan\code\lua\hello.lua

print("hello world")

也有问题

C:\Users\wupan\scoop\apps\lua\current\lua54.exe: .\test.lua:1: module 'hello' not found:
    no field package.preload['hello']
    no file 'C:\Users\wupan\scoop\apps\lua\current'
    no file 'C:\Users\wupan\scoop\apps\lua\current'
stack traceback:
    [C]: in function 'require'
    .\test.lua:1: in main chunk
    [C]: in ?

问题分析

让我们使用您给我们的以下示例:

C:\Users\wupan\AppData\Local\nvim\init.lua

require("lua.plugins")

C:\Users\wupan\AppData\Local\nvim\lua\plugins.lua

return require('packer').startup(function()
    use "wbthomason/packer.nvim"
end)

现在让我们看看您的错误消息:

    no file 'C:\Users\wupan\scoop\apps\neovim\current\bin\lua\lua\plugins.lua'

重要的部分是这里的bin\lua\lua。这是因为你的 require("lua.plugins") 开始在您的运行时之一中查找目录 路径(有关详细信息,请参阅 :h rtp)。

解决方案

您只需要修复您的内容 C:\Users\wupan\AppData\Local\nvim\init.lua 至:

require("plugins")

因为 neovim 会查找一个名为 plugins 的目录 C:\Users\wupan\scoop\apps\neovim\current\bin\lua 例如,因为它在 您的运行时路径。

小记

您可以更改您的内容 C:\Users\wupan\AppData\Local\nvim\lua\plugins.lua 至:

require('packer').startup(function()
    use "wbthomason/packer.nvim"
end)

或者我是怎么做到的:

local packer = require('packer')

packer.startup(function(use)
    use 'wbthomason/packer.nvim'
end)

在我看来,这使它更具可读性:)