fix(exrc): exrc knows its own location (#34638)

fix(exrc): lua exrc files know their location

Problem:
'exrc' files are inherently bound to their location / workspace and
therefore require to "know" their location on the filesystem. However,
currently using `debug.getinfo(1, 'S')` returns `"<nvim>"`.

Solution:
Include the filepath as chunkname in `loadstring()` and `nlua_exec()`.
This commit is contained in:
Yochem van Rosmalen
2025-06-29 17:19:10 +02:00
committed by GitHub
parent 2f95abddfa
commit f7c939fa7a
12 changed files with 24 additions and 11 deletions

View File

@@ -956,7 +956,7 @@ do
local trusted = vim.secure.read(file) --[[@as string|nil]]
if trusted then
if vim.endswith(file, '.lua') then
assert(loadstring(trusted))()
assert(loadstring(trusted, '@' .. file))()
else
vim.api.nvim_exec2(trusted, {})
end