私は2台の別々のコンピューターで同じvimrc
を使用しています。どちらのMacBookも(MacVim)を使用しています。ターミナルからファイルを起動した後、ファイルタイプを正しく検出します。もう1つは、手動で入力するようにします。
:set filetype=php
Vimrcのどの設定がこの動作を制御するかについての他の奇妙な観察があれば幸いです。
行を追加してみてください:filetype off
前 filetype plugin indent on
私が最初にチェックすること-壊れたマシンで、vimrcを編集し、set filetype on
がどこかにあることを確認します。
壊れたマシンでチェックする他の事柄:
:filetype
は何を表示しますか? (検出プラグインとインデントがすべてオンになっていると言う必要があります。)set syntax off
はvimrcのどこかに表示されますか?あなたのファイルを見ることからのいくつかの事柄:
70〜72行目:
ファイルタイプは、構文の強調表示にも使用されます。 :syntax on
コマンドを使用すると、ファイルタイプ検出もインストールされます。 :filetype on
の後に:syntax on
を実行する必要はありません。
filetype plugin indent on
を使用する場合は、その直前にfiletype on
は必要ありません。これは、さまざまなコマンドがどのように機能するかです。
コマンド検出プラグインのインデント〜 :ファイルタイプオンオン変更なし :ファイルタイプオフオフ変更なし変更なし :ファイルタイププラグインオンオン変更なし : filetypeプラグインオフ変更なしオフ変更なし :ファイルタイプインデントオンオン変更なしオン :ファイルタイプインデントオフ変更なし変更なしオフ :ファイルタイププラグインインデントオンオンオンオン :filetypeプラグインインデントオフ変更なしオフオフ
170行目:NERDシャットダウンをオフにします。使用ファイルタイプの苦情はありますか?
他の考え:
動作していないマシン上のファイルのfiletypes.vimが変更されている可能性はありますか?ファイルを差分します。それらはまったく同じですか?権限は同じですか?
最近のバージョンのvimは、ファイルタイプの検出に影響を与えるコマンドを.vimrcに設定する可能性があるため、起動時にファイルタイプの検出を自動的に実行しません。
.vimrcの最後に次のコードを置くと、ファイルタイプが再び検出されます
filetype on
filetype plugin on
filetype indent on
いくつかのこと。これら2つのうちの1つでvimrcが「機能する」ので、問題がもう1つにあることを意味します(最初の1つでは、すべてが問題なく機能していると思います)。
Vimは、ロードの優先順位が異なるさまざまなディレクトリから設定ファイルをロードできます(一方が他方を上書きします)。それらがどれであるかを確認するには、「:helpvimfiles」を参照してください。
次に、「:echo $ myvimrc」を試して、「最新の」vimrcがどこからロードされているかを確認します。それはあなたが現在リンクしているものですか?
第三に、デイブがすでに指摘したように、vimディレクトリに「filetype.vim」というファイルがあり、適切なファイルタイプファイルがありますか?
これらのいずれもうまくいかない場合は、使用しているvim/gvimのバージョンもお知らせください。