From b7407d3fc9496f9048fb65ab17b5ba3444965c0e Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sat, 3 Feb 2018 17:36:27 +0100 Subject: patch 8.0.1459: cannot handle change of directory Problem: Cannot handle change of directory. Solution: Add the DirChanged autocommand event. (Andy Massimino, closes #888) Avoid changing directory for 'autochdir' too often. --- src/fileio.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/fileio.c') diff --git a/src/fileio.c b/src/fileio.c index fb5af6446..ab216abbf 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -7798,6 +7798,7 @@ static struct event_name {"CursorHoldI", EVENT_CURSORHOLDI}, {"CursorMoved", EVENT_CURSORMOVED}, {"CursorMovedI", EVENT_CURSORMOVEDI}, + {"DirChanged", EVENT_DIRCHANGED}, {"EncodingChanged", EVENT_ENCODINGCHANGED}, {"FileEncoding", EVENT_ENCODINGCHANGED}, {"FileAppendPost", EVENT_FILEAPPENDPOST}, @@ -9588,7 +9589,7 @@ apply_autocmds_group( { sfname = vim_strsave(fname); /* Don't try expanding FileType, Syntax, FuncUndefined, WindowID, - * ColorScheme or QuickFixCmd* */ + * ColorScheme, QuickFixCmd* or DirChanged */ if (event == EVENT_FILETYPE || event == EVENT_SYNTAX || event == EVENT_FUNCUNDEFINED @@ -9597,7 +9598,8 @@ apply_autocmds_group( || event == EVENT_QUICKFIXCMDPRE || event == EVENT_COLORSCHEME || event == EVENT_OPTIONSET - || event == EVENT_QUICKFIXCMDPOST) + || event == EVENT_QUICKFIXCMDPOST + || event == EVENT_DIRCHANGED) fname = vim_strsave(fname); else fname = FullName_save(fname, FALSE); -- cgit v1.2.1