Az egyik legjobb barátom a vi. Minden *NIX rendszeren létezik, ha pedig valaki tudja az alap parancsokat, akkor a sokkal egyszerűbb és kényelmesebb vim-mel is gond nélkül elnavigál.
Alapok
- i – insert (beszúrás) mód.
- r – replace (felülírás) mód.
- Escape – a fenti (vagy bármely egyéb) módok elhagyása
- :w – write (mentés)
- :q – quit (kilépés)
- :wq – mentés és kilépés
- :!q – kilépés mentés nélkül
Kurzormozgatás
A “sima” módban (amikor nem vagy insert vagy replace módban) akkor a hjkl billentyűkkel lehet mozogni. Régen, amikor nem voltak kurzormozgató billentyűk, akkor nagyon sok helyen ezt használták, s mert egymás mellett vannak, nagyon kényelmes volt. Ne lepődj meg, ha sok helyen visszaköszönt rád (pl. Google Mail vagy Google Reader).
- h – fel
- j – le
- k – balra
- l – jobbra
- / – keresés: a kurzort a kereséssel is lehet mozgatni. Ha a geeklany szóra keresel, akkor a /geeklany begépelésével (+enter) találod meg.
- ? – ugyanaz, mint a /, csak visszafelé
- f – f és utána a keresett betű. Ha a file-od tartalma “Hello World”, akkor az fo begépelése először a Hello o betűjére visz, ha újra begépeled, akkor pedig a World szó o betűjére.
- F – ugyanaz, mint az f, csak visszafelé
- % – ugorj a legközelebbi (), [] vagy {} karakterre
- H – ugorj az első sorra
- M – ugorj a középső sorra
- L – ugorj a legalsó sorra
- #G – Ugorj az x. sorra. Pl. 1G az első sorra visz. Ha csak G-t ütsz le, akkor az az utolsó sorra visz, mint az L.
- w – következő szó (word)
- #w – menj az x. szóra. 2w: menj előre két szót
- b – menj vissza egy szót (back)
- #b – menj vissza x szóval.
- e – menj a szó végére.
Másolás
- v – nyomd le a v betűt és mozgasd a kurzort a szöveg kiválasztásához.
- y – másold ki a szöveget (yank)
- p – illeszd be a szöveget (paste)
- x – vágd ki a szöveget (cut), ha nincs semmi kiválasztva, akkor a kurzor alatti karaktert vágja ki.
Parancsok kombinálása
Több parancsot is lehet tetszőlegesen kombinálni, mint pl. a :wq a mentsd és lépj ki megoldásra.
A legjobb példa azonban mégis a törlés:
- dw – töröld le a következő szót
- db – töröld le az előző szót
- de – töröld ki a karaktereket a szó végéig
- dL – törölj ki mindent a file végéig
- d/geeklany – törölj ki mindent a kurzortól addig, amíg a geeklany szót meg nem találod
- dd – töröld ki az egész sort
Visszavonás, ismétlés
- u – visszavonás (undo)
- . – ismételd meg az előző parancsot. Pl. ha igeeklany -nyal a szövegbe illesztetted, hogy geeklany, akkor a . (az insert mód elhagyása után) újra beilleszti a kurzorhoz a geeklany szót. (Ha pedig keresel a /geeklany -nyal, akkor a következő találatra jutsz).
Ez persze nem minden, de még így is több, mint amire a legtöbbször szükséged van.
További billentyű parancsok angolul a Harvard linkjén találhatóak.
Bónusz: keresd meg és cseréld le
Ha ‘szintet’ lépsz a vi használatában és áttérsz a vim-re, akkor lehet, hogy neked is a kedvenc parancsod lesz a keresd meg és cseréld le.
- :%s/geeklany/geeklány/g – találd meg az összes geeklanyt és cseréld le geeklány-ra.
- :%s/geeklany/geeklány/gc – ugyanaz, mint az előbb, de az első lecserélése előtt kérdezz rá
- :%s/\<geeklany\>/geeklány/g – Csak akkor cseréld le, ha a teljes szó egyezik.
- :%s/geeklany/geeklány/gi – Kisbetű/nagybetű eltérést hagyd figyelmen kívül.
- :%s/foo/bar/gI – Figyelj oda a kisbetű/nagybetű eltérésre (ha úgy állítottad be a vim-et, hogy egyébként figyelmen kívül hagyja).
Bónusz2: ripthestage ajánlata[update]
- $ = sor végére ugrás,
- G = fájl végére ugrás,
- cw = szó cserélése,
- :szám adott sorra ugrik.