Am rezistat trei ani în VS Code, convins că e destul de bun și că vremea terminalului a trecut pentru mine. M-am înșelat amarnic. După un proiect măricel, cu vreo 40 de microservicii, unde laptopul meu începea să decoleze de pe birou, m-am întors la Neovim.
Vreau să vă povestesc rapid de ce am făcut pasul ăsta înapoi (sau înainte?) și ce am pierdut, de fapt, pe drum. Fără elitism de tip „Vim user”, doar realitatea brută de zi cu zi.
De ce a cedat VS Code?
Totul a început când am trecut pe un monorepo masiv. La peste 8k de fișiere TypeScript și o grămadă de configurări de ESLint, VS Code-ul meu a început să mănânce cam 4-5 GB de RAM doar pentru procesele de fundal (TS Server, Git integration, plus extensiile de formatare). Aveam momente când tastam și vedeam caracterele apărând pe ecran cu o întârziere de câteva milisecunde. Sună puțin, dar când scrii cod 8 ore pe zi, chestia asta te scoate din minți.
M-am enervat într-o zi, am șters folderul de configurări și am reinstalat Neovim (folosind Lazy.nvim ca manager de pachete). Rezultatul? Consumul de memorie a scăzut la sub 500MB cu aceleași LSP-uri pornite, iar timpul de startup a coborât de la 4 secunde la 25 de milisecunde. Am economisit timp și nervi, dar tranziția n-a fost deloc ușoară.
Ce am pierdut (Trade-off-ul sincer)
Să fim realiști, Neovim nu e perfect și am pierdut câteva chestii care în VS Code funcționau impecabil:
- Live Share: Când lucrez în echipă și trebuie să facem pair programming, VS Code e rege. Pe Neovim există alternative ca Floobits sau tmux shared sessions, dar sunt greu de configurat și nu oferă aceeași experiență fluidă.
- Conflictul de Git: Rezolvarea conflictelor de merge în VS Code, cu interfața sa vizuală, este incredibil de intuitivă. În Neovim folosesc o combinație de Fugitive și difftool în terminal, dar îmi ia de trei ori mai mult timp să fiu sigur că nu am stricat ceva.
- Debugging: Să configurezi DAP (Debug Adapter Protocol) în Neovim pentru un proiect complex de Node.js sau Go este o durere de cap masivă. Am pierdut două weekend-uri doar ca să fac breakpoint-urile să meargă cum trebuie. În VS Code dai click pe marginea ecranului și apeși F5.
Ce am câștigat în schimb
Pe lângă performanța brută, cel mai mare câștig a fost focusul. În VS Code aveam mereu tendința să dau click pe diverse tab-uri, să mă uit la mini-map-ul din dreapta sau să butonez prin meniuri. În Neovim, ecranul meu e 95% cod. Navigarea se face exclusiv din tastatură, iar asta îmi menține creierul în „zonă” mult mai mult timp.
Am realizat că nu aveam nevoie de un IDE greoi, ci de un editor rapid care să nu-mi stea în cale. Neovim câștigă detașat când ai nevoie de viteză și focus mental, dar te costă timp de configurare. VS Code e excelent dacă vrei să-ți faci treaba din prima zi fără dureri de cap.
Voi pe ce tabără sunteți? Ați încercat să treceți la terminal sau vi se pare doar un moft pentru hipsteri?