Vim のバージョンを取得する

LingrVim 部屋で話題になっていたので覚書。
Vim のバージョンは :version で出力する事ができますがスクリプトでは、v:version でバージョン番号が取得できます。

" 7.4 であれば
echo v:version
" => 704

[パッチ番号を取得]

v:version では適用されているパッチ番号を取得できないので has() を使用します。
どのパッチまで適用されているのかを判定する場合はスクリプト書くしかなさそう。

let i = 1
while has("patch" . i)
    let i += 1
endwhile
echon printf("%04d", i - 1)
" => 0051
unlet i


ただし、

http://lingr.com/room/vim/archives/2013/10/20#message-17115802
と、いうケースもあるようなので完璧とはいえなさそう。