aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/lua/vim.lua
diff options
context:
space:
mode:
authorLewis Russell <lewis6991@gmail.com>2022-02-05 18:00:58 +0000
committerLewis Russell <lewis6991@gmail.com>2022-02-05 21:46:04 +0000
commitb518b577ea89439359dc9faea5ec1bf341c50e52 (patch)
tree2f21f3ff93e8c73f5b9eef14905f2e8f7e9699b6 /src/nvim/lua/vim.lua
parent92e92f02e7106fcad1597bb8f0edf1e43186a07f (diff)
downloadrneovim-b518b577ea89439359dc9faea5ec1bf341c50e52.tar.gz
rneovim-b518b577ea89439359dc9faea5ec1bf341c50e52.tar.bz2
rneovim-b518b577ea89439359dc9faea5ec1bf341c50e52.zip
fix(lua): restore priority of the preloader
Neovim currently places its own loader for searching runtime files at the front of `package.loaders`. This prevents any preloaders in `package.preload` from being used. This change fixes that by moving the default package preloader to run before Neovim's loader. For example, LuaJIT provides preloaders for the built-in modules `ffi` and `bit`, so this optimisation will improve the loading of those.
Diffstat (limited to 'src/nvim/lua/vim.lua')
-rw-r--r--src/nvim/lua/vim.lua3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/nvim/lua/vim.lua b/src/nvim/lua/vim.lua
index 731e7d8d36..f5993c3f55 100644
--- a/src/nvim/lua/vim.lua
+++ b/src/nvim/lua/vim.lua
@@ -87,7 +87,8 @@ function vim._load_package(name)
return nil
end
-table.insert(package.loaders, 1, vim._load_package)
+-- Insert vim._load_package after the preloader at position 2
+table.insert(package.loaders, 2, vim._load_package)
-- These are for loading runtime modules lazily since they aren't available in
-- the nvim binary as specified in executor.c