Я хотів би вставити слово в кілька рядків, чи є якась така команда
:[2,3,5,7,11]s/^/word\ /g
який би вставити word
на початку рядка 2, рядок 3, рядок 5, рядок 7 та рядок 11?
Тут кілька рядків не є суміжними.
Я хотів би вставити слово в кілька рядків, чи є якась така команда
:[2,3,5,7,11]s/^/word\ /g
який би вставити word
на початку рядка 2, рядок 3, рядок 5, рядок 7 та рядок 11?
Тут кілька рядків не є суміжними.
Відповіді:
Зробити заміну в декількох послідовних лініях досить просто:
:2,11s/^/word /
але діапазон не може охоплювати непослідовні рядки.
Але, маючи трохи творчості, цілком можливо обійти це "обмеження".
Дійсно, ви можете повторити останню заміну на ( :&
або :&&
(перша не збереже початкові прапори, друга -), тому ви можете легко замінити ланцюги:
2s/^/word /|3&|5&|7&|11&
Перегляньте :help :&
і прокрутіть навколо :&&
.