Как выбрать и удалить строки текста в vi?

17

Если я хочу выделить конкретный текст строки и удалить строки, как я могу это сделать в vi (дать простейшие средства)?

Приостановлено до дальнейшего уведомления.
источник

Ответы:

17

Вы также можете использовать Vв режиме просмотра, чтобы запустить режим "VISUAL LINE". Выберите ваши строки и введите, dчтобы удалить их.

ThR37
источник
4
То есть Shift + V.
Zaz
Что если режим V не реализован (как в старых реализациях Vi?)
Campa
9

Перейдите к строке, которую хотите удалить, используя клавиши со стрелками или клавиши j/ k, и введите dd. Затем вы можете сохранить и выйти, набрав :x(или ZZ). К числу также можно добавить префикс, чтобы ddудалить несколько строк, например, 3ddудалить 3 строки.

Чтобы узнать больше о командах Vi, взгляните на этот удобный чит-лист Vi .

Zaz
источник
1
дд это самый быстрый способ удалить строку.
Raptor
2

перейдите к первой строке, которую вы хотите удалить, и введите (в режиме просмотра), d[x-1]чтобы удалить x строк.

fbstj
источник
2

Другой совет: если вы хотите удалить текстовый абзац, перейдите в начало этого абзаца с помощью {, а затем введите d}

Или, другими словами, {d}

Янне Пиккарайнен
источник
3
Или dapудалите абзац
user1686
@ Grawity: dapне работает для меня в Vi.
Zaz
1
@Josh: 97% случаев, когда кто-то говорит « vi», он либо означает « vim», либо « vimработает в режиме совместимости с vi». Поэтому я предложил vimкоманду -specific (см. Также :help text-objects).
user1686
@grawity: Извините, я работаю с Vim , но dapвсе равно не работает.
Zaz
@Zaz: Возможно, у вашего .vimrcфайла были другие настройки, или, возможно, у @ user1686 были другие настройки.
jvriesem