remove lazyload cringe and let packer do it
This commit is contained in:
parent
730c59fc59
commit
805f587816
2 changed files with 31 additions and 97 deletions
|
@ -1,53 +1,4 @@
|
|||
local M = {}
|
||||
function M.lazy_load(tb)
|
||||
vim.api.nvim_create_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
|
||||
|
||||
function M.on_file_open(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
|
||||
|
||||
function M.gitsigns()
|
||||
vim.api.nvim_create_autocmd({ "BufRead" }, {
|
||||
group = vim.api.nvim_create_augroup("GitSignsLazyLoad", { clear = true }),
|
||||
callback = function()
|
||||
vim.fn.system("git rev-parse " .. vim.fn.expand "%:p:h")
|
||||
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
|
||||
|
||||
function M.bootstrap()
|
||||
local fn = vim.fn
|
||||
|
|
|
@ -8,23 +8,17 @@ local plugins = {
|
|||
{ "nvim-lua/plenary.nvim" },
|
||||
{ "lewis6991/impatient.nvim" },
|
||||
{ "tpope/vim-surround",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("vim-surround")
|
||||
end
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
},
|
||||
{ "tpope/vim-repeat",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("vim-repeat")
|
||||
end
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
},
|
||||
{ "fladson/vim-kitty",
|
||||
ft = "kitty"
|
||||
},
|
||||
{ "kyazdani42/nvim-web-devicons" },
|
||||
{ "felipec/vim-sanegx",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("vim-sanegx")
|
||||
end
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
},
|
||||
{ "folke/which-key.nvim",
|
||||
config = function()
|
||||
|
@ -37,26 +31,20 @@ local plugins = {
|
|||
end
|
||||
},
|
||||
{ "folke/todo-comments.nvim",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("todo-comments.nvim")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.todo-comments')
|
||||
end
|
||||
},
|
||||
{ "akinsho/bufferline.nvim",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("bufferline.nvim")
|
||||
require('funcs').map("bufferline")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.bufferline')
|
||||
require('funcs').map("bufferline")
|
||||
end,
|
||||
},
|
||||
{ "nvim-lualine/lualine.nvim",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("lualine.nvim")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.lualine')
|
||||
end,
|
||||
|
@ -68,35 +56,27 @@ local plugins = {
|
|||
},
|
||||
{ "lukas-reineke/indent-blankline.nvim",
|
||||
after = "nvim-treesitter",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("indent-blankline.nvim")
|
||||
require('funcs').map("blankline")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.indent-blankline')
|
||||
require('funcs').map("blankline")
|
||||
end,
|
||||
},
|
||||
{ "norcalli/nvim-colorizer.lua",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("nvim-colorizer.lua")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.nvim-colorizer')
|
||||
end,
|
||||
},
|
||||
{ "RRethy/vim-illuminate",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("vim-illuminate")
|
||||
require('funcs').map("illuminate")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.illuminate')
|
||||
require('funcs').map("illuminate")
|
||||
end,
|
||||
},
|
||||
{ "nvim-treesitter/nvim-treesitter",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("nvim-treesitter")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
cmd = {
|
||||
"TSInstall",
|
||||
"TSBufEnable",
|
||||
|
@ -113,7 +93,18 @@ local plugins = {
|
|||
{ "lewis6991/gitsigns.nvim",
|
||||
ft = "gitcommit",
|
||||
setup = function()
|
||||
require('funcs').gitsigns()
|
||||
vim.api.nvim_create_autocmd({ "BufRead" }, {
|
||||
group = vim.api.nvim_create_augroup("GitSignsLazyLoad", { clear = true }),
|
||||
callback = function()
|
||||
vim.fn.system("git rev-parse " .. vim.fn.expand "%:p:h")
|
||||
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,
|
||||
config = function()
|
||||
require('plugins.config.gitsigns')
|
||||
|
@ -130,12 +121,10 @@ local plugins = {
|
|||
{ "williamboman/mason-lspconfig.nvim" },
|
||||
{ "neovim/nvim-lspconfig",
|
||||
after = "mason-lspconfig.nvim",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("nvim-lspconfig")
|
||||
require('funcs').map("lspconfig")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.lspconfig')
|
||||
require('funcs').map("lspconfig")
|
||||
end,
|
||||
},
|
||||
{ "jose-elias-alvarez/null-ls.nvim",
|
||||
|
@ -145,20 +134,16 @@ local plugins = {
|
|||
},
|
||||
{ "rcarriga/nvim-dap-ui",
|
||||
after = "nvim-dap",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("nvim-dap-ui")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.dapui')
|
||||
end,
|
||||
},
|
||||
{ "mfussenegger/nvim-dap",
|
||||
setup = function()
|
||||
require('funcs').on_file_open("nvim-dap")
|
||||
require('funcs').map("dap")
|
||||
end,
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.dap')
|
||||
require('funcs').map("dap")
|
||||
end,
|
||||
},
|
||||
{ "rafamadriz/friendly-snippets",
|
||||
|
@ -195,11 +180,9 @@ local plugins = {
|
|||
end,
|
||||
},
|
||||
{ "numToStr/Comment.nvim",
|
||||
event = { "BufRead", "BufWinEnter", "BufNewFile" },
|
||||
config = function()
|
||||
require('plugins.config.comment')
|
||||
end,
|
||||
setup = function()
|
||||
require('funcs').on_file_open("Comment.nvim")
|
||||
require('funcs').map("comment")
|
||||
end,
|
||||
},
|
||||
|
|
Loading…
Add table
Reference in a new issue