3

「[Capítulo」と「]」およびそれらの間のすべてを強調表示するスクリプトコードが必要です。ありがとうございました。

たとえば、.txtファイルを開くたびに機能させたいです。コードの強調表示と同じように。

4

2 に答える 2

5

これを行う簡単な方法は次のとおりです。

vimでは、構文の強調表示がオンになっていることを確認してください:syn on

コマンド:highlightを実行して、すべてのハイライト グループ名のリストと、それらがどのように見えるかのサンプルを取得します。このErrorグループは、私の配色で際立っているように見えるので、例ではそれを使用します (ただし、Todoやなどの他の名前を使用できますSearch) 。

:syntax match Error /\[Capítulo[^\]]*\]/ 

このパターンにより、最大のチャンクを貪欲に一致させることができなくなります。他の人が正規表現を使用することを提案して/\[Capítulo.*\]/いますが、行にそのようなパターンが 2 つ以上ある場合、その間のすべてに一致するため、おそらくあなたが望むものではありません。

たとえば/\[Capítulo.*\]/、次の行全体に一致します。

[Capítulo foo] これらの単語は強調表示されるべきではありません [Capítulo bar]

同じ例ですが、/\[Capítulo[^\]]*\]/[] 内のもののみに一致します。

[Capítulo foo]これらの単語は強調表示されるべきではありません[Capítulo bar]

.*正規表現では、できるだけ多くの文字に一致する which を使用する代わりに、一致を終了させたい文字以外のすべてに一致するグループを作成するのが一般的なトリックです。この場合、「 ] 以外のすべてに一致する」というグループを作成します[^\]]*

これが思いどおりに機能する場合は、" " のない構文一致行を:.vimrc に追加します。

于 2009-04-03T05:56:50.997 に答える
1

正規表現はあなたが探しているものです:

/「検索モード」に入るには、次のように入力します。

\[Capítulo。*\]/
于 2009-04-03T05:11:48.860 に答える