Citat:
Za brze prepravke, male projekte i slicno, koji text editor koristite?
Notepad++,
Sublime,
Atom,
VSCode
...?
Kod svakog za PHP imam pros i cons, doduse nisam isprobao jedino VSCode. Notepad++ mi je mnogo dobro lezao, ali sam zbog "hakabilnosti" presao na Atom, kom plaginovi bas ne rade kako treba.
Probaj Vim ;). Jednostavan, brz, lako podešiv, prenosiv, multiplatformski, besplatan, open source,
veliki broj plugina, radi u terminalu a ima i GUI (GVim).
Za razliku od gore pomenutih editora, Vim u početku zahteva malo vremena i učenja, ali nije potrebno neko specijalno znanje da se koristi za neke osnovne stvari.
U principu, kada se savladaju neke osnovne komande, sve kasnije je samo nadograđivanje na te osnove. Na primer, Vim umesto strelica tastera koristi h, j, k, l za levo, dole, gore, desno, dok recimo komanda d briše tekst, kombinacijom tih dveju komandi (dj) brišemo trenutnu kao i liniju ispod, ili na primer d3j briše tri linije. Isto važi i za ostale komande, npr. d3w briše tri reči napred, ili recimo 3yy kopira tri linije. Vim podrazumevano ne briše tekst već ga smešta u registar " (Vim native clipboard), zatim prilikom novog brisanja, novi odlazi u podrazumevani registar " dok se stari pomera u registar 1 itd. Sadržaj registra prikazujemo sa :register (:reg n) komandom.
Pomoću Vim makroa možemo da snimimo određene komande u registar, na primer pomenutu d3w komadu sa qm (startujemo snimanje u registar m) d3w (unosimo komandu) q (prekidamo snimanje) @m (pokrećemo snimljenu komandu iz registra m). Dobro dođe kada nad nekim tekstom treba da izvršimo istu radnju više puta.
Iz pomenutih primera može da se vidi kako je lako koristi kombinacije više komandi kako bi se izvršile neke kompleksne radnje, maltene kao Vim jezik koji funkcioniše kao komanda->akcija->pokret.
Takođe, za razliku od pomenutih, Vim ima ratličite modove za izvršavanje komandi, pored pomenutog command ili podrazumevano normal moda, postoji insert (mod za unošenje teksta), kao i visual, visual line, visual block (mod za selektovanje teksta), kao i command-line mod za unošenje komadi.
Pored velikog broja pluginova, dosta toga dolazi sa samim Vimom. Na primer, pored popularnog
NERDTree file explorera, Vim ima svoj file explorer koji se pokreće sa :Explore (:Exp) komandom u command-line modu, syntax highlighting koji se omogućuje sa :syntax on, auto-completion sa Ctrl+p, Ctrl+n, Ctrl+f (za files), Ctrl+] (za tags), ctags sa Ctrl+], Ctrl+t, ili :tn (next tag), :tp (previous tag), tabove sa :tabnew, :tabe, code folding sa :foldmethod=fold-methodname, :help foldmethod za foldmethods (zc close folds, zo open folds), auto code indenting, itd.
Pluginovi se jednostavno instaliraju kopiranjem u .vim/pack/plugins/{start,opt} direktorijum. U start direktorijum idu pluginovi koji se automatski startuju sa Vimom, dok u opt idu pluginovi koji se opciono pokreću prema potrebi. Na primer, git clone
https://github.com/scrooloose/nerdtree.git ~/.vim/pack/plugins/start instalira NERDTree file explorer, dok git clone
https://github.com/mattn/emmet-vim ~/.vim/pack/plugins/opt instalira emmet plugin koji pokrećemo kada otvorimo HTM i CSS fajlove sa
autocmd FileType html,css packadd emmet-vim u vimrc conf fajlu.
Pored pomenutih, neki od korisnih pluginova:
https://github.com/kien/ctrlp.vim
https://github.com/vim-airline/vim-airline
https://github.com/tpope/vim-surround
https://vimawesome.com/plugin/delimitmate
https://github.com/tpope/vim-fugitive
https://github.com/ap/vim-css-color
Eto, nadam se da sam bar malo pomogao ako se neko odluči za Vim.