mirror of
https://github.com/neovim/neovim.git
synced 2025-09-22 19:18:34 +00:00
feat: allow :wincmd to accept a count (#19815)
Let :wincmd command accept a count like what its documentation suggests.
Previously it could only accept a range, which led to some ambiguity on
which attribute should be used when executing :wincmd using nvim_cmd.
Closes #19662.
Also fix a typo in a related Vim test:
vim-patch:9.0.0223: typo in diffmode test
Problem: Typo in diffmode test.
Solution: Fix the typo. (closes vim/vim#10932)
5fd6ab820b
This commit is contained in:
@@ -372,6 +372,7 @@ Lua interface (|lua.txt|):
|
|||||||
|
|
||||||
Commands:
|
Commands:
|
||||||
|:doautocmd| does not warn about "No matching autocommands".
|
|:doautocmd| does not warn about "No matching autocommands".
|
||||||
|
|:wincmd| accepts a count.
|
||||||
|
|
||||||
Functions:
|
Functions:
|
||||||
|input()| and |inputdialog()| support for each other’s features (return on
|
|input()| and |inputdialog()| support for each other’s features (return on
|
||||||
|
@@ -442,6 +442,7 @@ position is set to keep the same Visual area selected.
|
|||||||
These commands can also be executed with ":wincmd":
|
These commands can also be executed with ":wincmd":
|
||||||
|
|
||||||
:[count]winc[md] {arg}
|
:[count]winc[md] {arg}
|
||||||
|
:winc[md] [count] {arg}
|
||||||
Like executing CTRL-W [count] {arg}. Example: >
|
Like executing CTRL-W [count] {arg}. Example: >
|
||||||
:wincmd j
|
:wincmd j
|
||||||
< Moves to the window below the current one.
|
< Moves to the window below the current one.
|
||||||
|
@@ -3181,7 +3181,7 @@ module.cmds = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
command='wincmd',
|
command='wincmd',
|
||||||
flags=bit.bor(NEEDARG, WORD1, RANGE, CMDWIN, LOCK_OK),
|
flags=bit.bor(NEEDARG, WORD1, RANGE, COUNT, CMDWIN, LOCK_OK),
|
||||||
addr_type='ADDR_OTHER',
|
addr_type='ADDR_OTHER',
|
||||||
func='ex_wincmd',
|
func='ex_wincmd',
|
||||||
},
|
},
|
||||||
|
@@ -137,7 +137,7 @@ func Common_vert_split()
|
|||||||
|
|
||||||
" Test diffoff
|
" Test diffoff
|
||||||
diffoff!
|
diffoff!
|
||||||
1wincmd 2
|
1wincmd w
|
||||||
let &diff = 1
|
let &diff = 1
|
||||||
let &fdm = diff_fdm
|
let &fdm = diff_fdm
|
||||||
let &fdc = diff_fdc
|
let &fdc = diff_fdc
|
||||||
|
13
test/functional/ex_cmds/wincmd_spec.lua
Normal file
13
test/functional/ex_cmds/wincmd_spec.lua
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
local helpers = require("test.functional.helpers")(after_each)
|
||||||
|
local clear = helpers.clear
|
||||||
|
local eq = helpers.eq
|
||||||
|
local funcs = helpers.funcs
|
||||||
|
local command = helpers.command
|
||||||
|
|
||||||
|
it(':wincmd accepts a count', function()
|
||||||
|
clear()
|
||||||
|
command('vsplit')
|
||||||
|
eq(1, funcs.winnr())
|
||||||
|
command('wincmd 2 w')
|
||||||
|
eq(2, funcs.winnr())
|
||||||
|
end)
|
Reference in New Issue
Block a user