Конспект по Vim

Vim - мінімалістичний і недружній до користувача редактор коду, що має високий поріг входу але дає дуже великий приріст продуктивності. Є форк Neovim основною відмітністю якого є сучасний дизайн. Більшість плагінів однаково підходять для Vim та Neovim.

Можна використовувати vim-управління у браузері за допомогою розширень.

Управління

Переміщення по файлу

  • Ctrl+f - переміститися на сторінку вниз;
  • Ctrl+b - переміститися на сторінку вгору;
  • Ctrl+d - переміститися на півсторінки вниз;
  • Ctrl+u - переміститися на півсторінки вгору;
  • Ctrl+y - переміститися на сторінку вверх, без зміни положення курсору;
  • Ctrl+e - переміститися на сторінку вниз, без зміни положення курсору;
  • 0 - переміщення у початок поточного рядка;
  • ^ - переміститися у початок поточного рядка до першого непробільного символу;
  • $ - переміститись у кінець рядка;
  • w - переміститись на слово вправо;
  • b - переміститись на слово вліво;
  • W - переміститись до пробілу вправо;
  • B - переміститись до пробілу вліво;
  • } - переміститись на абзац вниз;
  • { - переміститись на абзац вгору;
  • gg - переміститись на початок файлу;
  • G - переміститись на кінець файлу;
  • %номер%+G - перейти на рядок %номер%;
  • /%текст%+CR - перейти до %текст%;
  • ?%текст%+CR - перейти до %текст% назад;
  • n - наступне співпадіння;
  • N - попереднє співпадіння;
  • [[ - перейти у початок функції;
  • '' - перейти до місця виконання команди [[.

Переміщення по екрану

  • z - перемістити курсор униз сторінки;
  • z+Enter - перемістити курсор уверх сторінки;
  • z+. або zz - перемістити курсор на середину сторінки

Переміщення у межах сторінки

  • H - переміститись на верхній рядок екрану;
  • %номер%+H - переміститись на рядок %номер%;
  • M - переміститись на середній рядок екрану;
  • L - переміститись на останній рядок екрану;
  • %номер%+L - переміститись на рядок %номер% з кінця екрану.

Редагування тексту

  • i - перейти у режим вводу з поточної позиції;
  • a - перейти у режим вводу після курсору;
  • I - переміститися на початок рядку та перейти у режим вводу;
  • A - переміститися у кінець рядку та перейти у режим вводу;
  • o - перейти у режим вводу з нового рядку під курсором;
  • O - перейти у режим вводу з нового рядку над курсором;
  • %номер%+s - виділяє вказану кількість символів та переходить у режим вводу та заміняє виділені символи. На відміну від команди c яка може виділити шматок тексту не менше слова (cw), команда s можна виділити будь яку кількість символів. Ця команда використовується для заміни одного або кількох символів на інші символи;
  • %номер%+S - виділяє поточну кількість рядків і переходить у режим вводу. Число вказує кількість рядків після поточного. Наприклад 4 виділяє чотири рядка разом з поточним;
  • R - переходить у режим вводу з заміною тексту. Символи під курсором замінюються на символи що вводяться. Команда використовуються коли невідомо скільки потрібно буде замінити символів на інші (інакше можна буде використати команду s з вказанням кількості замінних символів).

Робота з файлом

  • :Q! - закрити редактор без збереження
  • :E %filename% - прочитати файл у позицію курсору
  • :R %filename - вставити вміст файлу у наступний рядок
  • :R! - виконати команду оболонки і вставити відповідь в редактор
  • :Set %variable%=%value% - встановити значення змінної до закриття редактору
  • :buffers - подивитись відкриті файли

Для копіювання і вставки тексту перейти у візуальний режим v. У візуальному режимі при переміщення буде виділятись текст, який можна скопіювати натиснувши y або вирізати натиснувши d чи вставити - P.

Заміна тексту

  • :s/те_що_треба_замінити/те_на_що_треба_замінити/ - заміна тексту у рядку
  • :s/те_що_треба_замінити/те_на_що_треба_замінити/g - заміна тексту у всьому документі

Згортання тексту

Vim дозволяє згортати блоки тексту в один рядок якщо текст у даний момент не потрібен.

  • zf+%номер%+j - створює згортку від позиції курсору на %номер% рядків нижче;
  • zf/%слово% - створює згортку від позиції курсору до рядка що містить %слово%;
  • zj - перейти до наступної згортки;
  • zk - перейти до попередньої згортки;
  • zo - відкрити згортку під курсором;
  • za - закрити чи закрити згортку під курсором;
  • - закрити згортку під курсором;
  • zO - відкрити всі згортки під курсором;
  • zm - збільшити рівень вкладеності закритих згорток на одну. Закрити по одній згортці, що містить інші згортки;
  • zM - закрити усі відкрити згортки;
  • zr - зменшити рівень вкладеності закритих згорток на одну. Відкрити всі зовнішні згортки не чіпаючи їх вміст;
  • zR - відкрити всі згортки;
  • zd - видалити згортку під курсором;
  • zE - видалити всі згортки;
  • [z - переміститись на початок відкритої згортки;
  • ]z - переміститись на кінець відкритої згортки.

Інтеграції з іншими програмами

Додатки та плагіни для роботи у програмах у стилі Vim:

  • Vimium - додаток для браузеру.

Посилання:

04.12.2021
Tags: vim  neovim  firefox  vimium