Од Vim-а до IDE-а
17.01.2020Једно од питања које ми други програмери поставе кад чују да се бавим програмирањем је које интегрисано окружење користим за развој апликација. По правилу се изненаде кад уместо очекиваних одговора као што су VS Code, JetBrains Web Storm или NetBeans, чују да користим Vim. Овај програм је током година доста напредовао у односу на своју инспирацију, програм vi, тако да данас сасвим комотно може да парира горенаведеним окружењима, или их чак и престигне.
Чуђење вероватно потиче од нетривијалног начина задавања чак и најосновнијих
операција: рецимо, vi се, за разлику од велике већине других уређивача,
подразумевано налази у „командном режиму“, па га није могуће само покренути и
одмах почети са уношењем текста, већ се мора претходно пребацити у режим уноса
пречицом i. Међутим, кад се једном „уђе у штос“, могуће су прилично напредне
операције, које се све активирају са неколико тастера, рецимо ddp
у командном
режиму мења редослед два реда текста, а cw
брише знаке до краја речи и
пребацује се у insert mode, па тако можете заменити реч. Наредба за замену
текста у читавом пасусу је само незнатно компликованија: vipc
. Програмерима је
изузетно корисно пребацивање између отворене и затворене заграде у пару тастером
% или селекција свега између витичастих заграда комбинацијом vi}
.
Ја константно допуњавам своја подешавања Vim-а, па ћу укратко написати и о томе.
Инсталација
Пре свега, програм који користим за развој апликација се тачније зове Neovim, и још прецизније, користим његову варијанту neovim-qt. Ради се о програму који је написан „од нуле“, уз задржану компатибилност са Vim-ом (а и он сам, Vim – Vi IMproved, је побољшана верзија програма vi). Њега можете инсталирати пратећи упутства са neovim.io. Ипак, јасноће ради, овде ћу наставити да га зовем Vim.
Додаци
Иако је Vim сам по себи веома моћан, прави разлог тога што се може поредити са интегрисаним окружењима су додаци. Само неки од додатака које користим су:
Vim-CtrlSpace, додатак за управљање радним окружењем и чување сесија.
ALE, додатак за проверу и исправљање синтаксе.
Coc, IntelliSense додатак за Vim.
vim-airline, додатак за улепшано приказивање напредних информација у вези са фајлом који се уређује.
vimcolors/phosphor.vim, тема за Vim која подсећа на старе текстуалне терминале или боје кода у филму „Matrix“.
Фајл са подешавањима Vim-а који користим одржавам у репозиторијуму Strahinja/dotfiles.
Фонт
Можда није толико очито, али и избор фонта је битан. Мени се од постојећих опција највише свиђа фонт PxPlus IBM VGA са сајта int10h.org, коме сам додао симболе уз помоћ Nerd Fonts patcher-а. Резултат је следећи: