mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.1.1334: when buffer is hidden "F" in 'shortmess' is not used
Problem: When buffer is hidden "F" in 'shortmess' is not used. Solution: Check the "F" flag in 'shortmess' when the buffer is already loaded. (Jason Franklin) Add test_getvalue() to be able to test this.
This commit is contained in:
parent
45dd07f10a
commit
eda652215a
@ -2701,6 +2701,7 @@ test_alloc_fail({id}, {countdown}, {repeat})
|
|||||||
test_autochdir() none enable 'autochdir' during startup
|
test_autochdir() none enable 'autochdir' during startup
|
||||||
test_feedinput({string}) none add key sequence to input buffer
|
test_feedinput({string}) none add key sequence to input buffer
|
||||||
test_garbagecollect_now() none free memory right now for testing
|
test_garbagecollect_now() none free memory right now for testing
|
||||||
|
test_getvalue({string}) any get value of an internal variable
|
||||||
test_ignore_error({expr}) none ignore a specific error
|
test_ignore_error({expr}) none ignore a specific error
|
||||||
test_null_blob() Blob null value for testing
|
test_null_blob() Blob null value for testing
|
||||||
test_null_channel() Channel null value for testing
|
test_null_channel() Channel null value for testing
|
||||||
@ -9894,6 +9895,11 @@ test_garbagecollect_now() *test_garbagecollect_now()*
|
|||||||
internally, and |v:testing| must have been set before calling
|
internally, and |v:testing| must have been set before calling
|
||||||
any function.
|
any function.
|
||||||
|
|
||||||
|
test_getvalue({name}) *test_getvalue()*
|
||||||
|
Get the value of an internal variable. These values for
|
||||||
|
{name} are supported:
|
||||||
|
need_fileinfo
|
||||||
|
|
||||||
test_ignore_error({expr}) *test_ignore_error()*
|
test_ignore_error({expr}) *test_ignore_error()*
|
||||||
Ignore any error containing {expr}. A normal message is given
|
Ignore any error containing {expr}. A normal message is given
|
||||||
instead.
|
instead.
|
||||||
|
@ -1742,9 +1742,12 @@ enter_buffer(buf_T *buf)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!msg_silent)
|
if (!msg_silent && !shortmess(SHM_FILEINFO))
|
||||||
need_fileinfo = TRUE; /* display file info after redraw */
|
need_fileinfo = TRUE; // display file info after redraw
|
||||||
(void)buf_check_timestamp(curbuf, FALSE); /* check if file changed */
|
|
||||||
|
// check if file changed
|
||||||
|
(void)buf_check_timestamp(curbuf, FALSE);
|
||||||
|
|
||||||
curwin->w_topline = 1;
|
curwin->w_topline = 1;
|
||||||
#ifdef FEAT_DIFF
|
#ifdef FEAT_DIFF
|
||||||
curwin->w_topfill = 0;
|
curwin->w_topfill = 0;
|
||||||
|
@ -442,6 +442,7 @@ static void f_tempname(typval_T *argvars, typval_T *rettv);
|
|||||||
static void f_test_alloc_fail(typval_T *argvars, typval_T *rettv);
|
static void f_test_alloc_fail(typval_T *argvars, typval_T *rettv);
|
||||||
static void f_test_autochdir(typval_T *argvars, typval_T *rettv);
|
static void f_test_autochdir(typval_T *argvars, typval_T *rettv);
|
||||||
static void f_test_feedinput(typval_T *argvars, typval_T *rettv);
|
static void f_test_feedinput(typval_T *argvars, typval_T *rettv);
|
||||||
|
static void f_test_getvalue(typval_T *argvars, typval_T *rettv);
|
||||||
static void f_test_option_not_set(typval_T *argvars, typval_T *rettv);
|
static void f_test_option_not_set(typval_T *argvars, typval_T *rettv);
|
||||||
static void f_test_override(typval_T *argvars, typval_T *rettv);
|
static void f_test_override(typval_T *argvars, typval_T *rettv);
|
||||||
static void f_test_refcount(typval_T *argvars, typval_T *rettv);
|
static void f_test_refcount(typval_T *argvars, typval_T *rettv);
|
||||||
@ -991,6 +992,7 @@ static struct fst
|
|||||||
{"test_autochdir", 0, 0, f_test_autochdir},
|
{"test_autochdir", 0, 0, f_test_autochdir},
|
||||||
{"test_feedinput", 1, 1, f_test_feedinput},
|
{"test_feedinput", 1, 1, f_test_feedinput},
|
||||||
{"test_garbagecollect_now", 0, 0, f_test_garbagecollect_now},
|
{"test_garbagecollect_now", 0, 0, f_test_garbagecollect_now},
|
||||||
|
{"test_getvalue", 1, 1, f_test_getvalue},
|
||||||
{"test_ignore_error", 1, 1, f_test_ignore_error},
|
{"test_ignore_error", 1, 1, f_test_ignore_error},
|
||||||
{"test_null_blob", 0, 0, f_test_null_blob},
|
{"test_null_blob", 0, 0, f_test_null_blob},
|
||||||
#ifdef FEAT_JOB_CHANNEL
|
#ifdef FEAT_JOB_CHANNEL
|
||||||
@ -14412,6 +14414,25 @@ f_test_feedinput(typval_T *argvars, typval_T *rettv UNUSED)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* "test_getvalue({name})" function
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
f_test_getvalue(typval_T *argvars, typval_T *rettv)
|
||||||
|
{
|
||||||
|
if (argvars[0].v_type != VAR_STRING)
|
||||||
|
emsg(_(e_invarg));
|
||||||
|
else
|
||||||
|
{
|
||||||
|
char_u *name = tv_get_string(&argvars[0]);
|
||||||
|
|
||||||
|
if (STRCMP(name, (char_u *)"need_fileinfo") == 0)
|
||||||
|
rettv->vval.v_number = need_fileinfo;
|
||||||
|
else
|
||||||
|
semsg(_(e_invarg2), name);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* "test_option_not_set({name})" function
|
* "test_option_not_set({name})" function
|
||||||
*/
|
*/
|
||||||
|
@ -470,13 +470,19 @@ func Test_shortmess_F2()
|
|||||||
call assert_match('file2', execute('bn', ''))
|
call assert_match('file2', execute('bn', ''))
|
||||||
set shortmess+=F
|
set shortmess+=F
|
||||||
call assert_true(empty(execute('bn', '')))
|
call assert_true(empty(execute('bn', '')))
|
||||||
|
call assert_false(test_getvalue('need_fileinfo'))
|
||||||
call assert_true(empty(execute('bn', '')))
|
call assert_true(empty(execute('bn', '')))
|
||||||
|
call assert_false(test_getvalue('need_fileinfo'))
|
||||||
set hidden
|
set hidden
|
||||||
call assert_true(empty(execute('bn', '')))
|
call assert_true(empty(execute('bn', '')))
|
||||||
|
call assert_false(test_getvalue('need_fileinfo'))
|
||||||
call assert_true(empty(execute('bn', '')))
|
call assert_true(empty(execute('bn', '')))
|
||||||
|
call assert_false(test_getvalue('need_fileinfo'))
|
||||||
set nohidden
|
set nohidden
|
||||||
call assert_true(empty(execute('bn', '')))
|
call assert_true(empty(execute('bn', '')))
|
||||||
|
call assert_false(test_getvalue('need_fileinfo'))
|
||||||
call assert_true(empty(execute('bn', '')))
|
call assert_true(empty(execute('bn', '')))
|
||||||
|
call assert_false(test_getvalue('need_fileinfo'))
|
||||||
set shortmess&
|
set shortmess&
|
||||||
call assert_match('file1', execute('bn', ''))
|
call assert_match('file1', execute('bn', ''))
|
||||||
call assert_match('file2', execute('bn', ''))
|
call assert_match('file2', execute('bn', ''))
|
||||||
|
@ -767,6 +767,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 */
|
||||||
|
/**/
|
||||||
|
1334,
|
||||||
/**/
|
/**/
|
||||||
1333,
|
1333,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user