使用されている構文ファイルを確認するにはどうすればよいですか?


50

Vimは私のファイルを面白い方法で強調表示する構文であり、この動作の原因となっている構文ファイルを知りたいです。vimが読み込んだ構文ファイルを確認するにはどうすればよいですか?

回答:


39

Vimが実際にロードしたファイルを見つけるには、次を実行します

:scriptnames

それは便利です。さて、ここで私は確信していません:構文ファイルがこのリストに表示された場合、構文ファイルが「アクティブ」であることは保証されますか?ここにはかなりの数の構文ファイルがあります。
エドワードZ.ヤン

7
通常、最後にリストされているもののみが「アクティブ」であり、構文の強調表示をオフにした場合でもそうではない場合があります。現在有効な構文を確認するには、を実行し:echo b:current_syntaxます。現在有効な構文項目を確認するには、Ingoの提案に従って実行し:syntax listます。Ingoが指摘したように、後者は複数の構文ファイルからの構文項目が有効な場合に役立ちます。
ゲイリージョン

1
Mac OS XIでは、/usr/share/vim/vim73/filetype.vim。上記のコマンドを使用した後、でMacVimのバージョンを使用していることに気付きました~/Applications/MacVim.app/Contents/Resources/vim/runtime/filetype.vim。MacVimがインストールされている場合は、必ず正しいファイルを変更してください。
15年

1
同じ名前の2つの構文ファイルをロードできます。たとえば、vimには、ColdFusionの構文強調表示が付属しています(/usr/share/vim/vim81/syntax/cf.vim私にとって)。標準のcf.vimは日付が付けられているため、カスタムcf.vimをインストールしました。 :scriptnames両方のファイルを表示します。デフォルトはスクリプトリストの下位です。ただし、前者が使用されています。を見ると/usr/share/vim/vim81/syntax/cf.vim、ガードがありif exists("b:current_syntax") finish endifます。したがって、私の場合、これscriptnamesは役に立ちましたが、もう少し掘り下げなければなりませんでした。
アベジダ

31

現在のバッファの構文は、次の方法で照会できます

:setlocal syntax?

通常(ただし、必ずというわけではありません)、バッファのファイルタイプ(:setlocal filetype?)に対応します。

より詳しく見るには、

:syntax list

ショーのすべての構文定義は、(いくつかの構文(CAN)は、他の言語の構文例えば、含まれjavaているhtmlJavadocコメントマークアップのために)。


これは、OPの質問のタイトルに基づいて私が探していたものです。もちろん、OPは彼が実際の構文ファイルを探している説明で明確にしていますが、検索エンジンの最初の答えの1つであるため、ここに残していただきありがとうございます。
44分に詳細表示

4

現在使用されているファイルタイプを表示するには、

:verbose set ft ?

ファイルタイプを処理するプラグインは、ほとんどの場合にあります

:e $VIMRUNTIME\ftplugin
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.