mirror of
https://github.com/vim/vim.git
synced 2025-09-27 04:14:06 -04:00
patch 8.2.3254: win_gettype() does not recognize a quickfix window
Problem: win_gettype() does not recognize a quickfix window. Solution: Add "quickfix" and "loclist". (Yegappan Lakshmanan, closes #8676)
This commit is contained in:
committed by
Bram Moolenaar
parent
890ee4e2be
commit
28d8421bfb
@@ -11661,10 +11661,12 @@ win_gettype([{nr}]) *win_gettype()*
|
|||||||
Return the type of the window:
|
Return the type of the window:
|
||||||
"autocmd" autocommand window. Temporary window
|
"autocmd" autocommand window. Temporary window
|
||||||
used to execute autocommands.
|
used to execute autocommands.
|
||||||
"popup" popup window |popup|
|
|
||||||
"preview" preview window |preview-window|
|
|
||||||
"command" command-line window |cmdwin|
|
"command" command-line window |cmdwin|
|
||||||
(empty) normal window
|
(empty) normal window
|
||||||
|
"loclist" |location-list-window|
|
||||||
|
"popup" popup window |popup|
|
||||||
|
"preview" preview window |preview-window|
|
||||||
|
"quickfix" |quickfix-window|
|
||||||
"unknown" window {nr} not found
|
"unknown" window {nr} not found
|
||||||
|
|
||||||
When {nr} is omitted return the type of the current window.
|
When {nr} is omitted return the type of the current window.
|
||||||
|
@@ -953,6 +953,12 @@ f_win_gettype(typval_T *argvars, typval_T *rettv)
|
|||||||
else if (wp == curwin && cmdwin_type != 0)
|
else if (wp == curwin && cmdwin_type != 0)
|
||||||
rettv->vval.v_string = vim_strsave((char_u *)"command");
|
rettv->vval.v_string = vim_strsave((char_u *)"command");
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef FEAT_QUICKFIX
|
||||||
|
else if (bt_quickfix(wp->w_buffer))
|
||||||
|
rettv->vval.v_string = vim_strsave((char_u *)
|
||||||
|
(wp->w_llist_ref != NULL ? "loclist" : "quickfix"));
|
||||||
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -1574,10 +1574,10 @@ ga_concat_len(garray_T *gap, char_u *s, size_t len)
|
|||||||
{
|
{
|
||||||
if (s == NULL || *s == NUL)
|
if (s == NULL || *s == NUL)
|
||||||
return;
|
return;
|
||||||
if (ga_grow(gap, len) == OK)
|
if (ga_grow(gap, (int)len) == OK)
|
||||||
{
|
{
|
||||||
mch_memmove((char *)gap->ga_data + gap->ga_len, s, (size_t)len);
|
mch_memmove((char *)gap->ga_data + gap->ga_len, s, len);
|
||||||
gap->ga_len += len;
|
gap->ga_len += (int)len;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -5587,4 +5587,21 @@ func Test_locationlist_open_in_newtab()
|
|||||||
%bwipe!
|
%bwipe!
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for win_gettype() in quickfix and location list windows
|
||||||
|
func Test_win_gettype()
|
||||||
|
copen
|
||||||
|
call assert_equal("quickfix", win_gettype())
|
||||||
|
let wid = win_getid()
|
||||||
|
wincmd p
|
||||||
|
call assert_equal("quickfix", win_gettype(wid))
|
||||||
|
cclose
|
||||||
|
lexpr ''
|
||||||
|
lopen
|
||||||
|
call assert_equal("loclist", win_gettype())
|
||||||
|
let wid = win_getid()
|
||||||
|
wincmd p
|
||||||
|
call assert_equal("loclist", win_gettype(wid))
|
||||||
|
lclose
|
||||||
|
endfunc
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
@@ -755,6 +755,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 */
|
||||||
|
/**/
|
||||||
|
3254,
|
||||||
/**/
|
/**/
|
||||||
3253,
|
3253,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user