Да, правилно го прочетохте, тази публикация вероятно отново попада в категорията на друг вид публикация на vim rant-love. Няма да обсъждам неща като как да използвам vim, списък с често срещани комбинации за него или да говоря защо да използвам vim. В тази публикация ще споделя текущата си настройка във vim, какво научих, след като използвах vim за около 599 часа от началото на тази година и някои статистически данни за това как го използвам за ежедневните си дейности по кодиране.

Как попадам във VIM

Опитах vim от миналата година, но никога не съм положил сериозни усилия да го използвам. В началото го използвах най-вече за смачкване/редактиране на съобщение за ангажимент след git rebase или за промяна на конфигурация директно на моя личен сървър в Digital Ocean. След като гледах този разговор от Джеймс Пауъл в PyData, Сиатъл 2017, започнах да се чудя, работих с терминал много, когато кодирах, а преди vim трябва да превключвам между терминал и моя текстов редактор (Sublime Text на това време) често. Този човек в своя разговор, докато прави демонстрация на живо, може лесно да превключва между своя редактор и терминал. Това ме кара да се интересувам как мога да направя и това.

Направих проучването си за това как ефективно да използвам vim и прекарах доста време, за да намеря подходяща конфигурация на vim, докато стигна до моята текуща настройка, която работи добре с neovim и обслужва моя работен процес за разработка доста добре от месеци сега.

Някои конфигурации, които съм опитвал преди и си помислих, че са твърде сложни, тогава реших да ги изоставя:

Това е списъкът с плъгини, които използвам всеки ден и увеличих продуктивността си с vim:

  • NerdTree
    Ако идвате от текстов редактор като Sublime или VsCode, където все още зависи от страничната лента за навигация между файлове, този плъгин може да ви помогне бавно да преминете към vim
  • vim-easymotions
    Ускорете как правите движение във vim.
  • coc.nvim
    Едно от предимствата на използването на vim е, че е лек в сравнение с IDE, но понякога все пак искате да имате мощност, която IDE може да предостави, като допълване на код, навигация на код и т.н. Този плъгин може да предостави тези функции, без да раздувате vim с ненужни функции.
  • ctrlp.vim
    Лесно търсене на файл във vim
  • vim-grepper
    Търсете всичко в рамките на vim

Какво научих

Някои от нещата, които научавам с времето от първия път, когато го използвам за всичко с текст:

  1. Използвам много плъгини, когато използвам vim за първи път, за да се опитам да получа същото изживяване с предишния си текстов редактор.
    След като го използвам известно време, осъзнавам, че това не е правилният начин от използването му. Научавам как да използвам ефективно vim motion, опитвам много видове комбинации от бързи клавиши и накрая премахвам много добавки, които вече не използвам, след като овладея клавишната комбинация. Препоръчвам да разгледате различни vim cheatsheet там, за да се запознаете с повечето от клавишните комбинации/комбинациите за тях.
    За vim cheatsheet снимката по-горе е тази, която харесвам от ViEmu.com
  2. Опитайте да го използвате всеки ден
    Това беше най-трудната част, когато преминавах към vim. Имах няколко трудности, когато за първи път напълно преминах към vim; през повечето време обикновено се запознавам между нормален / вмъкнат режим. Въпреки това, точно като използването на плъгин, след като свикна с всички преки пътища и разбера повече относно разликите между движение, команда и оператор, започвам да виждам ползата от използването на този текстов редактор.
  3. Винаги търсете по-добър начин за правене на нещата във vim
    Едно нещо, което научавам, след като използвах vim известно време, е, че този текстов редактор има толкова много скрити функции. Всеки ден може да откриете нещо ново във vim, за което не сте се сетили преди. С течение на времето може да научите, че може дори да не се нуждаете от добавки за неща, които искате да правите във vim. Така че бъдете готови да бъдете изненадани и винаги се опитвайте да научите как да ставате по-добри при използването на vim всеки ден.
  4. Не раздувайте конфигурацията си с ненужни плъгини
    Както казах при първото си обучение, използвах много плъгини, когато за първи път използвах vim. Първоначално беше добро изживяване, докато не изпитате бавност и vim се задържа през повечето време. Почти реших да се върна към Sublime, но след като говорих с колегата си и потърсих в Google по въпроса, научих, че това вероятно се дължи на редица добавки, които vim зареди за първи път и се активира, докато го използвам. След като премахна повечето от добавките, които рядко използвам, след като се запознах с вътрешните работи на vim, той работи бързо и много леко изразходва памет.

Как използвам vim

След няколко месеца, когато го използвах за мой страничен проект, реших да опитам да го използвам на пълен работен ден, включително ежедневната си работа в CultureAmp. В началото на тази година започвам да го използвам за ежедневна работа и интегрирам плъгина wakatime, за да видя как работя извънредно с този редактор. Досега съм използвал vim около 599 часа и 36 минути. Следващите графики показват подробности за това колко време прекарвам във vim и програмните ми дейности около него.

Моята последна мисъл

Като заключение бих казал, че това „анкета“ от StackOverflow вероятно е правилно. След като влезете във vim, може да ви е трудно да излезете от него.

Първоначално публикувано на https://martinlabs.me.