mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.1.0972: cannot switch from terminal window to next tabpage
Problem: Cannot switch from terminal window to next tabpage. Solution: Make CTRL-W gt move to next tabpage.
This commit is contained in:
parent
f6b401090e
commit
72e83c1ae5
@ -1,4 +1,4 @@
|
|||||||
*terminal.txt* For Vim version 8.1. Last change: 2019 Feb 16
|
*terminal.txt* For Vim version 8.1. Last change: 2019 Feb 22
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -80,6 +80,7 @@ Special in the terminal window: *CTRL-W_.* *CTRL-W_N*
|
|||||||
Also works with the = register to insert the result of
|
Also works with the = register to insert the result of
|
||||||
evaluating an expression.
|
evaluating an expression.
|
||||||
CTRL-W CTRL-C ends the job, see below |t_CTRL-W_CTRL-C|
|
CTRL-W CTRL-C ends the job, see below |t_CTRL-W_CTRL-C|
|
||||||
|
CTRL-W gt go to next tabpage, same as `gt`
|
||||||
|
|
||||||
See option 'termwinkey' for specifying another key instead of CTRL-W that
|
See option 'termwinkey' for specifying another key instead of CTRL-W that
|
||||||
will work like CTRL-W. However, typing 'termwinkey' twice sends 'termwinkey'
|
will work like CTRL-W. However, typing 'termwinkey' twice sends 'termwinkey'
|
||||||
|
@ -1571,6 +1571,8 @@ endfunc
|
|||||||
func Test_terminal_termwinkey()
|
func Test_terminal_termwinkey()
|
||||||
call assert_equal(1, winnr('$'))
|
call assert_equal(1, winnr('$'))
|
||||||
let thiswin = win_getid()
|
let thiswin = win_getid()
|
||||||
|
tabnew
|
||||||
|
tabnext
|
||||||
|
|
||||||
let buf = Run_shell_in_terminal({})
|
let buf = Run_shell_in_terminal({})
|
||||||
let termwin = bufwinid(buf)
|
let termwin = bufwinid(buf)
|
||||||
@ -1578,12 +1580,22 @@ func Test_terminal_termwinkey()
|
|||||||
call feedkeys("\<C-L>w", 'tx')
|
call feedkeys("\<C-L>w", 'tx')
|
||||||
call assert_equal(thiswin, win_getid())
|
call assert_equal(thiswin, win_getid())
|
||||||
call feedkeys("\<C-W>w", 'tx')
|
call feedkeys("\<C-W>w", 'tx')
|
||||||
|
call assert_equal(termwin, win_getid())
|
||||||
|
|
||||||
|
let tnr = tabpagenr()
|
||||||
|
call feedkeys("\<C-L>gt", "xt")
|
||||||
|
call assert_notequal(tnr, tabpagenr())
|
||||||
|
tabnext
|
||||||
|
call assert_equal(tnr, tabpagenr())
|
||||||
|
call assert_equal(termwin, win_getid())
|
||||||
|
|
||||||
let job = term_getjob(buf)
|
let job = term_getjob(buf)
|
||||||
call feedkeys("\<C-L>\<C-C>", 'tx')
|
call feedkeys("\<C-L>\<C-C>", 'tx')
|
||||||
call WaitForAssert({-> assert_equal("dead", job_status(job))})
|
call WaitForAssert({-> assert_equal("dead", job_status(job))})
|
||||||
|
|
||||||
set termwinkey&
|
set termwinkey&
|
||||||
|
tabnext
|
||||||
|
tabclose
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func Test_terminal_out_err()
|
func Test_terminal_out_err()
|
||||||
|
@ -779,6 +779,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 */
|
||||||
|
/**/
|
||||||
|
972,
|
||||||
/**/
|
/**/
|
||||||
971,
|
971,
|
||||||
/**/
|
/**/
|
||||||
|
@ -67,7 +67,7 @@ static win_T *win_alloc(win_T *after, int hidden);
|
|||||||
static char *m_onlyone = N_("Already only one window");
|
static char *m_onlyone = N_("Already only one window");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* all CTRL-W window commands are handled here, called from normal_cmd().
|
* All CTRL-W window commands are handled here, called from normal_cmd().
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
do_window(
|
do_window(
|
||||||
@ -584,6 +584,10 @@ wingotofile:
|
|||||||
nchar = xchar;
|
nchar = xchar;
|
||||||
goto wingotofile;
|
goto wingotofile;
|
||||||
#endif
|
#endif
|
||||||
|
case 't': // CTRL-W gt: go to next tab page
|
||||||
|
goto_tabpage((int)Prenum);
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
beep_flush();
|
beep_flush();
|
||||||
break;
|
break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user