Как удалить выделенный текст в редакторе VI

Я использую замазку и редактор vi. Если я выберу 5 строк с помощью мыши и хочу удалить эти строки, как я могу это сделать?

Кроме того, как я могу выбрать строки с помощью клавиатуры, как я могу в Windows, где я нажимаю shift и перемещаю стрелки, чтобы выделить текст? Как я могу сделать это в vi?

Ответ 1

Я использую замазку и редактор vi, если выделю 5 строк с помощью мыши и хочу удалить эти строки. Как я могу это сделать?

Забудь мышку. Чтобы удалить 5 строк, либо:

  • Перейдите к первой строке и введите d5d (dd удаляет одну строку, d5d удаляет 5 строк) ~ или ~
  • Введите Shift-v, чтобы войти в режим выбора линии, затем переместите курсор вниз, используя j (да, используйте h, j, k и l для перемещения влево, вниз, вверх, вправо соответственно, что гораздо эффективнее, чем с помощью стрелок) и введите d, чтобы удалить выделение.

Кроме того, как я могу выбрать строки на клавиатуре, как в Windows, я нажимаю Shift и перемещать стрелки для выбора текста. как я могу сделать это в vi

Как я уже сказал, либо используйте Shift-v, чтобы войти в режим выбора линии, либо v, чтобы войти в режим символьного выбора, либо Ctrl-v, чтобы войти в режим блочного выбора. Затем перейдите с помощью h, j, k и l.

Я предлагаю провести некоторое время с VIM Tutor (запустить vimtutor), чтобы познакомиться с VIM очень дидактическим способом.

Смотрите также

Ответ 2

Сделайте это vi.

Чтобы удалить 5 строк, нажмите: 5dd (5 delete)

Чтобы выбрать (фактически скопировать их в буфер обмена), введите: 10yy

Немного сложно понять, но очень удобно учиться при использовании этих удаленных терминалов

Имейте в виду кривые обучения для некоторых редакторов:

http://unix.rulez.org/~calver/pictures/curves.jpg

Ответ 3

Если вы хотите удалить номера строк, вы можете использовать

:startingline, last line d

Пример:

:7,20 d

В этом примере удаляются строки с 7 по 20. .

Ответ 4

Выделение мышью только подчеркивает символы на терминале. VI действительно не получает эту информацию, поэтому вам нужно выделить по-другому.

Нажмите "v", чтобы перейти в режим выбора, и используйте клавиши со стрелками для перемещения по нему. Для удаления нажмите x. Чтобы выбрать строки за раз, нажмите shift + v. Чтобы выбрать блоки, попробуйте ctrl + v. Это полезно, скажем, для добавления большого количества строк комментариев перед вашим кодом:).

Я в порядке с VI, но мне потребовалось некоторое время, чтобы улучшить. Мои товарищи по работе рекомендовали мне этот обманщик. Я сохраняю распечатку на стене для тех странных моментов, когда что-то забываю.

Счастливый взлом!

Ответ 5

При использовании терминала, такого как Putty, обычно щелчки и выборки мышью не передаются в удаленную систему. Итак, vi не знает, что вы только что выбрали текст. (Есть исключения из этого, но в целом действия мыши не передаются.)

Чтобы удалить несколько строк в vi, используйте что-то вроде 5dd для удаления 5 строк.

Если вы не используете Vim, я настоятельно рекомендую это сделать. Вы можете использовать визуальный выбор, когда вы нажимаете V для запуска визуального блока, перемещаете курсор на другой конец и нажимаете d для удаления (или любую другую команду редактирования, например y для копирования).

Ответ 6

Если вы хотите удалить все строки в файле из вашего текущего номера строки, используйте dG, он удалит все строки (shift g) означает конец файла