Hi, There's a problem with tabpages and BufWinLeave autocommand: when exiting a buffer which is displayed in the only window in a tab, the autocommand fires already in a different tab. This can be shown by executing the following commands in a new Vim session:
#v+ tabnew tabdo windo echo "Buffer" bufnr('') "is in tab page" tabpagenr() autocmd BufWinLeave <buffer> echo "When executing BufWinLeave for buffer " expand("<abuf>") "we're in tab page" tabpagenr() echo "Before we quit, we're in tab page" tabpagenr() q echo "After we've quit, we're in tab page" tabpagenr() #v- Expected output should include: When executing BufWinLeave for buffer 2 we're in tab page 2 but what I actually get is: When executing BufWinLeave for buffer 2 we're in tab page 1 In other words: while the documentation states that BufWinLeave is triggered *before* buffer is removed from a window, in this particular case it is triggered *after* the fact. This causes commands to have effect on wrong windows. Cheers, Lech -- You received this message from the "vim_dev" 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