Подтвердить что ты не робот

Vim: Вы можете удалить определенный номер строки из другой строки?

Я был на линии 93 и понял, что хочу удалить строку 89. Я набрал :d89 в надежде, что строка 89 wold будет удалена. Это не сработало.

Кто-нибудь знает хороший способ достичь такого взаимодействия? Я - удобный пользователь Vim, но пока (пока) не сделал прыжок для написания плагинов...

Спасибо.

4b9b3361

Ответ 1

Сначала указывается адрес команды двоеточия (например, номер строки).

:89d

Обратите внимание, что это также приведет к тому, что вы перейдете к месту изменения. Вы можете использовать `` для возврата назад.

Если вы предпочитаете, чтобы это была одна команда, вы можете определить пользовательскую команду. например:

command! -range -nargs=0 Delete <line1>,<line2>d|norm ``

Это определяет команду под названием Delete, которая удаляет адресный диапазон (<line1>,<line2>d), а затем перемещается назад (norm ``).

Вы можете называть его так:

:89Delete

Фактически вы можете вызвать его с помощью любого уникального префикса, поэтому вы можете получить его:

:89d

Ответ 2

:89d удалит 89-ю строку.

:89,91d удалит 89-ю, 90-ю и 91-ю строку.

Эти функции также работают в плагине Vrapper для Eclipse и расширении Vim для кода Visual Studio.