vim-patch:8.0.1427: the :leftabove modifier doesn't work for :copen

Problem:    The :leftabove modifier doesn't work for :copen.
Solution:   Respect the split modifier. (Yegappan Lakshmanan, closes vim/vim#2496)
de04654ddc
This commit is contained in:
Jan Edmund Lazo
2018-11-19 21:10:52 -05:00
parent e53ae88e7e
commit a5637597a6
2 changed files with 39 additions and 4 deletions

View File

@@ -2661,6 +2661,8 @@ void ex_copen(exarg_T *eap)
}
}
} else {
int flags = 0;
qf_buf = qf_find_buf(qi);
/* The current window becomes the previous window afterwards. */
@@ -2668,11 +2670,17 @@ void ex_copen(exarg_T *eap)
if ((eap->cmdidx == CMD_copen || eap->cmdidx == CMD_cwindow)
&& cmdmod.split == 0)
/* Create the new window at the very bottom, except when
* :belowright or :aboveleft is used. */
// Create the new quickfix window at the very bottom, except when
// :belowright or :aboveleft is used.
win_goto(lastwin);
if (win_split(height, WSP_BELOW | WSP_NEWLOC) == FAIL)
return; /* not enough room for window */
// Default is to open the window below the current window
if (cmdmod.split == 0) {
flags = WSP_BELOW;
}
flags |= WSP_NEWLOC;
if (win_split(height, flags) == FAIL) {
return; // not enough room for window
}
RESET_BINDING(curwin);
if (eap->cmdidx == CMD_lopen || eap->cmdidx == CMD_lwindow) {