changeset 3568:09d0bda69df0 v7.3.544

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.
author Bram Moolenaar <bram@vim.org>
date Wed, 06 Jun 2012 18:03:07 +0200
parents deb39ae6bf9c
children 6707a6a1ff9c
files src/ex_docmd.c src/fileio.c src/version.c src/vim.h
diffstat 4 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- 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
--- 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},
--- 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,
--- 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 */