Англійська для розробників Vim і Neovim

Вивчіть англійську лексику для Vim і Neovim: модальне редагування, рухи і пояснення процесу роботи, створеного для того, щоб ви ніколи не торкалися миші.

Розмови Vim і Neovim покладаються на окремий словник, тому що так багато робочого потоку стосується складання невеликих, названих команд, а не клацання по меню, і бути точним про режими, рухи і текстові об’єкти, що відокремлює справді ефективне пояснення від неясного махання рукою про «клавіатурні скорочення»

Ключовий словник

** Модальний режим редагування (звичайний/ вставлення/ візуальний режим) ** — основний дизайн Vim, у якому однакові клавіші мають різне значення залежно від поточного режиму, що дозволяє виконувати навігацію і редагування за допомогою команд з однією літерою без використання клавіш- модифікаторів. “Ви все ще думаєте у режимі вставки — у звичайному режимі dw вилучає слово, не вводячи літери d і w.”

** Команда пересування ** — натискання клавіші або комбінація клавіш, які пересувають курсор на визначену одиницю (слово, рядок, абзац, відповідну дужку), що стає будівельним блоком для поєднання з командами редагування. } — перехід до наступного порожніх рядка, отже d} вилучає все від курсора до наступного розриву абзацу.”

** Текстовий об’ єкт ** — названа структурна одиниця тексту (слово, рядок у лапках, тіло функції), на яку можна безпосередньо спрямувати команди редагування, незалежно від точного розташування курсора.

  • “Замість вручну вибирати рядок, скористайтеся текстовим об’ єктом ci\", щоб змінити все всередині найближчих лапок.” *

** Менеджер додатків ** — інструмент (наприклад, lazy. nvim або packer), який декларує, встановлює і ліниво завантажує додатки Neovim з налаштувань, замінюючи вручну копіювання файлів додатків до каталогу виконання. “Якщо ми перейшли на правильний менеджер додатків, додавання нового додатка було одним рядком у налаштуваннях замість вручну клонування репозиторію у шлях виконання.”

** Буфер проти вікна проти вкладки ** — три відмінних шару моделі редагування Vim: буфер — це вміст завантаженого файла у пам’ яті, вікно — це вікно перегляду у буфері, а вкладка — це названа збірка вікон. “Ви не втратили свої зміни — буфер все ще відкритий, ви щойно зачинили вікно; поверніться назад за допомогою :b замість перевідкривання файла.”

Звичайні фрази

  • Чи ми все ще в режимі вставки, чи ви повернулися до нормального режиму після того, як ви редагували?»
  • Який найшвидший рух, щоб дістатися до відповідної закриваючої позначки звідси?»
  • «Чи можете ви просто використовувати текстовий об’єкт для цього, замість візуального вибору його символ за символом?»
  • «Який менеджер плагінів ми використовуємо для лінивого завантаження, щоб час запуску не підскочив?»
  • «Це новий буфер, чи просто ще одне вікно, що дивиться на те саме?»

Приклади висловлювань

Навчання нового користувача Vim: “Перестаньте тиснути клавіші зі стрілками — залиштеся у звичайному режимі і скористайтеся командами руху, такими як w і b, щоб пересуватися по словах.”

Пояснення скорочення редагування співробітнику команди:

  • “Просто встановіть курсор у будь- яке місце всередині дужок і скористайтеся текстовим об’ єктом ci( — вам не потрібно вибирати точні межі самостійно.” *

Зневадження повільного запуску Neovim: “Перевірте, які з ваших додатків завантажуються повільно — якщо половина з цих додатків завантажується під час запуску, а не на запит, це означає, що ви затримуєтесь.”

Професійні поради

  • Виправте початківців, що не надто добре володіють ** модальним редагуванням ** — найбільше розчарування на початку виникає від введення команд у режимі вставки, а надання режиму явної назви найшвидше виправляє ментальну модель.
  • Вчити ** команди руху ** перед скороченнями — як тільки хтось розуміє рухи, складені з операторів ( d, c, y ), вони можуть отримати десятки команд замість запам’ятовування їх окремо.
  • Пересунути ** текстові об’ єкти ** за межі ручного візуального вибору під час перегляду коду vimscript або обговорення налаштувань — вони більш стійкі до змін форматування і швидше вводяться.
  • Рекомендую сучасний ** менеджер додатків ** для всіх, хто підтримує налаштування Neovim з нуля — він робить завантаження і відтворення значно простішими, ніж вручну керовані шляхи виконання.

Практичні вправи

  1. Поясніть різницю між звичайним режимом і режимом вставки, а також описайте поширену помилку початківців, яка виникає внаслідок їхнього сплутування.
  2. Описати, як комбінуються команди руху та оператори, використовуючи d} або ci( як приклад.
  3. Напишіть речення, у якому пояснюється різниця між буфером, вікном і вкладкою у Vim.

Наприклад, слово «професійний» означає: професійний фахівець

Основний словник Vim — такі терміни як « курсор », « рух », « реєстр » — часто достатньо для опису того, що ви робите, особливо серед інших користувачів Vim. Однак, коли співпрацюєте з більшою командою, особливо з тими, хто не глибоко вкорінені в Vim менталітет, ефективне спілкування вимагає більше, ніж просто знати * що * ви робите; це про передачу цієї інформації чітко і точно, використовуючи професійну англійську фразу. Це не стосується повного уникнення термінології Vim (часто цілком прийнятно використовувати її обережно для ясності), а скоріше розуміння того, як сформулювати вашу роботу таким чином, щоб вона відповідала більшій аудиторії, демонструючи професіоналізм і сприяючи плавнішій співпраці. Розгляньте різницю між словами « Я пересунув курсор праворуч п’ ять разів » і « Я виконав рух forward(5) ». Останнє негайно встановлює контекст і демонструє технічне розуміння.

Однією з найпоширеніших проблем для носіїв мови, які не є рідними для мови, є формування зворотнього зв’язку, особливо під час перегляду коду. Простий коментар на кшталт «Це не працює» не допоможе. Замість цього ви можете сказати: « Тестовий випадок зазнав невдачі через потенційне переповнення цільним числом у цій функції. Я пропоную впровадити перевірку перед множенням. » Зауважте зміну: ми перейшли від висловлювання спостереження (« не працює ») до надання інформації, яка може бути використана — * причина * невдачі і запропонований спосіб її вирішення. Аналогічно, при написанні описів PR, бути конкретним є ключовим. Не просто скажіть «Виправлена помилка». Поясніть * яку * ваду ви виправили, * де * вона розташована, і * чому * виправлення вирішує проблему. Використання точної мови демонструє старанність і забезпечує, що переглядачі повністю зрозуміють ваші зміни.

Іншою областю, де нюанси мають значення, є опис робочих потоків. Уявіть, що ви пояснюєте співробітнику команди, чому ви створили роботу майже виключно за допомогою рухів Vim — ніколи не торкаючись миші. Сказати «Я просто використовую Vim» може не передати глибини цього зобов’язання і його переваг. Кращий підхід був би: «Я розробив свій робочий процес, щоб широко використовувати команди руху Vim, мінімізуючи рух екрану і максимізуючи швидкість і точність. Це дозволяє мені підтримувати високий рівень концентрації і зменшує когнітивне навантаження, значно покращуючи ефективність мого кодування. Постійне перемикання між мишею і клавіатурою вводить непотрібне тертя, якого я навмисно уникав»

Нарешті, пам’ятайте, що активне слухання так само важливо, як і чітке мовлення. Якщо хтось попросить вас пояснити щось по-іншому, не бійтеся прохання про пояснення. Це цілком прийнятно, якщо ви запитаєте: « Чи можете ви розібратися, що ви маєте на увазі під « оптимізованою продуктивністю » у цьому контексті? » Прояв бажання вивчити і пристосувати свій стиль спілкування завжди буде оцінено.

#!/bin/sh
# Example of using `sed` to replace text in a file

cat my_file.txt | sed 's/old_text/new_text/' > new_file.txt

Поширені запитання

Про що ця стаття "Англійська для розробників Vim і Neovim"?

Вивчіть англійську лексику для Vim і Neovim: модальне редагування, рухи і пояснення процесу роботи, створеного для того, щоб ви ніколи не торкалися миші.

Чи безкоштовна ця стаття?

Так. Усі статті на CoderSlingo, включно з цією, доступні безкоштовно без реєстрації.

Скільки часу займає читання "Англійська для розробників Vim і Neovim"?

Приблизно 6 min.