Из документов видно, что аргументы не могут иметь значения по умолчанию в скрипте Vim. Однако вы можете эмулировать это, определив функцию с переменным числом аргументов и используя a:0
для определения количества дополнительных аргументов и от a:1
до a:n
для доступа к ним:
function Foo(bar, ...)
if a:0 > 0
let xyzzy = a:1
else
let xyzzy = 0
end
endfunction