Fallerhaltende Suche und Ersetzung in vim?

11

In vim, ich weiß , dass ich mit oder ohne Groß- und Kleinschreibung suchen. Aber wenn ich nach einer Zeichenfolge in Groß- oder Kleinschreibung suchen und diese durch eine Ersetzung derselben ersetzen möchte, ist dies in einer einzelnen Zeichenfolge möglich :s///?

Zum Beispiel möchte ich diese Zeilen ändern:

short
Short
SHORT

zu

long
Long
LONG

Ich kann dies in drei :soder einem unempfindlichen :sBefehl tun und die Fälle manuell beheben, aber gibt es einen besseren Weg? Eine fallerhaltende Suche und Ersetzung?

Kevin
quelle

Antworten:

3

:sSoweit ich weiß, gibt es dafür keine native Funktion. Wenn Sie jedoch bereit sind, Add-Ons zu installieren, können Sie sich das Keepcase-Plugin von Michael Geddes ansehen .

jw013
quelle
1

Sie können dieses Plugin ausprobieren.

https://github.com/tpope/vim-abolish

Dieses Plugin kann Ihnen helfen, nicht nur den Groß- und Kleinschreibungstext, sondern auch seine Varianten abzugleichen. Like /good{,ies}passt sowohl zu guten als auch zu guten Sachen.

Ebenso kann es durch Groß- und Kleinschreibung sowie Variante ersetzt werden.

      :%S/long/short/g

wird long durch short ersetzen, Long durch Short, LONG durch SHORT.

SibiCoder
quelle