Vim script の lambda にローカル変数をキャプチャする機能が実装された
Vim の patch 7.4.2119 で Vim script の lambda に『ローカル変数をキャプチャする』機能が実装されたました。
function! s:main() let value = 2 " lambda 内から外部のローカル変数が参照できる let PlusValue = { x -> x + value } echo PlusValue(3) " => 5 " ローカル変数を書き換えた場合も反映される let value = -3 echo PlusValue(7) " => 4 endfunction call s:main()
これでかなり lambda が便利になりました。