diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-03-08 07:21:14 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-08 07:21:14 +0800 |
commit | dc2379b89bd00cf7aa661e1b000d2a419843df3f (patch) | |
tree | 3f115a3662f867f701f025f01c2ca50b524538ae | |
parent | 5f3579e6ea12659d48e92b2126f83777908c28fc (diff) | |
parent | c38764182a966f12b91bdc9b9ff6228621238483 (diff) | |
download | rneovim-dc2379b89bd00cf7aa661e1b000d2a419843df3f.tar.gz rneovim-dc2379b89bd00cf7aa661e1b000d2a419843df3f.tar.bz2 rneovim-dc2379b89bd00cf7aa661e1b000d2a419843df3f.zip |
Merge pull request #27767 from zeertzjq/vim-9.1.0154
vim-patch:9.1.{0154,0158}: shm=F not respected when reloading buffer with 'autoread'
-rw-r--r-- | runtime/doc/options.txt | 3 | ||||
-rw-r--r-- | runtime/lua/vim/_meta/options.lua | 3 | ||||
-rw-r--r-- | src/nvim/fileio.c | 2 | ||||
-rw-r--r-- | src/nvim/options.lua | 3 | ||||
-rw-r--r-- | test/functional/autocmd/focus_spec.lua | 2 | ||||
-rw-r--r-- | test/old/testdir/test_options.vim | 38 |
6 files changed, 46 insertions, 5 deletions
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 38a2a3b452..edd5149621 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -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" 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* - `: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* "[1/5]" diff --git a/runtime/lua/vim/_meta/options.lua b/runtime/lua/vim/_meta/options.lua index 5a9215fa9e..757720d8fb 100644 --- a/runtime/lua/vim/_meta/options.lua +++ b/runtime/lua/vim/_meta/options.lua @@ -5799,7 +5799,8 @@ vim.bo.sw = vim.bo.shiftwidth --- items, for instance "scanning tags" --- 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* ---- `: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* --- "[1/5]" --- diff --git a/src/nvim/fileio.c b/src/nvim/fileio.c index 2c96e4bd87..695631a6f7 100644 --- a/src/nvim/fileio.c +++ b/src/nvim/fileio.c @@ -3153,7 +3153,7 @@ void buf_reload(buf_T *buf, int orig_mode, bool reload_options) curbuf->b_flags |= BF_CHECK_RO; // check for RO again keep_filetype = true; // don't detect 'filetype' if (readfile(buf->b_ffname, buf->b_fname, 0, 0, - (linenr_T)MAXLNUM, &ea, flags, false) != OK) { + (linenr_T)MAXLNUM, &ea, flags, shortmess(SHM_FILEINFO)) != OK) { if (!aborting()) { semsg(_("E321: Could not reload \"%s\""), buf->b_fname); } diff --git a/src/nvim/options.lua b/src/nvim/options.lua index 4452df413a..72f9ff849d 100644 --- a/src/nvim/options.lua +++ b/src/nvim/options.lua @@ -7331,7 +7331,8 @@ return { items, for instance "scanning tags" 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* - `: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* "[1/5]" diff --git a/test/functional/autocmd/focus_spec.lua b/test/functional/autocmd/focus_spec.lua index b9bab206fc..4f4a036ba8 100644 --- a/test/functional/autocmd/focus_spec.lua +++ b/test/functional/autocmd/focus_spec.lua @@ -86,7 +86,7 @@ describe('autoread TUI FocusGained/FocusLost', function() line 3 | line 4 | {5:xtest-foo }| - "xtest-foo" 4L, 28B | + :edit xtest-foo | {3:-- TERMINAL --} | ]], } diff --git a/test/old/testdir/test_options.vim b/test/old/testdir/test_options.vim index e772a7bb55..7786f82af2 100644 --- a/test/old/testdir/test_options.vim +++ b/test/old/testdir/test_options.vim @@ -1283,6 +1283,44 @@ func Test_shortmess_F2() " call assert_fails('call test_getvalue("abc")', 'E475:') endfunc +func Test_shortmess_F3() + call writefile(['foo'], 'X_dummy', 'D') + + set hidden + set autoread + e X_dummy + e Xotherfile + call assert_equal(['foo'], getbufline('X_dummy', 1, '$')) + set shortmess+=F + echo '' + + 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 autoread& + set hidden& + bwipe X_dummy + bwipe Xotherfile +endfunc + func Test_local_scrolloff() set so=5 set siso=7 |