0

私は私の中に次のものを持っています.vimrc

au BufNewFile,BufRead *.pt set filetype=xml

これが必要なのは、*.pt拡張子が付いたファイルを編集しているにもかかわらず、それは確かに有効なxmlファイルであるためです。このようにファイルタイプを設定すると、構文を強調表示できます。

私はvimのsnipmateプラグインを使用しており、これらのファイルはZopeページテンプレート(TALを使用したZPT)であるため、特定のニーズに合わせてpt.snippetsを作成しようとしました。

ここで問題があります。これらのスニペットは実際には一般的なxmlスニペットではないため、xml.snippetsで作成したくありませんが、*.ptファイルはxmlに設定されているため、ptスニペットを定義するとそうではありません。 vimでptファイルを実行しない限りロードされ:set filetype=ptますが、構文の強調表示が失われます。

snipmateからpt.snippetsファイルをロードできるように、xml構文が強調表示されたptファイルを作成できるようにしたいと思います。どうすればいいですか?

(スニペットを一般的なスニペットファイルに配置することは避けたいので、保守しやすいようにpt.snippetsにのみ存在させたいと思います。)

4

3 に答える 3

3

構文は、2つの同時ファイルタイプをサポートしたくないという点で悪名高いです(実際、昨日誰かが同じ質問をしました)

au BufRead *.pt set filetype=xml.pt
au BufNewFile *.pt set filetype=xml.pt

jinfieldの答えは実際にはスポットオンですが、vimの一部のバージョンでコンマ構文が失敗しました

于 2010-06-12T14:03:52.053 に答える
2

Snipmateでは、点線の「filetype」構文を使用できます。次のことを試してください。

au BufNewFile、BufRead * .pt set filetype = xml.pt

于 2010-06-09T15:57:12.540 に答える
1

どうですか?:

autocmd BufNewFile,BufRead *.pt setlocal filetype=pt
autocmd BufNewFile,BufRead *.pt setlocal syntax=xml
于 2010-06-08T21:24:46.970 に答える