2017. május 31., szerda

Vim "alapszintű túlélőkészlet"

Nemrég olvastam egy StackOverflow-s blog bejegyzést arról, hogy a "hogyan tudunk kilépni a Vim szerkesztőből" kérdést már több, mint 1 millióan nézték meg. Illetve, olyanok is vannak, akik nem találtak még rá erre a kérdésre :)

No, de viccet félretéve, vannak időszakok, amikor egészen sok időt töltök én is a Vim szerkesztőben. Mondjuk, én szeretem :) Egyszer rászántam az alapok megismerésére és begyakorlására, meg egy "alapszintű bekonfigurálásra" néhány héten keresztül napi kb. fél-egy órát. Amit akkor "felszedtem", azzal egészen hatékonynak tűnök a kollégák számára, pedig igazából nem túl sok, ha a Vim összes lehetőségét nézem (egy élet is kevés alaposan megismerni...).

Windows alatt is van telepítve és bekonfigurálva egy GVim, egy viszonylag szolid színsémával és jó néhány kiegészítő plugin-nel (igen, a sötét hátteret szeretem kódszerkesztésnél, változatos felüdülés a szememnek a számos dokumentumkészítés és -olvasás között/után :) ).


Ugyanakkor azt is meg kell mondanom őszintén, hogy viszonylag ritkán veszem elő, sokkal gyakrabban indítom el a Sublime Text 3-at. De jó dolognak tartom, hogy sikerült megismerkedni az alapokkal.

Legtöbbször akkor használom, amikor valamilyen Linux szerveren kell úgy beállításokat eszközölnöm, hogy időveszteség lenne onnan letölteni a fájlokat, helyben módosítani és visszatölteni. Ehhez nem is kell túl sok parancs ismerete, én az alábbiakkal a leggyakoribb feladatokat gyorsan és hatékonyan (és nem utolsó sorban magabiztosan!) el tudom végezni:

<Esc>:q! - Kilépés mentés nélkül
<Esc>:w - Fájl mentése (ha ki is lépnénk utána, akkor <Esc>:wq)
<Esc>:set bg=dark - ha sötét hátterű a shell, amivel dolgozunk, és nem látjuk jól a Vim-ben a karaktereket
<Esc>:%s/mitkeresünk/mirecseréljük/igc - "klasszikus" keresés/csere művelet, az igc toldalékok miatt minden cserére rákérdez a Vim, kis-nagybetű érzéketlenül keres és egy soron belül mindegyik előfordulást megtalálja, ha több is van

A fenti parancsokban az <Esc> az Escape billentyű megnyomását jelenti. Ha valamilyen szerkesztő üzemmódban voltunk, akkor abból ezzel kilépünk a szerkesztő üzemmódból az ún. normál módba. Onnan a : (kettőspont) segítségével kaphatjuk meg a vim "parancssorát", ahova gépelhetjük, amit gépelünk.

Ha normál módban vagyunk, az i megnyomásával átmehetünk szerkesztő üzemmódba. Sok más parancs segítségével is átmehetünk, de, mivel minden modernebb környezetben szépen támogatja a Vim a kurzorbillentyűk használatát még a szerkesztési navigációban is, kezdetben elég ezt az egy átmenetet ismerni. Következőnek - már félig "haladóként" - erősen javaslom a c (change) parancs és a Vim szövegobjektumainak (text objects) a megismerését, ez az a pont, amit, ha valaki jól megismer, akkor - általában - megszereti a szerkesztőt.

Normál módban "ugrálni" a következő parancsokkal szoktam, ez nekem többnyire elég (vagy a fájl végét szerkesztem, vagy egy bizonyos környezetet, amire rá szoktam keresni):

/mitkeresek - keresés a fájlban előrefelé (a kurzorpozíciótól)
?mitkeresek - keresés a fájlban visszafelé (a kurzorpozíciótól)
n - keresés után a következő találatra ugrás
G - fájl végére ugrás
gg - fájl elejére ugrás
<sorszám>gg - a megadott számú sorra ugrás

Nagyjából ennyi az, amit gyakran használok a Vim lehetőségei közül. Nem sok, de az alap dolgokat kiválóan el lehet vele látni. Ha pedig tovább szeretnénk lépni, kiváló online anyagok állnak rendelkezésre, többek között:
  • Vimcasts.org: cikkek és rövid bemutató videók egyes Vim lehetőségekről
  • A Byte of Vim: online elérhető és olvasható könyv

Nincsenek megjegyzések:

Megjegyzés küldése