4

PHP ファイルで作業する場合、HTML をファイルに埋め込む機会が多くあります。問題は、Vim という名前のファイルを編集するfoo.phpと、そのファイル タイプが自動的に php に設定され、html のスニペットが機能しないことです。

ファイルタイプを html ( :set ft=html)にすばやく設定できますが、2 つの間で変更するのは難しいように思えます。html に設定すると、php ファイルの強調表示が失われます。ファイルタイプが php の場合、html の強調表示が機能するのは驚くべきことです。

スニペット マネージャーとして snipMate を使用しています。どうすれば私が望むものを達成できますか。

4

2 に答える 2

5

PHP と HTML 条件(snipMate を使用する場合)は簡単ですが、他のファイルタイプは試していません。これは ~/.vimrc ファイルで設定できます:

autocmd filetype php set filetype=php.html

注意すべき点は、filetype を に設定するphp.htmlと、強調表示は PHP 用になり、スニペットは html からインポートされます。上記の構成はset ft=html.php(スニペットは機能します) とは異なります。なぜなら、ハイライトは html に対して有効になるからです。同様に、set filetype=php.css.html3 つのファイル タイプすべてのスニペットがインポートされますが、vim は PHP に従って強調表示されます。

于 2012-09-18T06:21:29.257 に答える
3

使用しているスニペット プラグインを教えてくれませんでした。元のsnipMate~/.vim/ftplugin/php_snipMate.vimプラグインの場合、次の内容のファイルを作成します。

silent call ExtractSnipsFile(g:snippets_dir . 'html.snippets', &l:filetype)

スクリプトの名前と場所により、すべての PHP ファイルが自動的に読み込まれ、既存のすべての PHP スニペットに加えて html スニペットがインポートされます。

于 2012-09-18T07:23:29.080 に答える