Термінал п’ятниці: Мислення Vim [Деякі поради]

Вибачте за орфографічні помилки Gif, які я написав дуже швидко

Ця публікація була опублікована на форумі пару місяців тому, я думаю, мені пора зайти в блог, сумніви, коментарі, все можна зробити в коментарях, будь ласка НЕ ПОВАЛІТЬ Якщо вам не подобається Vim, просто залиште пост 

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

$vimtutor

Тепер, без зайвих слів, ми починаємо 

Макроси у VIM

Можливо, це не одна з найбільших таємниць vim, але добре знати, що vim має підтримку макросів, можна зберігати макроси з a в стилі z ; щоб розпочати запис, потрібно лише натиснути q+лист щоб зупинити запис, ми натискаємо q а для виклику макросу це щось на зразок нумеро+@+лист.

Де:
лист: Це ключ до a в стилі z.
нумеро: Це кількість разів, коли ми повторимо дію.

Це полегшить багато повторюваних завдань. Наприклад; Припустимо, у нас є такі рядки:

один приклад один два приклад два три приклад три чотири приклад чотири п’ять приклад п’ять

Ми хочемо надати йому такий формат:

'one': 'приклад' 'one'; 'two': 'приклад' 'два'; 'three': 'приклад' 'three'; 'four': 'приклад' 'чотири'; 'п'ять': 'приклад' 'п'ять';

Саме тут макроси полегшують для нас 

ВІМ

Використана послідовність:

qa I '[Esc] ea': [Esc] wi '[Esc] ea' [Esc] wi '[Esc] A'; [Esc] 0j q

Потім встановіть курсор на рядок для зміни та використання нумеро+@+лист у цьому випадку я використовував 4+@+a

Замінити

Дуже важливим інструментом у Vim є заміна цього, ми ставимо себе у режим Vim Normal натисканням Esc пізніше натискаємо : і ми пишемо команду Я кажу команду, бо вона не обмежується заміною. дуже схожий на RegEx
Приклади:

Найпоширеніша зміна рядка символів у всьому документі:

Термінал2

Команда:

:% s / vim / Vim / g

Замінити у всіх рядках vim на Vim примітка: якби у мене не було знаку % Я б лише шукав рядок, який ви знаходитесь

Підставляємо між певним діапазоном тут між рядками 3,5:

Термінал3

Команда:

: 3,5 с / Vim / VIM / g

З рядків 3 до 5 замініть Vim на VIM

Тут зауважте, що немає g врешті-решт він редагує лише перше відповідне слово

Термінал4

Команда:

: 3,5 с / Vim / VIM

Цим рядком ми усуваємо всі рядки, що містять a #

Термінал5

Команда:

:., $ g / # / d

поточного рядка . до кінця документа $ шукайте числівники # і видалити їх d

Тут команда сортує розділ файлу

Термінал6

Команда:

: 3, $ сортування

З рядка 3 до кінця документа замовляйте його

Інші команди

Тут фокус у команді :r зчитування що це робить, як сказано в назві ха-ха-ха, читайте, ви можете додати текст іншого документа, але в цьому прикладі ми додаємо індикатор ! що це окремо для виконання, можна виконати скрипт з того самого vim для налагодження або що завгодно, що ви можете подумати тут, приклад:

Термінал7


Команда в порядку появи:

#Date :: r! Date #Date with format :: r! Date + \% D # Список каталогів :: r! Ls Documents

Я використовую загальні команди, але vim бере вихідні дані будь-якої команди та вставляє їх як текст у документ.

І це лише невелика частина, є ще більше ... І те, що я не знаю ха-ха-ха.

Вибір

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

v Візуальне за персонажами
V Візуальне за рядками
контроль+v Візуальне за блоками

Виберіть, що знаходиться в дужках:
v% Якщо ви знаходитесь на початку / в кінці дужок
vib Якщо ви знаходитесь у дужках

Термінал8

Виберіть, що знаходиться в подвійних або одинарних лапках:
vi' Виберіть одинарні лапки
vi" Виберіть подвійні лапки

Термінал9

viB Виділіть усе, що знаходиться всередині клавіш

Термінал10

Виділення за рядком

ggVG Виділіть весь документ

Термінал11

Ось в основному gg go to start; введіть візуальний селектор V; і йти до кінця Г.

Виділення за блоком

контроль+v

Термінал12

[контроль] v e5j C [ви пишете текст] [esc] [esc]

І в цьому ви вводите візуальний селектор блоками контрольv, Переходжу до кінця слова і на 5 рядків вниз 5j, стираю слово за допомогою C, пишу текст для заміни та натискаю Esc Esc.

Інший той самий, але замість c це щось на зразок видалення та переходу в режим вставки я використовую i переходить у режим вставки I, де знаходиться вказівник.

Все це, що я пояснюю, може здатися таємничим або чимось подібним на зразок vim ninja ха-ха-ха, але це нічого, чого немає в посібнику до vim У Віма є одна з найкращих документальних документацій, яку я знаю щоб ввести документацію, просто введіть

: help

якщо вам потрібно щось конкретне

: help: w

Це призведе вас безпосередньо до розділу, в якому йдеться про: w охоронець.

Тепер так... Щасливі люди Vim. 