01/12/31 14:34
>>61 Vim6向け補足
> *.cpp または *.h のバッファに移動した瞬間に挿入モードの時に { を
> タイプすると、どさくさに ClassHeader("-") を実行する。
> バッファから抜けた時(BufLeave)には { での発動を解除。
Vim6ではバッファ毎にマップを指定できるのでftplugin/c.vimに
(ftpluginはUNIXなら$HOME/.vim/ftplugin、Winなら$VIM/vimfiles/ftplugin)
:inoremap <buffer> { {<Esc>:call ClassHeader("-")<CR>a
と書いておけば'filetype'が"c"の時に自動的に読み込まれる。だからaugroup Fooは
要らない。
# 'filetype'がcppの時は$VIMRUNTIME/ftplugin/cpp.vimの記述から'runtimepath'の
# c.vimが読み込まれるようになっているのでc.vimだけで良い。
あと<silent>フラグも指定すればマップ実行時にコマンドラインが汚れることもなくて
更にハッピー。例:
:inoremap <silent> <buffer> { {<Esc>:call ClassHeader("-")<CR>a