> autocmdで行わずfiletype pluginにc.vimなどを作ってその中で「indent on」をしておく。ということですか。
絶対にノゥ。:help :filetype-overviewを参照してください。
インデント関係の設定はfiletype pluginとは別に用意されています。:help 'runtimepath'なども読んでみてください。
コメント欄で教えて頂いたfiletype-overviewとruntimepathをヘルプってみた。
インデントスクリプトという初めて存在を知りました。
ファイルタイプごとに独自の設定ができ、ftpluginとは別にindentというディレクトリをきって設定するようです。
例は$VIMRUNTIME/indentを参照
と書いてあったので見てみたのですが「c.vim」はコメントを除くとこれだけです。
cindentオプションに全部集約されているんでしょう。
if exists("b:did_indent") finish endif let b:did_indent = 1 setlocal cindent let b:undo_indent = "setl cin<"
Rubyのindentファイルを見て卒倒しました。
indentを制御は設定というレベルを超えて、vimscript全開です。
これは、すごい。
今まで気に留めなく使っていた機能ですが、改めてありがたさを実感。
:filetype
help
:help :filetype-overview
:filetype
はファイル形式に関して3つの制御ができるようです。
3つとは下記の指定。
- on/off
- ファイル形式の検出
- plugin
- ファイルタイププラグインの有効の有無
- indent
- インデントの有効の有無
コマンド | 検出 | プラグイン | インデント | ||
:filetype on | 有効 | 変化なし | 変化なし | ||
:filetype off | 無効 | 変化なし | 変化なし | ||
:filetype plugin on | 有効 | 有効 | 変化なし | ||
:filetype plugin off | 変化なし | 無効 | 変化なし | ||
:filetype indent on | 有効 | 変化なし | 有効 | ||
:filetype indent off | 変化なし | 変化なし | 無効 | ||
:filetype plugin indent on | 有効 | 有効 | 有効 | ||
:filetype plugin indent off | 変化なし | 無効 | 無効 |
ふむふむ。
usr_30の3にも説明があった。
なるほどなるほど。
これはわかりやすい説明だ。
help最高。