emacsみたいに;を打った時に自動インデントさせたかったので, 調べてみるとcinkeysというのがインデントのトリガーになっているらしい. ということで,cinkeysに;を追加. set smarttab set smartindent au FileType c call s:cF() func! s:cF() setl cindent setl cinkeys+=; endfunc とりあえず,問題なくインデントされました. id:ka-nachtさんの指摘を受けてs:cF()内のset->setlに修正しました.感謝.20090620