I have :set hidden set in my ~/.vimrc.

First I did this:

  • vim foo bar
  • :bnEnter
  • ihelloEsc
  • :bpEnter
  • :bd#Enter

The :bd# command leads to this error:

E89: No write since last change for buffer 2 (add ! to override)

This is expected behavior.

Then I did this:

  • vim foo bar
  • :bnEnter
  • ihelloEsc
  • :bp | bd#Enter
  • :lsEnter

This time :bp | bd#Enter did not lead to any error. The output of :lsEnter shows that the buffer for bar is still present.

Why did the E89 error did not occur in the second set of steps?

  • cannot reproduce. I always get E89 no write.... Please try with vim --clean – Christian Brabandt Jun 7 '18 at 6:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.