On Feb 9, 5:57 am, scrooloose <[email protected]> wrote: > Gentlemen, Im having some issues with vimgrep and an autocommand that > is defined on bufreadpost. > > I dont want my autocmd to fire while vimgrep is running, but that is > what is currently happening since vimgrep opens every file it scans > into a vim buffer. I would have thought vim would disable autocommands > when running vimgrep for efficiency, but apparently not! > > The short story is that I want an autocommand definition like this: > > autocmd bufreadpost * if VimgrepIsNotRunning() | echo 'foo' | endif > > So far my only idea is to add a couple more autocommands on > QuickFixCmdPre and QuickFixCmdPost to set a magic flag to say that a > quickfix command is running. That would probably work, but I can also > see it causing more bugs, and its a pretty crap solution in general. > > Any suggestions would be welcome :) > > FYI, this issue came to light in this bug report in syntastic > -https://github.com/scrooloose/syntastic/issues/161
I was going to suggest using :noautocmd to perform the vimgrep, but then I saw that you're trying to fix a plugin to let the user use :vimgrep normally. IIUC, autocmds are not disabled when running vimgrep, in order to allow things like reading Zip files, detecting file encoding when Vim's built-in detection fails, and the like, which are frequently accomplished in BufReadPre/BufReadPost autocmds. I actually think your idea of using QuickFixCmdPre/Post may be your best option. -- You received this message from the "vim_use" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php
