NeoComplCacheのスニペット補完用C++11スニペットを書いてみた
C++11が国際標準として承認され,これから徐々に広まっていくであろう予測されます.そこでVimの有名な補完プラグイン,NeoComplCacheのスニペットにC++11で新たに加わった range-based-for,ラムダ式,scoped enumeration を追加してみました.
例えば.vimrcで,
let g:neocomplcache_snippets_dir = $HOME . '/.vim/snippets'
などとし,その中に次の内容をcpp.snipとして保存すると補完候補にスニペットが現れます.
#cpp.snip
# range based for ( C++11 feature )
snippet for_CPP11
abbr for (:) {}
for (${1:var} : ${2:container}) {
${0}
}
# lambda expression ( C++11 feature )
snippet lambda
abbr [](){}
[${1}](${2})${3}{ ${4} }
# scoped enumeration ( C++11 feature )
snippet enum_scoped
abbr enum struct {}
enum struct { ${1} }追記:
NeoComplCache作者のShougoさんにスニペットを取り込んでいただいたので,NeoComplCacheを最新版にするだけで上記の操作をしなくても利用できるようになりました.