Станьте майстром VI, вивчивши ці 30 + ключових прив'язок
Vi - це потужний текстовий редактор, включений до більшості систем Linux. Багато людей клянуться vi і знаходять його швидше, ніж будь-який інший редактор, як тільки дізнаються його прив'язки клавіш. Ви навіть можете використовувати клавіатурні скорочення vi у Bash.
Ми вже розглянули початок роботи з vi для початківців. Якщо ви деякий час не використовували vi, можливо, ви захочете поглянути на цю публікацію, щоб освіжити в пам'яті основи.
Перемикання режимів
Коротко, vi - це модальний редактор - є режим вставки і стандартний командний режим. У режимі вставки vi працює подібно до звичайного текстового редактора. У командному режимі ви використовуєте ці прив'язки клавіш.
- я - увійти в режим вставки.
- Escape - вийти з режиму вставки. Якщо ви вже знаходитеся в командному режимі, Escape нічого не робить, тому ви можете натиснути Escape, щоб переконатися, що ви перебуваєте в командному режимі.
Пересування курсора
Vi використовує клавіші hjkl для пересування курсора в командному режимі. Ранні комп'ютерні системи не завжди мали клавіші зі стрілками, тому замість них використовувалися ці клавіші. Однією з переваг цих клавіш є те, що вам не потрібно відводити пальці від домашнього ряду, щоб використовувати їх.
- h - Пересунути курсор ліворуч.
- - Пересунути курсор вниз.
- k - пересунути курсор вгору.
- l - Пересунути курсор праворуч.
Ви також можете використовувати команди пошуку для швидкого пересування курсора.
- / - Введіть a/, а потім текст, який ви хочете знайти, і натисніть Enter, щоб швидко пересунути курсор до положення тексту у файлі. Наприклад, якщо у вашому файлі є слово «ігуана», введіть/iguana і натисніть Enter, щоб швидко пересунути курсор туди.
- - Подобається/, але шукає в зворотному напрямку.
- f - Введіть f, а потім будь-який символ, щоб швидко перемістити курсор до наступного входження символу в поточному рядку. Наприклад, якщо у рядку є рядок «Hello world», а курсор знаходиться на початку рядка, введіть fo, щоб перейти до o в Hello. Введіть fo ще раз, щоб перейти до o у світі.
- F - Як і f, але шукає в зворотному напрямку.
- % - перехід між найближчими (), [] або {} символами у рядку.
Використовуйте ці команди для швидкого переміщення до місць у файлі:
- H - Пересунути курсор на верхній (верхній) рядок у файлі.
- M - Пересунути курсор на середній рядок у файлі.
- L - пересунути курсор на нижній (нижній) рядок у файлі.
- # G - Введіть число, а потім введіть G, щоб перейти до цього рядка у файлі. Наприклад, введіть 4G і натисніть Enter, щоб перейти до четвертого рядка у файлі.
Пересування між словами:
- w - рухатися вперед на слово.
- # w - Пересунути вперед на декілька слів. Наприклад, 2w рухається вперед на два слова.
- б - Поверніться на слово назад.
- # b - Поверніться на кілька слів назад. Наприклад, 3b пересуває назад на три слова.
- e - Перейти до кінця поточного слова.
Копіювання і вставлення
Vi стосується процесу копіювання як «скидання».
- v - Клацніть v і перемістіть курсор, щоб вибрати фрагмент тексту.
- y - Скопіювати (відновити) виділений текст.
- p - Вставити курсор.
- x - вирізає виділений текст. Обрізає символ під курсором, якщо текст не виділено
- r - Введіть r, а потім введіть інший символ, щоб замінити символ під курсором.
Об'єднання команд
Деякі команди, у тому числі наведені вище команди y і v та команда d (delete), приймають команди пересування курсора.
Наприклад, коли ви натискаєте d, щоб видалити текст, нічого не станеться, поки ви не введете команду переміщення курсора. Наприклад:
- dw - вилучає наступне слово.
- db - вилучає попереднє слово
- de - вилучає до кінця поточного слова.
- dL - вилучає весь текст під курсором у файлі.
- d/unicorn - після натискання клавіші Enter видаляє весь текст між курсором і словом «єдиноріг» у поточному файлі.
- dd - вилучає весь рядок.
Як бачите, комбінація комбінації команди з командою переміщення курсора дуже потужна.
Повторити і скасувати
Команда повторення Vi дуже потужна, оскільки вона може повторювати складні комбіновані команди.
- U - Скасувати.
- , -. повторює останню повну команду. Команда вставки також діє тут як команда. Наприклад, введіть iunicorn і натисніть Escape. Потім ви можете використовувати. Клавіша для вставлення слова єдинорога на курсор.
Бонус: використання прив'язок клавіш Vi до Bash
Після того, як ви освоїте прив'язки клавіш vi, ви можете захотіти використовувати їх в інших місцях вашої системи. Немає проблем - ви можете налаштувати оболонку Bash на використання прив'язок клавіш в стилі vi.
Спробуйте це в поточному сеансі, виконавши наступну команду в терміналі Bash:
set -o vi
Bash запуститься в режимі вставки - натисніть Escape для входу в командний режим і використовуйте ці прив'язки клавіш.
Якщо вам це подобається, ви можете додати команду до вашого файла ауд/.bashrc, і вона буде запускатися автоматично при кожному вході в систему. Використовуйте команду vi.bashrc, щоб відкрити та редагувати файл у vi.
Це не повний список прив'язок клавіш для vi, але він повинен допомогти вам зігнути свої крила vi і навчитися літати. Цей список прив'язок клавіш на веб-сайті Гарварду є більш повним і містить більше інформації, хоча він менш організований і важче перетравити все відразу.