vi - это широко известный текстовый редактор, ориентированный на экран, который восходит к ранним временам Unix. Его самая впечатляющая особенность в том, что он может работать в двух разных режимах.
В режиме вставки текст становится частью файла. В обычном режиме нажатия клавиш понимаются как прямые команды. Поэтому различные клавиатурные команды используются для уменьшения объема работы, необходимой для редактирования файла.
Но если команды такие разные, действительно ли проще удалять строки или редактировать их с помощью команд нажатия клавиш? - Давайте разберемся.
Разрезание линии или блока
Быстрые ссылки
- Разрезание линии или блока
-
-
- Поместите курсор перед строкой текста, которую вы хотите удалить.
- Нажмите v и начните визуальный выбор персонажа
- Нажмите V, если вы хотите выделить целые строки
- Нажмите Ctrl + v или Ctrl + q, если вы хотите выделить блок
- Поместите курсор в конец строки текста
- Нажмите d, чтобы вырезать
-
-
- Редактирование по линии
- Удаление нескольких строк
- Использование символов, слов и линий в обычном режиме
- дд
- X / X
- с.в.
- Последняя мысль
-
Поместите курсор перед строкой текста, которую вы хотите удалить.
-
Нажмите v и начните визуальный выбор персонажа
-
Нажмите V, если вы хотите выделить целые строки
-
Нажмите Ctrl + v или Ctrl + q, если вы хотите выделить блок
-
Поместите курсор в конец строки текста
-
Нажмите d, чтобы вырезать
Если вы хотите вставить эту строку в другое место, просто переместите курсор в новое место и нажмите p. Обратите внимание, что нажатие p вставит строку или блок после позиции курсора. Если вы хотите вставить до позиции курсора, вы должны нажать P.
Редактирование по линии
Вы также можете изменить выделенный текст, если вы нажмете c на шаге 6. Нажатие d обрежет, нажатие y приведет к срыву или копированию, а c откроет режим вставки, в котором вы можете добавить новый текст. Это может помочь вам заменить целую строку или блок, не заботясь о том, чтобы сначала их обрезать.
Удаление нескольких строк
Есть два хороших варианта, если вы хотите удалить более одной строки в vi.
“:%d”
Эта команда удаляет все строки. «:» Переводит vi в командный режим. Символ «%» говорит ему применить «d» (команда удаления) ко всем строкам.
“:1, $d”
Это более популярная альтернатива. Опять же, «:» вводит команду. '1, $' говорит vi, какие строки нацеливать. В этом примере это будут строки, начинающиеся со строки 1 и последней. «д» означает удаление.
Но что делает эту команду лучше первой? - Этот адаптируется. Вы можете использовать его для массового удаления строк, но без необходимости удалять каждую из них.
Если вы используете что-то вроде “:4, $-2d”
то vi удалит все строки между третьей и второй до последней. Первые три остаются без изменений, потому что строки начинаются с 1, а не с 0. И вы указываете первую строку, которую хотите удалить, в этом примере это 4.
«-2» в основном представляет, сколько строк начинается с последней и начинается с 1.
Использование символов, слов и линий в обычном режиме
Во-первых, вам нужно убедиться, что вы нажали Escape, чтобы войти в нормальный режим. После этого вы можете использовать следующие команды vi для удаления конкретной информации.
дд
Эта команда удаляет всю строку. Вы можете расположить курсор в любом месте строки, будь то слово или пустое место. Линия и все занимаемое ею пространство будут стерты.
X / X
Если вы хотите удалить только один символ из строки, вы можете использовать x. Поместите курсор после символа и нажмите x. Это удалит персонажа, а также место, которое он занимал. Это также означает, что все остальные персонажи рядом с ним соберутся вместе, чтобы заполнить пробел.
Вы также можете использовать x, чтобы удалить пробел в строке. Если вы наводите курсор на символ и хотите удалить предыдущий, нажмите X вместо x.
с.в.
Нажатие dw, когда курсор находится в начале слова, удалит это слово. Это также удалит пространство, занимаемое словом. Кроме того, вы можете удалить только части слова.
Наведите курсор на левую часть части, которую вы хотите удалить. Нажмите dw, чтобы удалить эти символы и место, которое они занимали в строке. Имейте в виду, что при выполнении этой операции смежные персонажи соберутся, чтобы заполнить пробел.
Последняя мысль
Такой же интересный и уникальный, как vi как модальный редактор, требуется время, чтобы привыкнуть к нему. Там очень мало отзывов, когда дело доходит до переключения между режимами. Это позволяет очень легко случайно ввести кодовый код, когда вы должны давать команду, и наоборот.