Ich versuche ein neues Textobjekt in Evil zu erstellen. Zum Beispiel wird das Textobjekt iw nur Teilmengen von Strings auswählen, die Bindestriche enthalten. Ich möchte, dass das neue Textobjekt Wörter mit beliebigen Nicht-Leerzeichenzeichen abgleicht. Was ich bis jetzt bekommen habe ist:
%Vor%Dieser Code stimmt nicht mit Wörtern am Ende einer Zeile überein. Es funktioniert für Wörter am Anfang einer Zeile dank \ n.
Ich habe viele Dinge ausprobiert, die nicht funktionierten. Das Problem für mich ist, dass, wenn etwas nicht funktioniert, ich nicht weiß, ob es aufgrund einer falschen Regexp oder Einschränkungen im Bösen-Regexp-Bereich ist. Zum Beispiel meldet die Verwendung von \ s einen Fehler, der im Bösen eine Einschränkung darstellt.
Aktualisierung : evil-regexp-range
war kürzlich ersetzt durch evil-select-paren
. Dies funktioniert gegen das aktuelle Böse und hat die gleiche Verwendung wie das alte:
Ursprüngliche Antwort:
Wenn Sie mehr als ein neues Textobjekt definieren, kann die Wiederholung lästig werden, besonders wenn Sie sowohl innere als auch äußere Objekte binden wollen. Wenn Sie diese Barriere treffen, versuchen Sie Folgendes:
%Vor%Verwendung:
%Vor%(Das ist mehr als Sie wollten, aber ich werde es hier lassen, falls es jemandem hilft:)
Ich glaube nicht, dass Sie ein neues Textobjekt erstellen müssen. Evil enthält das Symboltextobjekt. Die Symbolsyntax wird durch den Hauptmodus definiert und enthält normalerweise Bindestriche, Zahlen, Unterstriche und andere Nicht-Leerzeichen.
Das Symboltextobjekt ist an o
gebunden. Die Definition ist böse- maps.el bei Bitbucket