mirror of
https://github.com/neovim/neovim.git
synced 2025-12-16 03:15:39 +00:00
fix(api)!: correctly deal with number before :tab
Now nvim_parse_cmd and nvim_create_user_command use a "tab" value which is the same as the number passed before :tab modifier instead of the number plus 1, and "tab" value is -1 if :tab modifier is not used.
This commit is contained in:
@@ -136,7 +136,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -172,7 +172,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -208,7 +208,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -244,7 +244,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "botright",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = true,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -280,7 +280,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -316,7 +316,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -364,7 +364,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -401,7 +401,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -448,7 +448,7 @@ describe('nvim_create_user_command', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -523,8 +523,29 @@ describe('nvim_create_user_command', function()
|
||||
vim.api.nvim_cmd({ cmd = 'echo', args = { '&verbose' }, mods = opts.smods }, {})
|
||||
end, {})
|
||||
]]
|
||||
|
||||
eq("3", meths.cmd({ cmd = 'MyEcho', mods = { verbose = 3 } }, { output = true }))
|
||||
|
||||
eq(1, #meths.list_tabpages())
|
||||
exec_lua[[
|
||||
vim.api.nvim_create_user_command('MySplit', function(opts)
|
||||
vim.api.nvim_cmd({ cmd = 'split', mods = opts.smods }, {})
|
||||
end, {})
|
||||
]]
|
||||
meths.cmd({ cmd = 'MySplit' }, {})
|
||||
eq(1, #meths.list_tabpages())
|
||||
eq(2, #meths.list_wins())
|
||||
meths.cmd({ cmd = 'MySplit', mods = { tab = 1 } }, {})
|
||||
eq(2, #meths.list_tabpages())
|
||||
eq(2, funcs.tabpagenr())
|
||||
meths.cmd({ cmd = 'MySplit', mods = { tab = 1 } }, {})
|
||||
eq(3, #meths.list_tabpages())
|
||||
eq(2, funcs.tabpagenr())
|
||||
meths.cmd({ cmd = 'MySplit', mods = { tab = 3 } }, {})
|
||||
eq(4, #meths.list_tabpages())
|
||||
eq(4, funcs.tabpagenr())
|
||||
meths.cmd({ cmd = 'MySplit', mods = { tab = 0 } }, {})
|
||||
eq(5, #meths.list_tabpages())
|
||||
eq(1, funcs.tabpagenr())
|
||||
end)
|
||||
end)
|
||||
|
||||
|
||||
@@ -3206,7 +3206,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3248,7 +3248,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3290,7 +3290,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3332,7 +3332,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3374,7 +3374,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3416,7 +3416,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3458,7 +3458,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = true,
|
||||
split = "topleft",
|
||||
tab = 2,
|
||||
tab = 1,
|
||||
unsilent = false,
|
||||
verbose = 15,
|
||||
vertical = false,
|
||||
@@ -3503,7 +3503,7 @@ describe('API', function()
|
||||
verbose = 0,
|
||||
vertical = false,
|
||||
},
|
||||
}, meths.parse_cmd('0verbose unsilent botright confirm filter! /foo/ split foo.txt', {}))
|
||||
}, meths.parse_cmd('0verbose unsilent botright 0tab confirm filter! /foo/ split foo.txt', {}))
|
||||
end)
|
||||
it('works with user commands', function()
|
||||
command('command -bang -nargs=+ -range -addr=lines MyCommand echo foo')
|
||||
@@ -3541,7 +3541,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3583,7 +3583,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3626,7 +3626,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
@@ -3719,7 +3719,7 @@ describe('API', function()
|
||||
sandbox = false,
|
||||
silent = false,
|
||||
split = "",
|
||||
tab = 0,
|
||||
tab = -1,
|
||||
unsilent = false,
|
||||
verbose = -1,
|
||||
vertical = false,
|
||||
|
||||
Reference in New Issue
Block a user