843d1ca3a1
Signed-off-by: Timothy Pidashev <mail@timmypidashev.dev>
30 lines
700 B
Lua
30 lines
700 B
Lua
-- Synchronous bootstrap: waits for mason + treesitter installs, then quits.
|
|
-- Assumes init.lua already ran (vim.pack.add auto-cloned plugins).
|
|
|
|
local TIMEOUT = 600000
|
|
|
|
-- Mason tool install
|
|
local mason_done = false
|
|
vim.api.nvim_create_autocmd("User", {
|
|
pattern = "MasonToolsUpdateCompleted",
|
|
once = true,
|
|
callback = function()
|
|
mason_done = true
|
|
end,
|
|
})
|
|
pcall(function() vim.cmd("MasonToolsInstall") end)
|
|
vim.wait(TIMEOUT, function()
|
|
return mason_done
|
|
end, 200)
|
|
|
|
-- Treesitter parsers
|
|
local ok_ts, ts = pcall(require, "nvim-treesitter")
|
|
if ok_ts then
|
|
local handle = ts.install(require("timmypidashev.langs"))
|
|
if handle and handle.wait then
|
|
handle:wait(TIMEOUT)
|
|
end
|
|
end
|
|
|
|
vim.cmd("qall!")
|