From d96eaa914aab6cfc4adccb34af421bdd496468b0 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Wed, 15 Jun 2022 16:43:10 +0800 Subject: fix: block autocommands when setting preview buffer (#2010) Telescope creates most floating windows with `noautocmd = true`, so these windows do not trigger autocommands, but preview buffer is set in window using `nvim_win_set_buf()`, which triggers buffer autocommands. This may be unwanted, so block them using 'eventignore'. --- lua/telescope/utils.lua | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'lua/telescope/utils.lua') diff --git a/lua/telescope/utils.lua b/lua/telescope/utils.lua index 133a120..2a8de58 100644 --- a/lua/telescope/utils.lua +++ b/lua/telescope/utils.lua @@ -410,6 +410,13 @@ function utils.get_os_command_output(cmd, cwd) return stdout, ret, stderr end +function utils.win_set_buf_noautocmd(win, buf) + local save_ei = vim.o.eventignore + vim.o.eventignore = "all" + vim.api.nvim_win_set_buf(win, buf) + vim.o.eventignore = save_ei +end + local load_once = function(f) local resolved = nil return function(...) -- cgit v1.2.3