fix(profile): guard plugin setup when modules are unavailable
This commit is contained in:
+36
-11
@@ -1,5 +1,14 @@
|
|||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
|
local function safe_setup(label, fn)
|
||||||
|
local ok, err = pcall(fn)
|
||||||
|
if not ok then
|
||||||
|
vim.schedule(function()
|
||||||
|
vim.notify("Skipping " .. label .. ": " .. tostring(err), vim.log.levels.WARN)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
local function setup_flash(keys)
|
local function setup_flash(keys)
|
||||||
require("flash").setup({
|
require("flash").setup({
|
||||||
modes = {
|
modes = {
|
||||||
@@ -65,17 +74,33 @@ function M.setup()
|
|||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
setup_flash({
|
safe_setup("flash", function()
|
||||||
jump_key = "<leader>s",
|
setup_flash({
|
||||||
treesitter_key = "<leader>S",
|
jump_key = "<leader>s",
|
||||||
})
|
treesitter_key = "<leader>S",
|
||||||
require("nvim-surround").setup({})
|
})
|
||||||
require("plugins.native.git").setup()
|
end)
|
||||||
require("plugins.native.tree").setup()
|
safe_setup("nvim-surround", function()
|
||||||
require("plugins.native.statusline").setup()
|
require("nvim-surround").setup({})
|
||||||
require("plugins.native.treesitter").setup()
|
end)
|
||||||
require("plugins.native.which_key").setup()
|
safe_setup("plugins.native.git", function()
|
||||||
require("plugins.native.window").setup()
|
require("plugins.native.git").setup()
|
||||||
|
end)
|
||||||
|
safe_setup("plugins.native.tree", function()
|
||||||
|
require("plugins.native.tree").setup()
|
||||||
|
end)
|
||||||
|
safe_setup("plugins.native.statusline", function()
|
||||||
|
require("plugins.native.statusline").setup()
|
||||||
|
end)
|
||||||
|
safe_setup("plugins.native.treesitter", function()
|
||||||
|
require("plugins.native.treesitter").setup()
|
||||||
|
end)
|
||||||
|
safe_setup("plugins.native.which_key", function()
|
||||||
|
require("plugins.native.which_key").setup()
|
||||||
|
end)
|
||||||
|
safe_setup("plugins.native.window", function()
|
||||||
|
require("plugins.native.window").setup()
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
return M
|
return M
|
||||||
|
|||||||
+23
-8
@@ -1,5 +1,14 @@
|
|||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
|
local function safe_setup(label, fn)
|
||||||
|
local ok, err = pcall(fn)
|
||||||
|
if not ok then
|
||||||
|
vim.schedule(function()
|
||||||
|
vim.notify("Skipping " .. label .. ": " .. tostring(err), vim.log.levels.WARN)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
local function setup_flash(keys)
|
local function setup_flash(keys)
|
||||||
require("flash").setup({
|
require("flash").setup({
|
||||||
modes = {
|
modes = {
|
||||||
@@ -40,14 +49,20 @@ function M.setup()
|
|||||||
local vscode = require("vscode")
|
local vscode = require("vscode")
|
||||||
vim.notify = vscode.notify
|
vim.notify = vscode.notify
|
||||||
|
|
||||||
setup_flash({
|
safe_setup("flash", function()
|
||||||
toggle_search_key = "<leader><leader>/",
|
setup_flash({
|
||||||
treesitter_key = "<leader>ct",
|
toggle_search_key = "<leader><leader>/",
|
||||||
search = true,
|
treesitter_key = "<leader>ct",
|
||||||
char = false,
|
search = true,
|
||||||
})
|
char = false,
|
||||||
require("nvim-surround").setup({})
|
})
|
||||||
require("plugins.vscode.actions").setup(vscode)
|
end)
|
||||||
|
safe_setup("nvim-surround", function()
|
||||||
|
require("nvim-surround").setup({})
|
||||||
|
end)
|
||||||
|
safe_setup("plugins.vscode.actions", function()
|
||||||
|
require("plugins.vscode.actions").setup(vscode)
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
return M
|
return M
|
||||||
|
|||||||
Reference in New Issue
Block a user