Vim E37: No Write Since Last Change

Workaround available Linux, macOS, Windows Updated October 21, 2026

Quick answer

Vim refuses to quit or switch files because the buffer has unsaved changes. Save with :w (or :wq), or discard with :q!.

Most likely fix: Save then quit.

Symptoms

Typing :q or :e otherfile shows 'E37: No write since last change (add ! to override)'.

Why it happens

  • The current buffer has unsaved edits
  • Switching buffers with :e or :bn while 'hidden' is off

How to fix it

Try these in order — the most common fix is first.

  1. 1. Save then quit

    1. :wq (or :x) saves and quits
  2. 2. Discard changes

    1. :q! quits without saving
    2. :e! reloads the file from disk and drops changes
  3. 3. Allow switching buffers with unsaved changes

    1. Add set hidden to ~/.vimrc
    2. Vim then keeps modified buffers open in the background

This guide also covers

  • e37 no write since last change
  • vim add ! to override
  • vim can't quit

Still not working?

If Vim keeps failing, you're not alone. See every Vim problem users report or the alternatives people switch to.

Other Vim errors