0
0
mirror of https://github.com/vim/vim.git synced 2025-09-29 04:34:16 -04:00

updated for version 7.3.438

Problem:    There is no way to avoid ":doautoall" reading modelines.
Solution:   Add the <nomodeline> argument. Adjust documentation.
This commit is contained in:
Bram Moolenaar
2012-02-12 00:18:58 +01:00
parent 28f2908d95
commit a61d5fbf7a
3 changed files with 25 additions and 10 deletions

View File

@@ -8739,6 +8739,14 @@ ex_doautoall(eap)
int retval;
aco_save_T aco;
buf_T *buf;
char_u *arg = eap->arg;
int call_do_modelines = TRUE;
if (STRNCMP(arg, "<nomodeline>", 12) == 0)
{
call_do_modelines = FALSE;
arg = skipwhite(arg + 12);
}
/*
* This is a bit tricky: For some commands curwin->w_buffer needs to be
@@ -8755,11 +8763,15 @@ ex_doautoall(eap)
aucmd_prepbuf(&aco, buf);
/* execute the autocommands for this buffer */
retval = do_doautocmd(eap->arg, FALSE);
retval = do_doautocmd(arg, FALSE);
/* Execute the modeline settings, but don't set window-local
* options if we are using the current window for another buffer. */
do_modelines(curwin == aucmd_win ? OPT_NOWIN : 0);
if (call_do_modelines)
{
/* Execute the modeline settings, but don't set window-local
* options if we are using the current window for another
* buffer. */
do_modelines(curwin == aucmd_win ? OPT_NOWIN : 0);
}
/* restore the current window */
aucmd_restbuf(&aco);