diff options
| author | Yochem van Rosmalen <git@yochem.nl> | 2025-05-19 15:11:45 +0200 |
|---|---|---|
| committer | Yochem van Rosmalen <git@yochem.nl> | 2025-05-19 15:16:36 +0200 |
| commit | dc6fc11b8753111a80f537dc762152d9adad2518 (patch) | |
| tree | ab56307913c75577d14ae62fac222a081421d660 /runtime/lua/vim/_defaults.lua | |
| parent | dc6885dc24c91f6465de985498cd02deed1aa0f8 (diff) | |
| download | rneovim-dc6fc11b8753111a80f537dc762152d9adad2518.tar.gz rneovim-dc6fc11b8753111a80f537dc762152d9adad2518.tar.bz2 rneovim-dc6fc11b8753111a80f537dc762152d9adad2518.zip | |
fix(defaults): start exrc search from parent directory
Problem:
The exrc file in the current directory is executed twice, here and in
`do_exrc_initalization()`.
Solution:
Start search from parent directory. Let core handle exrc in current
directory.
Diffstat (limited to 'runtime/lua/vim/_defaults.lua')
| -rw-r--r-- | runtime/lua/vim/_defaults.lua | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/runtime/lua/vim/_defaults.lua b/runtime/lua/vim/_defaults.lua index d0b3fea389..9ae2412350 100644 --- a/runtime/lua/vim/_defaults.lua +++ b/runtime/lua/vim/_defaults.lua @@ -928,13 +928,17 @@ do vim.api.nvim_create_autocmd('VimEnter', { group = vim.api.nvim_create_augroup('nvim.find_exrc', {}), - desc = 'Find project-local configuration', + desc = 'Find exrc files in parent directories', callback = function() if vim.o.exrc then - local files = vim.fs.find( - { '.nvim.lua', '.nvimrc', '.exrc' }, - { type = 'file', upward = true, limit = math.huge } - ) + -- Start from parent directory, as exrc file in the current + -- directory is already loaded in do_exrc_initalization(). + local files = vim.fs.find({ '.nvim.lua', '.nvimrc', '.exrc' }, { + type = 'file', + upward = true, + limit = math.huge, + path = vim.fs.dirname(vim.uv.cwd()), + }) for _, file in ipairs(files) do local trusted = vim.secure.read(file) --[[@as string|nil]] if trusted then |