Как же можно получить ВИМ заменить символ в пределах визуального выделения только и не в другом месте на линии? Пример:
- Линия:
int arr[] = { 00 01 02 03 04 05 05 /* ... lots more like this*/};
- Визуальный отбор:
{ 00 01 02 03 04 05 05 /*... lots more like this*/}
- Команда:
:'<,'>s/\ /\,0x/g
- Ожидаемое:
int arr[] = {0x00,0x01,0x02,0x03 /* and so on*/};
Однако после выполнения этих действий фактический результат:
int,0xarr[],0x=,0x{0x00,0x01,0x02,0x03 /* and so on*/};
Есть ли способ изменить приведенную выше команду для получения ожидаемого результата? Не '<
и '>
определить диапазон , на котором поиск (и заменить) команды работают?
:substitute
операторы работают построчно, что объясняет то, что вы видите в своем примере.