Làm thế nào để có được vim để thay thế một nhân vật trong vùng lựa chọn hình ảnh chỉ và không ở đâu đó trên đường? Thí dụ:
- Hàng:
int arr[] = { 00 01 02 03 04 05 05 /* ... lots more like this*/};
- Lựa chọn trực quan:
{ 00 01 02 03 04 05 05 /*... lots more like this*/}
- Chỉ huy:
:'<,'>s/\ /\,0x/g
- Kỳ vọng:
int arr[] = {0x00,0x01,0x02,0x03 /* and so on*/};
Tuy nhiên, sau khi thực hiện các hành động này, kết quả thực tế là:
int,0xarr[],0x=,0x{0x00,0x01,0x02,0x03 /* and so on*/};
Có cách nào để sửa đổi lệnh trên để tạo ra kết quả mong đợi không? Không '<
và '>
xác định phạm vi mà các lệnh tìm kiếm (và thay thế) hoạt động?
:substitute
toán tử trên cơ sở từng dòng, điều này giải thích những gì bạn đang thấy trong ví dụ của bạn.