Hier ist eine einfache Möglichkeit, es zu tun:
in vim, stellen Sie sicher, Syntax Highlighting ist mit :syn on
führen Sie den Befehl :highlight
, um eine Liste aller th e markieren Gruppennamen und Beispiele dafür, wie sie aussehen. Die Error
Gruppe sieht aus wie es auch in meiner Farbpalette zeichnet sich durch, so werde ich in meinem Beispiel verwenden (aber Sie einen der anderen Namen verwenden können, wie Todo
oder Search
)
:syntax match Error /\[Capítulo[^\]]*\]/
Dieses Muster wird Sie halten von gierig passend zum größten Brocken. Auch wenn andere Leute vorschlagen, dass Sie den regulären Ausdruck verwenden /\[Capítulo.*\]/
- es ist wahrscheinlich nicht, was Sie wollen, weil es alles dazwischen passt, wenn es zwei oder mehr solche Muster in einer Zeile gibt.
Zum Beispiel /\[Capítulo.*\]/
wird diese gesamte Linie entsprechen:
[Capítulo foo] diese Worte sollten nicht hervorgehoben werden [Capítulo bar]
Das gleiche Beispiel, aber mit /\[Capítulo[^\]]*\]/
wird nur Spiel Zeug im Inneren []:
[Capítulo foo] diese Worte sollten nicht hervorgehoben werden [Capítulo bar]
mit regulären Ausdrücken, es ist ein verbreiteter Trick, um eine Gruppe zu bilden, die alles, aber die Zeichen übereinstimmt, die Sie möchten Ihr Spiel beenden, anstatt die .*
der Verwendung das wird so viele Zeichen wie möglich übereinstimmen. In diesem Fall machen wir die Gruppe [^\]]*
- das sagt „Spiel alles außer].“
Wenn dies die Art und Weise funktioniert, wie Sie es möchten die Syntax Übereinstimmungsleitung fügen, ohne die „:
“, um Ihre .vimrc
Wenn Sie /\[Capitulo.*\]/ eingeben, was passiert? – ojblass
Will es auch richtig schreiben? Klar, dass in der Frage oder sonst jeder Antwort gleich sein wird! – ojblass