patch 9.1.0158: 'shortmess' "F" flag doesn't work properly with 'autoread'
Problem: 'shortmess' "F" flag doesn't work properly with 'autoread'
(after 9.1.0154)
Solution: Hide the file info message instead of the warning dialog
(zeertzjq)
closes: #14159
closes: #14158
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
0df8f93bda
commit
8a01744c56
10
src/fileio.c
10
src/fileio.c
@ -4294,7 +4294,7 @@ buf_check_timestamp(
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mesg != NULL && !shortmess(SHM_FILEINFO))
|
if (mesg != NULL)
|
||||||
{
|
{
|
||||||
path = home_replace_save(buf, buf->b_fname);
|
path = home_replace_save(buf, buf->b_fname);
|
||||||
if (path != NULL)
|
if (path != NULL)
|
||||||
@ -4489,8 +4489,14 @@ buf_reload(buf_T *buf, int orig_mode, int reload_options)
|
|||||||
|
|
||||||
if (saved == OK)
|
if (saved == OK)
|
||||||
{
|
{
|
||||||
|
int old_msg_silent = msg_silent;
|
||||||
|
|
||||||
curbuf->b_flags |= BF_CHECK_RO; // check for RO again
|
curbuf->b_flags |= BF_CHECK_RO; // check for RO again
|
||||||
keep_filetype = TRUE; // don't detect 'filetype'
|
keep_filetype = TRUE; // don't detect 'filetype'
|
||||||
|
|
||||||
|
if (shortmess(SHM_FILEINFO))
|
||||||
|
msg_silent = 1;
|
||||||
|
|
||||||
if (readfile(buf->b_ffname, buf->b_fname, (linenr_T)0,
|
if (readfile(buf->b_ffname, buf->b_fname, (linenr_T)0,
|
||||||
(linenr_T)0,
|
(linenr_T)0,
|
||||||
(linenr_T)MAXLNUM, &ea, flags) != OK)
|
(linenr_T)MAXLNUM, &ea, flags) != OK)
|
||||||
@ -4521,6 +4527,8 @@ buf_reload(buf_T *buf, int orig_mode, int reload_options)
|
|||||||
u_unchanged(curbuf);
|
u_unchanged(curbuf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
msg_silent = old_msg_silent;
|
||||||
}
|
}
|
||||||
vim_free(ea.cmd);
|
vim_free(ea.cmd);
|
||||||
|
|
||||||
|
|||||||
@ -1294,23 +1294,41 @@ func Test_shortmess_F2()
|
|||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func Test_shortmess_F3()
|
func Test_shortmess_F3()
|
||||||
defer delete('X_dummy')
|
call writefile(['foo'], 'X_dummy', 'D')
|
||||||
|
|
||||||
set hidden
|
set hidden
|
||||||
set autoread
|
set autoread
|
||||||
e X_dummy
|
e X_dummy
|
||||||
e file
|
e Xotherfile
|
||||||
|
call assert_equal(['foo'], getbufline('X_dummy', 1, '$'))
|
||||||
set shortmess+=F
|
set shortmess+=F
|
||||||
call writefile(["foo"], 'X_dummy')
|
echo ''
|
||||||
call assert_true(empty(execute('bn', '')))
|
|
||||||
call assert_true(empty(execute('bn', '')))
|
if has('nanotime')
|
||||||
|
sleep 10m
|
||||||
|
else
|
||||||
|
sleep 2
|
||||||
|
endif
|
||||||
|
call writefile(['bar'], 'X_dummy')
|
||||||
|
bprev
|
||||||
|
call assert_equal('', Screenline(&lines))
|
||||||
|
call assert_equal(['bar'], getbufline('X_dummy', 1, '$'))
|
||||||
|
|
||||||
|
if has('nanotime')
|
||||||
|
sleep 10m
|
||||||
|
else
|
||||||
|
sleep 2
|
||||||
|
endif
|
||||||
|
call writefile(['baz'], 'X_dummy')
|
||||||
|
checktime
|
||||||
|
call assert_equal('', Screenline(&lines))
|
||||||
|
call assert_equal(['baz'], getbufline('X_dummy', 1, '$'))
|
||||||
|
|
||||||
set shortmess&
|
set shortmess&
|
||||||
set autoread&
|
set autoread&
|
||||||
set hidden&
|
set hidden&
|
||||||
bwipe
|
bwipe X_dummy
|
||||||
bwipe
|
bwipe Xotherfile
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func Test_local_scrolloff()
|
func Test_local_scrolloff()
|
||||||
|
|||||||
@ -704,6 +704,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
158,
|
||||||
/**/
|
/**/
|
||||||
157,
|
157,
|
||||||
/**/
|
/**/
|
||||||
|
|||||||
Reference in New Issue
Block a user