# HG changeset patch # User Bram Moolenaar # Date 1338998587 -7200 # Node ID 09d0bda69df0c5eb505a02e37a978e92fbc89332 # Parent deb39ae6bf9c6f70af18931708ebf7fe2dfdc9ff updated for version 7.3.544 Problem: There is no good way to close a quickfix window when closing the last ordinary window. Solution: Add the QuitPre autocommand. diff --git a/src/ex_docmd.c b/src/ex_docmd.c --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -6458,6 +6458,7 @@ ex_quit(eap) return; } #ifdef FEAT_AUTOCMD + apply_autocmds(EVENT_QUITPRE, NULL, NULL, FALSE, curbuf); if (curbuf_locked()) return; #endif diff --git a/src/fileio.c b/src/fileio.c --- a/src/fileio.c +++ b/src/fileio.c @@ -7678,6 +7678,7 @@ static struct event_name {"MenuPopup", EVENT_MENUPOPUP}, {"QuickFixCmdPost", EVENT_QUICKFIXCMDPOST}, {"QuickFixCmdPre", EVENT_QUICKFIXCMDPRE}, + {"QuitPre", EVENT_QUITPRE}, {"RemoteReply", EVENT_REMOTEREPLY}, {"SessionLoadPost", EVENT_SESSIONLOADPOST}, {"ShellCmdPost", EVENT_SHELLCMDPOST}, diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -715,6 +715,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 544, +/**/ 543, /**/ 542, diff --git a/src/vim.h b/src/vim.h --- a/src/vim.h +++ b/src/vim.h @@ -1264,8 +1264,9 @@ enum auto_event EVENT_INSERTENTER, /* when entering Insert mode */ EVENT_INSERTLEAVE, /* when leaving Insert mode */ EVENT_MENUPOPUP, /* just before popup menu is displayed */ - EVENT_QUICKFIXCMDPOST, /* after :make, :grep etc */ - EVENT_QUICKFIXCMDPRE, /* before :make, :grep etc */ + EVENT_QUICKFIXCMDPOST, /* after :make, :grep etc. */ + EVENT_QUICKFIXCMDPRE, /* before :make, :grep etc. */ + EVENT_QUITPRE, /* before :quit */ EVENT_SESSIONLOADPOST, /* after loading a session file */ EVENT_STDINREADPOST, /* after reading from stdin */ EVENT_STDINREADPRE, /* before reading from stdin */