Para verificar um único buffer, é necessário iterar todos os possíveis buffers e verificar se eles ainda estão listados (por exemplo, em :ls
). A verificação é acionada sempre que um buffer é excluído:
:autocmd BufDelete * if len(filter(range(1, bufnr('$')), '! empty(bufname(v:val)) && buflisted(v:val)')) == 1 | quit | endif