Jak najlepiej zmusić się do opanowania vi? [Zamknięte]

205

Przed chwilą przeczytałem artykuł twórcy viemu , wyjaśniając wiele nieporozumień na temat vi, a także wyjaśniając, dlaczego jest to dobry pomysł (i dlaczego był bardzo popularny przez ostatnie 30 lat +). Ten sam facet ma również świetny zestaw graficznych ściągów, które uczą podstaw kilku bitów na raz.

Jestem przekonany.

W rzeczywistości byłem przekonany przez ostatnie 2 lata. Ale nadal nie udało mi się zmusić do nauki vi jako mojego głównego edytora, krzywa uczenia się jest po prostu zbyt wysoka. Kiedy zabieram się do pracy, akceptowalna, ale natychmiastowa produktywność (przy użyciu mojego obecnego edytora) jak dotąd przekonała się o ogromnej produktywności w dalszej linii (przy użyciu vi).

Czy ktoś ma jakieś dobre wskazówki, które pomogą przejść przez krzywą uczenia się? Mogą to być proste porady, inne samouczki lub artykuły, cokolwiek.

Edycja: Pamiętaj, że znam warianty vim / gVim , Cream i MacVim (itp.). Trzymałem pytanie o vi, aby odnosić się do całej rodziny vi. Dzięki za wszystkie świetne odpowiedzi.

Aktualizacja (kwiecień 2009)

Używam Vima (a dokładniej MacVima) w moim codziennym życiu zawodowym od grudnia ubiegłego roku. Nie wracam :-)

Życzymy powodzenia w opanowaniu Vima.

webmat
źródło
14
Nauczyłem się vima, ponieważ wiele lat temu nie wiedziałem, jak zmienić domyślny edytor. ;)
nieistniejący
Ponieważ jest to miara przyswajania wiedzy w czasie, stroma krzywa uczenia się jest ogólnie dobrą rzeczą, oznacza to, że uczysz się szybko. :)
converter42
Właśnie tego ranka walczyłem z vi i przeglądałem Stack Overflow, aby oderwać mnie od niego i oto, a oto jest blisko szczytu! Cieszę się, że nadal go używasz, mam nadzieję, że za cztery miesiące będę w twoich butach.
Greg Noe
3
Na marginesie: czy wiesz, że możesz uzyskać wtyczki VIM do prawie wszystkiego ?! Możesz pobrać wtyczkę vim dla Firefoksa, aby wszystkie pola tekstowe działały jak vim! Jest to jednak bardziej interesujące niż przydatne. Przydaje się (chociaż jeszcze go nie pobrałem) wtyczka vim dla środowiska Eclipse. Teraz wydaje się to przydatne!
sixtyfootersdude

Odpowiedzi:

125

Po pierwsze, możesz chcieć podnieść Vima; ma znacznie lepszy zestaw funkcji wraz ze wszystkim, co ma vi.

To powiedziawszy, nauka wymaga dyscypliny. Jeśli masz pracę i nie możesz sobie pozwolić na spadek produktywności (bez zwolnienia), proponuję wzięcie udziału w weekendowym projekcie wyłącznie w celu nauki edytora. Trzymaj dokumentację otwartą podczas pracy i bądź na tyle zdyscyplinowany, aby nie wybiegać. Gdy uczysz się więcej, stajesz się skuteczny i zaczynasz polegać na pamięci mięśniowej, nie będzie tak trudno się jej trzymać.

Używam Vima od tak dawna, że ​​nawet nie zastanawiam się, które klawisze nacisnąć, aby wyszukiwać, nawigować lub zapisywać. A moje ręce nigdy nie opuszczają klawiatury. Korzystanie z Vima jest jednym z najlepszych wyborów, jakich dokonałem w swojej karierze programistycznej.

Lucas Oman
źródło
15
Nauczyłem się tego w pracy i nie mogłem uniknąć spadku wydajności. Pomagał mi vimmer przy ciągłym zadawaniu pytań. Znajdź kogoś, kto dobrze zna vima i zaprzyjaźnij się z nimi! Szybko spójrz na klawisze nawigacyjne i poznaj tryby. Wypróbuj za 15 minut, dostaniesz.
camflan
4
Zgadzam się, trzymaj się tego. Będziesz wiedział, że tam jesteś, gdy będziesz zmuszony używać nano lub notatnika i doprowadza cię to do szaleństwa!
Kyle Walsh,
3
Po rozpoczęciu i zaprzestaniu używania Vima przez rok odkryłem, że kupienie książki Vima i zmuszenie się do jej przejścia bardzo mi pomogło. Staram się również myśleć w sposób „Musi istnieć szybszy sposób, aby to zrobić” i ciągle szukam: pomocy w poszukiwaniu sposobów na robienie rzeczy lepiej.
JD Frias,
2
Zachowaj także poręczną listę funkcji, z którymi chcesz się swobodnie korzystać. Używam vima od ponad 5 lat i nadal mam notatkę Tomboy z nowymi rzeczami, których nauczyłem się używać.
Lucas Oman
65

Pierwszą rzeczą, którą bym zrobił, to położyć kawałek papieru lub książkę na klawiszach strzałek i klawiszach ins / home / end / pgup / down. Te nie są potrzebne w Vi.

Następnie przyzwyczaiłem się do wciskania ctrl + [za każdym razem, gdy każono ci uciec. Jest znacznie szybszy i nie musisz odrywać rąk od klawiatury.

Potem obejrzałbym moje screencasty:

http://www.youtube.com/watch?v=FcpQ7koECgk

http://www.youtube.com/watch?v=c6WCm6z5msk

http://www.youtube.com/watch?v=BPDoI7gflxM

http://www.youtube.com/watch?v=J1_CfIb-3X4

Następnie po prostu ćwicz praktykę.

edytuj Powodem unikania klawiszy strzałek jest ich spowolnienie. Jedną z największych zalet Vima jest jego prędkość. Klawisze strzałek również uniemożliwiają naprawdę przyjęcie natury modalnej, która jest bardzo potężna po opanowaniu.

Aaron Jensen
źródło
Nie sądzę, aby współcześni użytkownicy Vi / Vim powinni unikać klawiszy kursora. Prawdopodobnie nigdy nie będziesz używać Vi w systemie bez klawiszy kursora, więc nauka ich unikania jest niepotrzebna i działają dobrze (obecnie).
tialaramex
24
Zmapowałem klawisz Caps-Lock na klawiaturze do Escape. Nawet szybciej niż ctrl + [!
Chris AtLee,
Zgadzam się z unikaniem klawiszy kursora. Jedną z zalet podejścia Vi do ruchu jest to, że gdy się do niego przyzwyczaisz, jesteś gotowy na wszystkie sytuacje (czytaj: na ciasnym układzie laptopa lub w zdalnych sesjach na dziwnych systemach operacyjnych, czyli starych Unices lub przez dziwne terminale)
webmat
8
Używałem kursorów, dopóki nie wyłączyłem ich w moim .vimrc: map <Up> "" map <Down> "" map <Right> "" map <Left> "" Moje nadgarstki są wdzięczne, że pozbyłem się tego nawyku!
Johan Kotlinski
2
Joey, klawisze strzałek rzeczywiście byłyby przydatne, ale prawie zawsze lepiej jest wyjść z trybu wstawiania, nawigować do miejsca, w którym chcesz być, i ponownie wprowadzić wstawianie lub zmianę lub dowolny inny tryb, aby zrobić to, co chcesz zrobić. Uderzenie w ucieczkę lub ^ [jest szybsze niż przesunięcie rąk tam iz powrotem.
Aaron Jensen,
39

Krok 0: naucz się pisać na klawiaturze. Poważnie - jeśli twoje palce nie wiedzą, gdzie są klawisze, vim będzie bólem. Nawet jeśli odrzucisz vima, pisanie za pomocą dotyku poprawi twoje programowanie (zapytaj Steve'a Yegge'a ), pozwalając umysłowi monitorować tarcie łącza. Jest wiele z oprogramowania , które mogą pomóc poprawić swoje pisanie.

Krok 1: Użyj vimtutora, aby rozpocząć. Jest w gvim (myślę, że w menu pomocy) lub możesz po prostu wpisać „vimtutor” w wierszu poleceń. Zajmie to 30-45 minut twojego czasu, a wtedy twoje palce poznają podstawy vi / vim i powinieneś być w stanie edytować pliki bez konieczności wyrzucania klawiatury z okna.

Krok 2: Używaj vima wszędzie. Zobacz to pytanie, aby uzyskać wskazówki i łącza do korzystania z skrótów klawiszowych vim i vi w wierszu poleceń, z przeglądarki internetowej, do tworzenia wiadomości e-mail w swoim IDE ... Musisz użyć vim, aby osadzić kluczowe powiązania w pamięci mięśni.

Krok 3: dowiedz się więcej o vimie. Zarysujesz powierzchnię tylko za pomocą vimtutora. Możesz obejrzeć ten film lub przeczytać ten artykuł (oba o „Siedmiu nawykach efektywnej edycji tekstu”. Możesz przeczytać o wskazówkach i sztuczkach na StackOverflow . Możesz przeglądać vimtips . Naucz się często małej porady - jest tak wiele tam, gdzie przyklejenie się do kawałków wielkości kęsa będzie najlepszym sposobem na utrwalenie wiedzy.

Krok 4: Zysk :)

Hamish Downer
źródło
2
Pisanie dotykowe jest koniecznością, jeśli kiedykolwiek chcesz osiągnąć pewien stopień mistrzostwa. Ale jeśli naprawdę chcesz być dobry w tych wszystkich sprawach związanych z komputerem, z pewnością nie potrzebujesz kogoś, kto ci to powie, z łatwością to zrozumiesz. =)
sjas
vimtutor jest świetny :-)
user454083,
Dość przystępny i naukowy sposób na opanowanie vima. Spróbuję użyć tego, aby poprowadzić mnie w kierunku głównej drogi do vim. Mam nadzieję, że uda mi się do końca.
YinchaoOnline,
26

Przez te wszystkie lata byłem od czasu do czasu użytkownikiem vima (od czasu do czasu wykonując pracę administracyjną sys). Niedawno zacząłem spędzać więcej czasu na pracy nad programowaniem. Sugerowałbym też zacząć od gvim. Dobrze integruje się z większością środowisk systemu operacyjnego i (jeszcze lepiej) możesz wrócić do myszy, gdy zajdzie taka potrzeba :).

Aby rozpocząć pracę z vimem, uruchom raz lub dwa razy vimtutora (w pakiecie z gVimem) (zajmuje to około godziny). Nie mogę przecenić, jak bardzo było to dla mnie pomocne! Zwłaszcza pierwsze części o różnych sposobach poruszania się po dokumencie oraz o tym, jak zapisywane są działania edycyjne za pomocą poleceń ruchu, itp. Itd. Potem wszystko będzie DUŻO wyraźniejsze.

Następnie zacznij z nim robić szybkie, drobne zmiany (rzeczy polegające na wymianie notatnika), aż poczujesz się na tyle wygodnie, aby móc wykonywać przydatne edycje w szybkim klipie. Następnie spróbuj wykonać w niej codzienną pracę. Szybko znajdziesz polecenie „powtórz ostatnią akcję” w innych edytorach w mgnieniu oka!

Brian
źródło
możesz używać myszy w normalnym vimie, uruchamiając „: set mouse = a”.
Stephen Paulger,
19

Poprosiłeś o dobre wskazówki, które pomogą ci przejść przez krzywą uczenia się w edytorze tekstu vi. Wiele poprzednich odpowiedzi sugeruje, że nie używasz innych edytorów. Myślę, że to dobra rada. Przejście na vi z bardziej graficznego edytora wymaga zmiany sposobu myślenia. Wymaga myślenia w kategoriach poleceń, a nie zmian wizualnych.

Przez wiele lat używałem wyłącznie vi i uważam, że jedynym sposobem na zwiększenie produktywności jest zapamiętanie poleceń, których regularnie używasz. W ten sposób stworzyłem krótką listę najczęściej używanych poleceń na klawiaturze. Pogrupowałem i kodowałem kolorami te polecenia według funkcji, tj. Przesuwanie kursora, edycja, wyszukiwanie itp. Starałem się uwzględniać tylko najczęściej używane polecenia, których nie znałem. Chodzi o to, aby utworzyć szybkie odniesienie, które jest również pomocą w zapamiętywaniu - a nie zastępować dostępne ekrany pomocy. Następnie wydrukowałem tę listę i przykleiłem ją do ściany za monitorem, aby ją łatwo zobaczyć. (Wspomniane graficzne ściągawki mogą w niektórych przypadkach działać lepiej, ale prawdopodobnie są lepszym źródłem odniesienia niż narzędzie do zapamiętywania).

Oto klucz. Kiedy poczułem się komfortowo z jednym z poleceń, narysowałem ołówkiem linię. Nadal mogłem to zobaczyć, gdybym tego potrzebował, ale dla mnie symboliczne było, że opanowałem to polecenie. To dało mi pewność siebie i motywację, ponieważ mogłem widzieć regularne postępy. Kiedy już większość z nich wykreśliłem, usunąłem je i dodałem kilka rzadziej używanych poleceń. Kontynuowałem ten proces, dopóki nie byłem zadowolony z mojej znajomości vi. Wiedziałem, że doszedłem do tego momentu, kiedy zdałem sobie sprawę, że od dawna nie wykrzykiwałem żadnych poleceń ani nawet nie patrzyłem na listę.

Kilka lat temu musiałem pracować na platformie UNIX, gdzie vi był jedynym dostępnym edytorem. Kupiłem małą kieszonkową książkę referencyjną na vi, ale prawie jej nie używałem. Skończyłem robić listy i umieszczać je na ścianie, tak jak robiłem to po raz pierwszy. Pod koniec pierwszego tygodnia czułem się bardzo dobrze, mimo że minęło pięć lat, odkąd użyłem vi.

TMarshall
źródło
2
Myślę, że to doskonała rada i dotyczy w równym stopniu nauki innych narzędzi, jak IDE, debugger, a nawet coś takiego jak Excel.
davidavr
11

Dla mnie VI to dobry edytor awaryjny, ale nie jest to coś, czego chcę użyć, jeśli jest jakaś inna alternatywa. Zdaję sobie sprawę, że to nie jest dla wszystkich, nie mówię, że jest okropne lub coś w tym rodzaju, po prostu osobiście wolę wykrywalny interfejs użytkownika.

Ale naprawdę musisz znać VI, jeśli robisz coś znaczącego w Linuksie!

Naucz się więc podstaw: i = tryb wstawiania esc = wyjdź z trybu wstawiania: wq = zapisz i wyjdź: q! = Nie zapisuj i wyjdź x = gdy nie jest w trybie wstawiania, usuń znak. / = szukaj

Pomoże ci to w każdej sytuacji awaryjnej edycji. Nic nie możesz zrobić za pomocą tych kilku poleceń (i oczywiście nawigacji). Resztę możesz „przylgnąć” tak, jak potrzebujesz.

Zachowaj dostęp do podręcznika lub książki - kiedy POTRZEBUJESZ użyć VI, prawdopodobnie nie będziesz mógł przeglądać sieci - ale strona podręcznika może być nieco przydatna.

Bill K.
źródło
4
polecenie: help jest jednym z najbardziej użytecznych, którego można się nauczyć na początku - komu potrzebne są podręczniki lub sieć, gdy jest wbudowana w edytor?
zigdon
2
Jeśli nauczysz się korzystać z: pomoc, nie jest wymagana książeczka. Jeśli chodzi o „prawdopodobnie nie będziesz mógł przeglądać Internetu”, zapoznaj się z przeglądarkami rysi i linków. W skrócie, możesz nawet użyć ich do przeglądania systemu plików.
converter42
11

nie zmuszaj się. ścieżka do mistrzowskiej miłości jest.

jbarciela
źródło
11

Powinieneś zacząć od vim (Vi IMproved), a zwłaszcza GUI - gVim . GUI ma menu, aw systemie Windows można używać skrótów kopiowania, wycinania i wklejania, dzięki czemu można natychmiast wymienić Notatnik. A ponieważ w menu są wyświetlane skróty (polecenia vim), możesz się wiele nauczyć.

Inną rzeczą, którą powinieneś zrobić od samego początku, jest skonfigurowanie vi do swoich potrzeb. Na przykład możesz przekształcić vima w IDE Pythona . Robiąc to, nie będziesz miał usprawiedliwienia dla używania innego edytora, ponieważ vi zaoferuje ci wszystko, czego potrzebujesz.

Cristian Ciupitu
źródło
W zależności od emulatora terminali korzystanie z GUI jest także szybsze. :)
Arafangion
10

usuń wszystkie inne aplikacje edytora tekstu.

Musisz się tego nauczyć.

Bob Dizzle
źródło
9

Najprostszym sposobem zmuszenia się może być usunięcie wszystkich innych edytorów z komputera. Pozbądź się pokusy :)

Dana
źródło
9

Za każdym razem, gdy wykonujesz złożone zadanie edycyjne, zastanawiaj się, czy jest na to bardziej wydajny sposób. W większości przypadków, gdy jest to coś, co można opisać prostymi terminami (np. „Zamień akapity tekstu” lub „usuń wszystko po znaku X w komentarzowych wierszach”), możesz to zrobić za pomocą kilku naciśnięć klawiszy w vimie.

Istnieje kilka kluczowych funkcji, które są niezwykle przydatne, i będziesz z nich korzystać przez cały czas. Te, które najbardziej kocham to:

  • Wybór bloku (Ctrl-V)
  • Nagrywanie makro (q)
  • Edycja wirtualna (: set ve = all)
  • Wyrażenia regularne
  • Przesyłanie potoków do zewnętrznych programów uniksowych
  • Kluczowe odwzorowania
  • Autouzupełnianie (Cp, Cx Cp, Cx Cf)
  • Kombinacja operacji i ruchu (jest niesamowicie potężna)

Zapytaj innych programistów, jakie funkcje są dla nich najbardziej przydatne, i zastosuj te, które lepiej pasują do Twojego mózgu. Kradnij pomysły innych ludzi .vimrc( tutaj moje )

Roberto Bonvallet
źródło
8

EDYCJA: Stworzyłem fiszkę ustawioną w internetowej witrynie powtórzeń flashcarddb.com , na wypadek gdybyś był zainteresowany ...

  1. Użyj programu kart z powtórzeniami z odstępami, takiego jak mnemosyne , supermemo lub anki, aby włączyć naukę i zachować nowe polecenia w codziennej rutynie. Nie wystarczy używać vima jako codziennego edytora. Aby go opanować, musisz przechowywać te kody w swojej głowie, czekając na czas, kiedy będą one idealnym rozwiązaniem dla danego zadania.
  2. Zachowaj .vimrc z dostosowaniami
  3. Napisz lub edytuj wtyczkę vima
Peter Nore
źródło
8

Jakiś czas temu napisałem przewodnik po wydajnej edycji z Vimem . Może ci się to przydać.

Cofam się na chwilę i zadaję sobie pytanie „dlaczego chcę nauczyć się tego edytora? Co sprawia, że ​​myślę, że będzie on szybszy lub lepszy niż mój obecny edytor tekstu?” Następnie naucz się tych funkcji, które sprawią, że Vi (m) stanie się dla ciebie niezbędna.

Na przykład integracja CTag Vima jest dla mnie całkowicie niezbędna. Pracuję z bardzo, bardzo dużą bazą kodu, a możliwość przejścia do definicji funkcji lub klasy za jednym naciśnięciem klawisza (niezależnie od tego, w którym pliku się znajduje) jest funkcją absolutnie zabójczą, bez której nie mam problemów.

Użyj pliku .vimrc, aby tworzyć makra automatyzujące typowe zadania.

Twój edytor autopilota wybierze edytora, który wykona zadanie najszybciej i przy minimalnym wysiłku umysłowym. Trochę prac przygotowawczych zapewni, że redaktorem jest Vim. :-)

Jonathan
źródło
1
link już nie działa
eugenevd
6

Dwie rzeczy, które znacznie poprawią twoje umiejętności vi:

  1. Ćwicz, ćwicz, ćwicz
  2. Nethack
Mark Witczak
źródło
6

Moja sugestia: zacznij od małej. Po prostu zacznij od zapamiętania małego zestawu najbardziej przydatnych poleceń. Kiedy zacząłem vi, były to moje najlepsze 10:

  • (Esc), aby powrócić do trybu poleceń (najważniejsze!)
  • a, aby dodać tekst za kursorem
  • A, aby dodać tekst na końcu bieżącego wiersza
  • x, aby usunąć 1 znak
  • dd, aby usunąć 1 linię
  • R, aby zastąpić tekst (nadpisać)
  • cofnąć
  • : q! (Enter), aby wyjść bez zapisywania
  • : w (Enter), aby zapisać
  • ZZ, aby zapisać i wyjść

Wiele podstawowych edycji można wykonać tylko przy użyciu tych poleceń. Gdy poczujesz się komfortowo, reszta nie będzie wyglądać zbyt trudnie.

BTW, chciałbym dodać, że polegałem na vi w moim głównym edytorze tekstu, ale teraz tylko wtedy, gdy muszę. W moim przypadku wydajność jest lepsza, gdy używam narzędzi takich jak Emacs lub Visual Studio (uwaga: „w moim przypadku”). Wypróbuj więcej niż jedno narzędzie i wybierz takie, które najbardziej poprawi Twoją wydajność. Powodzenia!

Paulus
źródło
Polecenie ZZ nie działa w macvimie
insynuacja gry
5

Brzmi głupio, ale granie w gry roguelike (takie jak Nethack lub Angband ) to świetny sposób na wygodne korzystanie z klawiszy h/ j/ k/ ldo nawigacji kursorem.

bk1e
źródło
4

Zapisz wszystkie skróty i funkcje używane w bieżącym edytorze podczas korzystania z niego w pracy. Następnie usiądź w sobotę rano i korzystając z Google i przepełnienia stosu dowiedz się, jak wykonać każdą z nich w vi. Prawdopodobnie najlepiej, jeśli użyjesz do tego arkusza (lub arkuszy) papieru.

Teraz wyłącz / usuń inne edytory w pracy, aby ich odnalezienie i ponowne zainstalowanie zajęło więcej czasu niż przeglądanie arkusza porównawczego i zrobienie tego w vi - tzn. Nie masz wyboru.

Na koniec opublikuj listę skrótów krzyżowych ze starego edytora do nowego na swoim blogu.

Powodzenia!

Chłopak
źródło
4

Nie używasz X11 ?

$ sudu rm /usr/local/bin/emacs

Zmienić powłokę logowania na vi ?

Najpierw zmusić się do korzystania z ed , a następnie vi będzie wyglądać na luksus?

Użyj vi klawiszy w bash ?

Po prostu zacznij używać vi cały czas?

Wydaje mi się, że nauka edytora nie różni się zbytnio od nauki języka. Zanurzenie działa najlepiej.

Używam vi do naprawdę szybkich edycji lub gdy z jakiegoś powodu nie mogę używać X11 , ale żyję w emacsie . Naprawdę potężni redaktorzy powinni poświęcić czas na naukę.

Jon Ericson
źródło
3

Radzę wymyślić kilka prostych programów i napisać je, zacząć od końca, używając VI.

Szanse są, na początku będziesz zbyt sfrustrowany krzywą uczenia się, aby zmusić się do korzystania z nich w pracy lub w środowisku wrażliwym na czas.

Zrobiłem to wcześniej, aby zapoznać się ze środowiskami / edytorami i działa całkiem dobrze.

Jeśli masz problemy z wymyśleniem rzeczy do napisania, polecam powtórzyć projekty wykonane w szkole (lub cokolwiek innego, co zrobiłeś wcześniej). Ta metoda ma dodatkową zaletę polegającą na tym, że możesz zobaczyć, jakim jesteś lepszym programistą. :)

Edycja: zapomniałem wspomnieć, że powinieneś to zrobić całkowicie z konsoli, aby uniknąć pokusy korzystania z myszy!

TM.
źródło
3

Pamiętam, kiedy po raz pierwszy zacząłem uczyć się emacsa, było to po tym, jak bardzo dobrze czułem się z Vimem i byłem na tej samej lub podobnej łodzi, na której byłeś, gdzie wiedziałem, jak wiele zrobić w innym edytorze, więc kiedy zacząłem używając emacsa, zawsze było to boleśnie wolne.

Myślę jednak, że będziesz musiał po prostu pochłonąć trochę bólu i zawsze ZAWSZE upewnij się, że przeglądasz dokumentację dotyczącą robienia czegoś, co wiesz, że możesz zrobić w poprzednim edytorze, np. jak przejście na koniec linii lub wybranie regionu tekstu.

Pomaga również, jeśli masz pod ręką lokalnego eksperta vi, który może zadawać pytania lub jeśli jesteś podobny do naszej firmy, promujesz programowanie w parach. W ten sposób, gdy próbujesz zrobić coś, co powinno być łatwe, możesz po prostu zapytać kogoś, pokaże Ci, jak to zrobić, a jeśli używasz edytora regularnie przez kilka tygodni, nie musisz pytać o więcej potem kilka razy, zanim stanie się drugą naturą.

Jeśli nie masz żadnych lokalnych zasobów, istnieje wiele książek / samouczków / arkuszy informacyjnych online, które powinny być w stanie odpowiedzieć na większość twoich pytań.

Ostatecznie nauka Vi jest jak nauka innych umiejętności, nie ma srebrnej kuli i będziesz musiał zaakceptować, że przez jakiś czas będziesz w niej mniej produktywny niż twój obecny redaktor. Po prostu powtarzaj sobie: „Inni ludzie mogli nauczyć się Vi, a ja jestem co najmniej tak samo mądry jak oni” (i tak to sobie mówię :))

ben.prew
źródło
3

Głównym powodem, dla którego używam vijest ssh(lub Putty w systemie Windows): Gdy jesteś zdalnie zalogowany do serwera Unix, vijest on zawsze dostępny. Działa z VT100, gdy ani klawisze kursora, ani backspace / delete nie są mapowane.

Bardzo pomocne jest także posiadanie książki takiej jak VI Editor Pocket Reference .

Aaron Digulla
źródło
3

gVIM ma naprawdę dobry samouczek (link w grupie menu Start).

Odkryłem, że praca nad tym pomogła przełamać początkowy garb uczenia się; a następnie przejście z Visual Studio do ViEMU pomogło mi udoskonalić moje umiejętności VI.

Również screencasty na http://vimcasts.org/ są świetne!

David Laing
źródło
2

Możesz zdobyć jedną z oryginalnych klawiatur Happy Hacker (bez klawiszy strzałek) i umieścić mysz (bezprzewodową) poza zasięgiem za każdym razem, gdy rozpoczniesz edycję.

Garth Gilmour
źródło
2

Łatwo jest napisać dużą listę poleceń / skrótów, ale trudno je zapamiętać bez ćwiczeń.

Skup się na jednym nowym poleceniu na raz. Gdy stanie się automatyczny, powiedz po użyciu przez tydzień lub dwa, dodaj kolejny do swojego repertuaru.

Będziesz robił długą drogę, aby osiągnąć pewne rzeczy w krótkim okresie - są to oczywiste możliwości dla nowych skrótów do nauki.

Z mojego doświadczenia było łatwiej, gdy próbowałem nie brać zbyt wiele na raz.

Craig Hyatt
źródło
2

Moja sugestia numer jeden: naucz się pisać szybko, bez konieczności patrzenia na klawiaturę.

Jeśli nie możesz dotknąć pisma i zawsze polujesz i dziobiesz dwukropek lub hjkl lub:% s / foo / bar, zapomnij o tym. Pisanie może być szybsze niż używanie myszy, ale jeśli tak nie jest w twoim przypadku, vi nie zadziała.

Ale łączą dobre umiejętności pisania, SSH i ekran i VI będą naturalne.

Michael Cramer
źródło
2

Zmierz się z faktem, że stworzy to natychmiastowy hit wydajności. Podczas nauki nowego narzędzia musisz być w stanie zrobić coś, co wiesz, jak zrobić z innymi narzędziami, aby problem nie był twoim problemem. Po użyciu nowego narzędzia przez jakiś czas zniknie, a ty skupisz się tylko na podstawowym problemie.

W przypadku czegoś takiego jak vim (jak powiedzieli inni, vim jest znacznie lepszy od vi) ważne jest okresowe czytanie i przeglądanie dokumentacji. Bez niego interfejs jest całkowicie nie do odkrycia. Przy każdym nowym czytaniu zobaczysz funkcję i powiesz: „ach, to by rozwiązało ten problem, który próbowałem rozgryźć w zeszłym tygodniu”, i zapiszę to w twoim mózgu. Rozwiązania związane z rzeczywistymi problemami, które miałeś, są o wiele łatwiejsze do zapamiętania niż przypadkowe skróty.

W końcu możesz używać vima z dość niewielkim podzbiorem jego funkcji, więc nie przytłaczaj się wszystkimi dzwonkami i gwizdkami. Pomyśl o wszystkich funkcjach programu Word, czy 99% ludzi z nich korzysta?

Cena matowa
źródło
2

ESC gg=Gwciągnięcie mnie w kod i ponowne :retabprzekonwertowanie tabulatorów na spacje lub spacje na tabulatory były tym, co przyciągnęło mnie do vima. Więc właściwie nie musisz być zmuszany do korzystania z niego, musisz tylko dowiedzieć się, kiedy może to pomóc zwiększyć prędkość.

Przejść vimtutor.

Zacznij używać vima do prostej edycji, takiej jak pliki konfiguracyjne lub HTML. Naucz się poleceń tak, jak ich potrzebujesz.

Wyszukaj w Google dobry plik .vimrc używany przez kogoś, kto używa łańcucha narzędzi podobnego do twojego. Włącz podświetlanie składni. Znajdź ładny schemat kolorów.

Naucz się makr, ponieważ Vim jest najlepszy do automatycznych zadań i wstawiania fragmentów, takich jak formatowanie kilku słów w złożony tag XML lub konwertowanie CSV na tabelę HTML.

Eduardo Marinho
źródło
2

Możesz zacząć od Cream. Cream opisuje się jako „nowoczesna konfiguracja” vima. Zasadniczo jest to specjalna wersja vima, która wygląda i działa jak każdy inny edytor tekstu do wszystkich praktycznych celów. Ale włącz „tryb eksperta”, a będziesz mieć całą moc i zachowanie vima.

Możesz więc zacząć używać Cream jako zwykłego edytora tekstu, a następnie eksperymentować z „trybem eksperckim”, dopóki nie poczujesz się wystarczająco komfortowo, aby w pełni przełączyć się na vim.

sids
źródło
2

Zainstaluj gVimna wszystkich używanych platformach.

Następnie uruchom vimtutora ( :help vimtutorlub vimtutorw wierszu poleceń).

Obejrzyj następujący wykład i postępuj zgodnie z jego radami: 7 nawyków do efektywnej edycji tekstu 2.0

Mówię, że zdecydowanie chcesz zacząć używać go do wszystkich swoich edycji. Jeśli obawiasz się utraty produktywności, poświęć weekend na solidne ćwiczenie (raz to zrobiłem, aby przejść na dvorak z qwerty, a moja produktywność była wystarczająco wysoka do poniedziałku i udało mi się po niej utrzymać).

To jest warte wysiłku i nie będziesz oglądać się za siebie!

użytkownik13060
źródło
1

Osobiście musiałem upewnić się, że mogę używać przypisania klawiszy Vima (a przynajmniej wystarczająco blisko) w kilku aplikacjach. Konieczność całkowitej zmiany sposobu edytowania tekstu za każdym razem, gdy zmieniałem edytory, sprawiała, że ​​zbyt trudno było przywiązać styl edycji Vima do pamięci mięśni.

W moim przypadku Viemu + vimperator załatwił sprawę.

tomasr
źródło
Używam Komodo Edit, który ma wbudowane wiązania vi, więc przejście na te i instalacja vimperatora pomogły ogromnie. Teraz gdybym mógł tylko zmienić rtorrent ...
Xiong Chiamiov