インストールと設定
neocomplcacheはインストールして設定済みの前提で,neobundle.vimでneocomplcache-snippets-completeをインストールする.
" .vimrc NeoBundle 'Shougo/neocomplcache-snippets-complete' " snippetの配置場所 g:neocomplcache_snippets_dir='~/.vim/snippets' " キーマップ imap <C-k> <plug>(neocomplcache_snippets_expand) smap <C-k> <plug>(neocomplcache_snippets_expand)
Snippetの作成
g:neocomplcache_snippets_dirで設定した場所に,ファイルタイプ名.snipでsnippetを書いておくファイルを用意する.
とりあえず,C++のBoost.Test用のコードのsnippetを用意してみた.
snippet batc abbr BOOST_AUTO_TEST_CASE prev_word '^' BOOST_AUTO_TEST_CASE(${1:TestName}) { BOOST_FAIL("Fail"); }
後は,C++のソースコードでbatcと入力して,
プレースホルダを設定できて,
ただ,何故かVimを再起動しないと上手くsnippetを読み込んでくれなかった.
プレースホルダの同期
更にあるプレースホルダで設定した内容を他の部分に反映ということまでやってくれる.
snippet c abbr C++ class prev_word '^' class ${1:name} { public: $1(); $1($1 const &); ~$1(); private: };
これで,クラス名を入力すると,自動的にコンストラクタ,コピーコンストラクタ、デストラクタが宣言される.
${数字}で入力した内容を$数字に反映できる.
これだけでも十分使えるよなぁ.後はsnippetを増やしていけば、本当に便利そう.何で今まで使ってなかったのか、と思うね.
ところで、このsnippetの文法というか構文というかは、neocomplcache-snippets-completeのドキュメントだけで完結しているのかな?
ざっと読んだ感じだとprev_wordって何か分からなかったんですが.
0 件のコメント:
コメントを投稿