インクルードガード用の neocomplcache スニペット
neocomplcache のスニペットには Vim script の式を使って展開する機能があります.
- c.snip
snippet include_guard
alias inc_guard
prev_word '^'
abbr #if !defined HOGE #define HOGE #endif
#if !defined `toupper( substitute( expand("%"), "\\.", "_", "g" ) )."_INCLUDED__"`
#define `toupper( substitute( expand("%"), "\\.", "_", "g" ) )."_INCLUDED__"`
${0}
#endif // `toupper( substitute( expand("%"), "\\.", "_", "g" ) )."_INCLUDED__"`このファイルを g:neocomplcache_snippets_dir で指定したディレクトリ下に置くと,inc_guard または include_guard というスニペットが neocomplcache の補完候補に現れます.
これはインクルードガード用のプリプロセッサマクロを生成するものです.
hoge.hpp というファイルでこのスニペットを選択すると,
#if !defined HOGE_HPP_INCLUDED__ #define HOGE_HPP_INCLUDED__ #endif // HOGE_HPP_INCLUDED__
というふうに展開されます.
候補名やマクロ変数名が気に入らない場合は適宜変更して下さい.
ちなみに,neocomplcache のスニペット機能は
Shougo/neocomplcache-snippets-complete · GitHub
からインストールできます.