Takie pytanie: czy edytory vim i emacs rozwinęły się jakoś w ciągu ostatnich lat?
Używam sobie teraz Atoma, przedtem Sublime i myślę czy nie przesiąść się na vim lub emacs(kiedyś używałem vima ale nie byłem pro, konfiguracja a’la Notatnik z Windows).
Ma sens taka przesiadka? Czy lepiej dać sobie spokój?
Lepszego wątku do rozpoczęcia wojny i flejmu na kilka stron nie mogłeś znaleźć ;] Spróbuj dwóch i tyle. W emacs zawsze mozesz uzywac skrótów z vim i miec 2 w 1
Podpinając się trochę pod temat spytam, czy zysk na wygodzie/użyteczności faktycznie uzasadnia czas poświęcony na uczenie się vima lub emacsa/rozszerzanie i pluginowanie ich, aby pasowały do potrzeb, zamiast stale używać naprawdę wygodnego i łatwego do opanowania Atoma?
Ja bardzo sobie cenie nawigacje którą oferuje Vim (mimo że zatrzymałem się na hjkl - którego kolejnym krokiem jest hardmode) i nie wyobrażam sobie teraz pracy bez tego. Spacemacsa wcale nie trzeba specjalnie rozszerzać i pluginować bo przychodzi z całkiem fajnym zestawem defaultów (przy tym oferuje coś co nazywa się layers co jest takimi opinionated presetami dla różnych technologii które aktywujesz jedną linijką). Z Atoma korzystałem i o ile jest całkiem fajny to jak zaczniesz instalować do niego jakieś różne ciekawe wtyczki to z mojego doświadczenia z czasem zaczyna działać coraz gorzej. Sam uważam że choć vim jest super edytorem, to emacs jest po prostu lepszym kawalkiem softu. Ciekawą rzeczą jest też neoVim który celuje właśnie w poprawę jakości vima jako softu/środowiska.
Korzystałem z Vima dość długo. Bardzo się do niego przyzwyczaiłem i nie wyobrażałem sobie zmiany. Niestety zostałem zmuszony do zmiany, gdyż z jakiegoś nieznanego mi powodu vim zaczął bardzo wolno działać na moim środowisku przy pracy z projektem wykorzystującym jRuby(któryś z pluginów strasznie spowalnia mi prace). Postanowiłem spróbować atoma i muszę przyznać że spełnia moje oczekiwania. Po zainstalowaniu wielu paczek(w tym vima) posiada nawigacje vimową. Jedyna wada atoma to długie uruchamianie projektu(około 40-50 sec u mnie). Co do nawigacji to też jest wiele pluginów co wspomagają jeszcze nawigację przez paczke vima:P
A ja próbowałem używać vima ale denerwowało mnie przełączanie się pomiędzy plikami. Aktualnie używam atoma, zabieram się niedługo do testowania visual studio code(wygląda obiecująco). W graficznych edytorach jakoś poruszanie wychodzi mi sprawniej, myślę że to kwestia tego że nie piszę aż tak ogromnej ilości kodu. Co do atoma, to zauważyłem że potrafi się zawiesić przy niedużych plikach skompresowanych(bez enterów spacji itp.) oraz przy długich liniach ma problemy, warto w atomie skonfigurować aby pomijał w projekcie(w drzewie katalogów) foldery z wielką ilością plików np: tmp, node_modules, bower_components itp, a będzie działał sprawnie.
Atom domyślnie pomija wszystko co jest w .gitignore, a wszystko co wymieniłeś powinno być w .gitignore. Chyba że używasz innego VCS, jak jest dla innych to nie wiem.
To prawda. A wiesz jak zrobić, żeby ten folder się nie pojawiał? Mam w projekcie folder, który ma 150 tyś plików i jak przypadkiem kliknę to muszę ubić edytor Oczywiście, jest .gitignore na ten folder, jest on pólprzezroczysty.
Zapytaj się najpierw, czemu chcesz się przenieść z atoma na inny edytor. Wypisz sobie co Cię dręczy z teraźniejszym edytorem a potem poszukaj takiego edytora, który jest według Ciebie lepszy.
Poczytaj trochę o cechach vima i emacs’a. Popisz w nich kod a potem pomyśl, czy warto przenieść z atoma na jeden z nich. Każdy bądź razie zawsze warto się nauczyć sprawnej obsługi jakiegoś edytora tekstowego.
Wchodzisz sobie w preferencje atoma, wtyczki/pluginy, szukasz odpowiadającej za drzewo nazywa się ona tree-view, wchodzisz w ustawienia tej wtyczki, ptaszkujesz coś w stylu “Hide ignored names”.
Przez jakis czas uzywalem emacsa, ale nie mialem serca do ciaglego grzebania w konfiguracji. Po uzywaniu emacsa zostal mi zwyczaj mapowania caps’a na ctrl, co ulatwia uzywanie popularnych skrotow klawiszowych.
Dodatkowo polecam:
nauczyc sie wszystkich sposobow wchodzenia do insert mode
inoremap jk <C-[> - uzycie jk jako wyjscia z insert mode do normal mode (zawiodlo 2 razy - jak pisalem w komentarzu ‘kolejka’ do jakiegos algorytmu i jak pisalem ‘Dijkstra’ tez w jakims algorytmie
uzywac tmux-a - tmux + vim to potezny kombajn, niektorym rowniez moze przypasc do gustu ‘Dispatch’ Tima Popa
uzywac jak naj mniej pluginow - ok, przynajmniej dla mnie sie sprawdza. Po pewnym czasie wszystko mi sie myli, wiec lepiej poczytac i popytac - vim pozwala zrobic wiele rzeczy np :!git log -p % pokazuje historie aktualnego pliku, :!rubocop -a % zupdatuje aktualny plik. Obecnie swiadomie uzywam tylko ctrl-p, nerdtree i vim-go (jak pisze w go)
Atom już od jakiegoś czasu rozwijany jest znacznie aktywniej od Sublime’a. Plus ma wbudowany całkiem wygodny system paczek (w Sublime trzeba sobie package managera zainstalować, a i tak mu sporo do tego atomowego brakuje) i parę innych brakujących w Sublime “ficzerów”.
A moim zdaniem warto zmieniać i próbować. Bo człowiek to taka bestia, że do każdej niewygody może się przyzwyczaić. I z czasem człowiek myśli że tak musi być, że nie da się lepiej, że przecież wszystko jest idealnie.
I dlatego ja nie ufam sobie na tyle, żeby obiektywnie zdecydować o poniższych (podkreślenia moje):
Po latach vimowania ostatnio używam więcej IntelliJ. O niektórych funkcjach mi się nawet nie śniło dopóki nie spróbowałem. Teraz trudno mi się bez nich obyć, a w vimie niczego mi nie brakowało i nic mnie nie dręczyło.
Moim zdaniem każde wyjście poza strefę komfortu, nawet w tak drobnej (?) kwestii działa na Twoją korzyść.