I've gone through the autocmd.txt
help, but the information about this is scattered and not always present (eg. with BufRead
).
Could someone who understands this well list the order of these events - with perhaps the conditions marked in parantheses, like
WinEnter
BufEnter (if this window is for a different buffer than the current)
and so on, for easy reference?
Note (copied from my own comment below): I'm not talking about individual explanations of them, which are OK, but about how they interact with one another and in what order they happen. For eg., WinEnter
says "Vim executes the BufEnter autocommands after the WinEnter autocommands", TabEnter
says "After triggering the WinEnter and before triggering the BufEnter event", it's all scattered like this into many places. And sometimes it's not mentioned at all (for eg. BufRead
doesn't mention whether it runs after BufEnter or before - maybe an expert can infer it from some other piece of info there, but I can't.
So, my intent here is to create a single, simple reference for the order of these events that can be looked up quickly by non-experts, in order to be more precise in our autocmd
event specifications.
WinEnter
says "Vim executes the BufEnter autocommands after the WinEnter autocommands",TabEnter
says "After triggering the WinEnter and before triggering the BufEnter event", it's all scattered like this into many places. And sometimes it's not mentioned at all (for eg.BufRead
doesn't mention whether it runs after BufEnter or before - maybe an expert can infer it from some other piece of info there, but I can't.autocmd
event specifications.