Wie erhält man vim, einen Buchstaben innerhalb der Sichtauswahl nur und nicht anderswo auf der Linie zu ersetzen ? Beispiel:
- Linie:
int arr[] = { 00 01 02 03 04 05 05 /* ... lots more like this*/};
- Visuelle Auswahl:
{ 00 01 02 03 04 05 05 /*... lots more like this*/}
- Befehl:
:'<,'>s/\ /\,0x/g
- Erwartet:
int arr[] = {0x00,0x01,0x02,0x03 /* and so on*/};
Nach diesen Aktionen ist das tatsächliche Ergebnis jedoch:
int,0xarr[],0x=,0x{0x00,0x01,0x02,0x03 /* and so on*/};
Gibt es eine Möglichkeit, den obigen Befehl zu ändern, um das erwartete Ergebnis zu erzielen? Definiert '<
und nicht '>
den Bereich, in dem die Befehle Suchen (und Ersetzen) funktionieren?
:substitute
Operatoren zeilenweise arbeiten, was erklärt, was Sie in Ihrem Beispiel sehen.