ham*_*mar 35
从文档中,似乎参数不能在Vim脚本中具有默认值.但是,您可以通过定义具有可变数量参数的函数来模拟这一点,并使用a:0确定额外参数的数量并a:1通过a:n访问它们:
function Foo(bar, ...)
if a:0 > 0
let xyzzy = a:1
else
let xyzzy = 0
end
endfunction
Run Code Online (Sandbox Code Playgroud)
您可以使用get在特定位置选择参数,如果不存在,则使用默认值.
function! Foo(bar, ...)
let baz = get(a:, 1, 0)
endfunction
Run Code Online (Sandbox Code Playgroud)