Ich habe eine sehr einfache Vim-Syntax-Datei für persönliche Notizen. Ich möchte den Namen der Leute hervorheben, und ich wählte eine Twitter-ähnliche Syntax .Wie markieren Sie Wörter, die mit @ in Vim-Syntax beginnen?
Ich habe versucht:
syntax match notesPerson "\<@\S\+"
Mittelwert: Wörter mit @
beginnen und mindestens ein Nicht-Leerzeichen mit. Das Problem ist, dass @
ein Sonderzeichen in Vim regulären Ausdrücken zu sein scheint.
Ich habe versucht, \@
zu entkommen und in Klammern [@]
, die üblichen Tricks, aber das hat nicht funktioniert. Ich könnte etwas wie (^|\s)
(Anfang der Zeile oder Leerzeichen) versuchen, aber das ist genau das Problem, das Wortgrenze versucht zu lösen.
Die Hervorhebung funktioniert bei vereinfachten regulären Ausdrücken. Es handelt sich also eher darum, die richtige Regex zu finden als alles andere. Was vermisse ich?
Warum haben Sie Ihr '+' in '\ S \ +' entkommen? Versuchen Sie '@ \ S +' oder '\ @ \ S +', wenn '@' in 'vim' als Sonderzeichen betrachtet wird. Ich weiß es nicht. –
@RohitJain Weil die vim-Syntax von BRE stammt. Es muss entkommen sein, um etwas Besonderes zu sein. – ZyX
@ZyX .. Oh! Das wusste ich nicht. Danke :) –