noise

計算機科学や各種設定のメモ

vim filetype plugin が .vimrc の設定を上書きしてしまう

set nolinebreak
set textwidth=0

で自動での改行挿入を防ぐことが出来るらしいのですが .vimrc に書いてもOCaml でコーディングしている際、反映されず常にいらいらしていました。解決法を以下に書きます。

set runtimepath?

または

set rtp?

してみると runtimepath として ~/.vim/after が最後に読みこまれることが分かります。

/usr/share/vim/vim73 の標準プラグインが読まれたあとに何か読ませる場合ここになにかおけば良さそうです。

vim 内で

:scriptnames

としてやると現在読み込まれているスクリプトのすべてが表示できます。

この中にある /usr/share/vim/vim73/indent/ocaml.vim 内で textwidth が上書きされていることが分かります。

これを更に上書きするために ~/.vim/after/indent/ocaml.vim というファイルを作り、そこで

setlocal textwidth=0

と設定してやります。

これで問題は解決できるはずです。
OCaml ファイルを開いて scriptnames を実行すると after 内のプラグインが読みこまれていることが確認できます。