Anonim

vi - відомий текстовий редактор, орієнтований на екран, який починається з перших днів Unix. Найбільш вражаюча його особливість полягає в тому, що він може працювати в двох різних режимах.

У режимі "Вставка" текст стає частиною файлу. У звичайному режимі натискання клавіш розуміється як прямі команди. Тому для зменшення обсягу роботи, необхідної для редагування файлу, використовуються різні команди клавіатури.

Але якщо команди настільки різні, чи справді простіше видалити рядки або відредагувати їх за допомогою команд натискання клавіш? - Давай дізнаємось.

Вирізання лінії або блоку

Швидкі посилання

  • Вирізання лінії або блоку
        • Розташуйте курсор перед рядком тексту, який потрібно видалити
        • Натисніть v і розпочніть візуальний вибір символів
        • Натисніть V, якщо ви хочете вибрати цілі рядки
        • Натисніть Ctrl + v або Ctrl + q, якщо ви хочете вибрати блок
        • Розташуйте курсор у кінці рядка тексту
        • Натисніть d, щоб вирізати
  • Редагування по рядку
  • Видалення декількох рядків
  • Використання символів, слів та рядків у звичайному режимі
    • дд
    • х / х
    • роси
  • Заключна думка
  1. Розташуйте курсор перед рядком тексту, який потрібно видалити

  2. Натисніть v і розпочніть візуальний вибір символів

  3. Натисніть V, якщо ви хочете вибрати цілі рядки

  4. Натисніть Ctrl + v або Ctrl + q, якщо ви хочете вибрати блок

  5. Розташуйте курсор у кінці рядка тексту

  6. Натисніть d, щоб вирізати

Якщо ви хочете вставити цю лінію в інше місце, просто перемістіть курсор на нове місце та натисніть p. Зауважте, що натисканням p буде вставлено лінію або блок після позиції курсору. Якщо ви бажаєте вставити перед положенням курсору, вам потрібно натиснути кнопку P.

Редагування по рядку

Ви також можете змінити вибраний текст, якщо натиснути c на кроці 6. Натискання кнопки d зменшиться, натискання кнопки y потягне або скопіює, а c відкриє режим вставки, у якому ви можете додати новий текст. Це може допомогти вам замінити цілу лінію чи блок без необхідності спочатку вирізати їх.

Видалення декількох рядків

Є два хороших варіанти, якщо ви хочете видалити більше одного рядка in vi.

“:%d”

Ця команда видаляє всі рядки. ':' Переводить vi в командний режим. Символ '%' повідомляє йому застосувати команду 'd' (видалити) до всіх рядків.

“:1, $d”

Це більш популярна альтернатива. Знову команда ':' вводить команду. '1, $' повідомляє vi, на які лінії слід націлити. У цьому прикладі це були б рядки, що починаються з рядка 1 та останнього. 'd' означає видалення.

Але що робить цю команду кращою за першу? - Цей адаптований. Ви можете використовувати її для видалення рядків масово, але не потрібно видаляти кожен з них.

Якщо ви використовуєте щось на кшталт “:4, $-2d” vi видалить усі рядки між третьою та другою до останньої. Перші три залишаються недоторканими, оскільки рядки починаються з 1, а не 0. І ви вказуєте перший рядок, який потрібно видалити, який у цьому прикладі дорівнює 4.

Значення '-2' в основному представляє кількість рядків, починаючи з останнього і рахуючи назад до 1.

Використання символів, слів та рядків у звичайному режимі

По-перше, вам потрібно переконатися, що ви натиснули Escape, щоб увійти в звичайний режим. Після цього ви можете використовувати наступні команди vi для видалення конкретної інформації.

дд

Ця команда видаляє цілий рядок. Ви можете розташувати курсор будь-де на лінії, будь то слово чи порожній пробіл. Лінія та весь простір, який вона займає, буде стерто.

х / х

Якщо ви хочете видалити лише один символ із рядка, ви можете використовувати x. Поставте курсор після символу та натисніть x. Це видалить персонажа, а також простір, який він займав. Це також означає, що всі інші символи біля нього зійдуться, щоб заповнити прогалину.

Ви також можете використовувати x, щоб видалити порожній пробіл у рядку. Якщо ви наведіть курсор на символ і хочете видалити його перед ним, натисніть X замість x.

роси

Натискання кнопки dw, коли курсор розташований на початку слова, видалить це слово. Це також видалить простір, зайнятий словом. Крім того, ви можете видалити лише частини слова.

Наведіть курсор на ліву частину частини, яку потрібно видалити. Натисніть кнопку dw, щоб видалити ті символи та простір, який вони займали у рядку. Майте на увазі, що це зробить сусідні символи разом, щоб заповнити прогалину.

Заключна думка

Настільки ж цікавий і унікальний, як vi як модальний редактор, потрібно звикати до нього час. Відгуків щодо переключення між режимами дуже мало. Це дозволяє дуже легко випадково ввести текст коду, коли вам слід давати команду, і навпаки.

Як видалити всі рядки у vi