vim-patch:9.1.0154: shm=F not respected when reloading buffer with 'autoread'

Problem:  shm=F not respected when reloading buffer with 'autoread'
Solution: Check SHM_FILEINFO in buf_check_timestamp()
          (Shougo Matsushita)

closes: vim/vim#14144

9db39b0ec9

Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
This commit is contained in:
zeertzjq 2024-03-08 06:52:14 +08:00
parent 5f3579e6ea
commit d741e5d162
5 changed files with 27 additions and 4 deletions

View File

@ -5474,7 +5474,8 @@ A jump table for the options with a short description can be found at |Q_op|.
items, for instance "scanning tags" items, for instance "scanning tags"
q do not show "recording @a" when recording a macro *shm-q* q do not show "recording @a" when recording a macro *shm-q*
F don't give the file info when editing a file, like *shm-F* F don't give the file info when editing a file, like *shm-F*
`:silent` was used for the command `:silent` was used for the command; note that this also
affects messages from 'autoread' reloading
S do not show search count message when searching, e.g. *shm-S* S do not show search count message when searching, e.g. *shm-S*
"[1/5]" "[1/5]"

View File

@ -5799,7 +5799,8 @@ vim.bo.sw = vim.bo.shiftwidth
--- items, for instance "scanning tags" --- items, for instance "scanning tags"
--- q do not show "recording @a" when recording a macro *shm-q* --- q do not show "recording @a" when recording a macro *shm-q*
--- F don't give the file info when editing a file, like *shm-F* --- F don't give the file info when editing a file, like *shm-F*
--- `:silent` was used for the command --- `:silent` was used for the command; note that this also
--- affects messages from 'autoread' reloading
--- S do not show search count message when searching, e.g. *shm-S* --- S do not show search count message when searching, e.g. *shm-S*
--- "[1/5]" --- "[1/5]"
--- ---

View File

@ -3008,7 +3008,7 @@ int buf_check_timestamp(buf_T *buf)
can_reload = true; can_reload = true;
} }
if (mesg != NULL) { if (mesg != NULL && !shortmess(SHM_FILEINFO)) {
char *path = home_replace_save(buf, buf->b_fname); char *path = home_replace_save(buf, buf->b_fname);
if (!helpmesg) { if (!helpmesg) {
mesg2 = ""; mesg2 = "";

View File

@ -7331,7 +7331,8 @@ return {
items, for instance "scanning tags" items, for instance "scanning tags"
q do not show "recording @a" when recording a macro *shm-q* q do not show "recording @a" when recording a macro *shm-q*
F don't give the file info when editing a file, like *shm-F* F don't give the file info when editing a file, like *shm-F*
`:silent` was used for the command `:silent` was used for the command; note that this also
affects messages from 'autoread' reloading
S do not show search count message when searching, e.g. *shm-S* S do not show search count message when searching, e.g. *shm-S*
"[1/5]" "[1/5]"

View File

@ -1283,6 +1283,26 @@ func Test_shortmess_F2()
" call assert_fails('call test_getvalue("abc")', 'E475:') " call assert_fails('call test_getvalue("abc")', 'E475:')
endfunc endfunc
func Test_shortmess_F3()
defer delete('X_dummy')
set hidden
set autoread
e X_dummy
e file
set shortmess+=F
call writefile(["foo"], 'X_dummy')
call assert_true(empty(execute('bn', '')))
call assert_true(empty(execute('bn', '')))
set shortmess&
set autoread&
set hidden&
bwipe
bwipe
endfunc
func Test_local_scrolloff() func Test_local_scrolloff()
set so=5 set so=5
set siso=7 set siso=7