mirror of https://github.com/NvChad/NvChad
rm un-needed lazyload function
parent
936131c00a
commit
08453985ca
@ -1,79 +0,0 @@
|
|||||||
local M = {}
|
|
||||||
local autocmd = vim.api.nvim_create_autocmd
|
|
||||||
|
|
||||||
-- require("packer").loader(tb.plugins)
|
|
||||||
-- This must be used for plugins that need to be loaded just after a file
|
|
||||||
-- ex : treesitter, lspconfig etc
|
|
||||||
M.lazy_load = function(tb)
|
|
||||||
autocmd(tb.events, {
|
|
||||||
group = vim.api.nvim_create_augroup(tb.augroup_name, {}),
|
|
||||||
callback = function()
|
|
||||||
if tb.condition() then
|
|
||||||
vim.api.nvim_del_augroup_by_name(tb.augroup_name)
|
|
||||||
|
|
||||||
-- dont defer for treesitter as it will show slow highlighting
|
|
||||||
-- This deferring only happens only when we do "nvim filename"
|
|
||||||
if tb.plugin ~= "nvim-treesitter" then
|
|
||||||
vim.defer_fn(function()
|
|
||||||
require("packer").loader(tb.plugin)
|
|
||||||
if tb.plugin == "nvim-lspconfig" then
|
|
||||||
vim.cmd "silent! do FileType"
|
|
||||||
end
|
|
||||||
end, 0)
|
|
||||||
else
|
|
||||||
require("packer").loader(tb.plugin)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- load certain plugins only when there's a file opened in the buffer
|
|
||||||
-- if "nvim filename" is executed -> load the plugin after nvim gui loads
|
|
||||||
-- This gives an instant preview of nvim with the file opened
|
|
||||||
|
|
||||||
M.on_file_open = function(plugin_name)
|
|
||||||
M.lazy_load {
|
|
||||||
events = { "BufRead", "BufWinEnter", "BufNewFile" },
|
|
||||||
augroup_name = "BeLazyOnFileOpen" .. plugin_name,
|
|
||||||
plugin = plugin_name,
|
|
||||||
condition = function()
|
|
||||||
local file = vim.fn.expand "%"
|
|
||||||
return file ~= "NvimTree_1" and file ~= "[packer]" and file ~= ""
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
M.packer_cmds = {
|
|
||||||
"PackerSnapshot",
|
|
||||||
"PackerSnapshotRollback",
|
|
||||||
"PackerSnapshotDelete",
|
|
||||||
"PackerInstall",
|
|
||||||
"PackerUpdate",
|
|
||||||
"PackerSync",
|
|
||||||
"PackerClean",
|
|
||||||
"PackerCompile",
|
|
||||||
"PackerStatus",
|
|
||||||
"PackerProfile",
|
|
||||||
"PackerLoad",
|
|
||||||
}
|
|
||||||
|
|
||||||
M.treesitter_cmds = { "TSInstall", "TSBufEnable", "TSBufDisable", "TSEnable", "TSDisable", "TSModuleInfo" }
|
|
||||||
M.mason_cmds = { "Mason", "MasonInstall", "MasonInstallAll", "MasonUninstall", "MasonUninstallAll", "MasonLog" }
|
|
||||||
|
|
||||||
M.gitsigns = function()
|
|
||||||
autocmd({ "BufRead" }, {
|
|
||||||
group = vim.api.nvim_create_augroup("GitSignsLazyLoad", { clear = true }),
|
|
||||||
callback = function()
|
|
||||||
vim.fn.system("git -C " .. vim.fn.expand "%:p:h" .. " rev-parse")
|
|
||||||
if vim.v.shell_error == 0 then
|
|
||||||
vim.api.nvim_del_augroup_by_name "GitSignsLazyLoad"
|
|
||||||
vim.schedule(function()
|
|
||||||
require("packer").loader "gitsigns.nvim"
|
|
||||||
end)
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
return M
|
|
Loading…
Reference in New Issue