Vim で関数の引数を束縛

いまさらですが Vimfunction() に関数の引数を束縛する機能が実装されました。 第二引数に束縛する引数を配列で渡す事が出来ます。

function! s:plus(a, b)
    return a:a + a:b
endfunction

let s:Plus3 = function("s:plus", [3])
echo s:Plus3(5)
# => 8

let s:Get = function("get", [[1, 2, 3]])
echo s:Get(2)
# => 3

めちゃくちゃ便利だ…。