Vim, na ne… ez az első reakciója mindenkinek, aki még nem használt Vim-et. Alapvetően egy átlag felhasználónak nem is kell a Vim, hiszen vannak felhasználóbarátabb, esetlegesen grafikusabb szerkesztők is. Ha nem létszükséglet, akkor minek is ezzel a Vim-mel foglalkozni? Mert elterjedt és minden rendszeren jó eséllyel ott lesz. Alapismereteket érdemes elsajátítani, még akkor is, ha nem igazán akarod használni. Ha nincs más a gépen, akkor se essél kétségbe, illetve ha valamit a Vim nyit meg, akkor se legyen pánik, mert ki sem tudsz lépni. Az alapok, az alap pár Vim parancs egyszerű, kis gyakorlás után már használni tudod a szerkesztőt. Amit fontos tudni! A nagyon alapokat, a minimális ismereteket veszem csak sorba, így ha lehet a Vim barátok ne indítsanak dzsihádot ellenem, hogy a Vim az egy igaz Szerkesztő, és aki nem azt használja, az…
Vim alapjai
Az első lépésként keress, vagy hozz létre bármilyen, de hosszabb szóbégfájl, amivel gyakorolhatsz. Minden egyes lépést próbálj ki, nem sok értelme van, ha elolvasod a leírtakat, de nem próbáltad ki, nem nézted meg miképp működik. Fájl megnyitása a szokott mód történik: vim minta.txt
De előbb tanuljunk meg kilépni. A legtöbb kritika a „most láttam először Vim-et” emberektől, hogy ebből még kilépni sem lehet. Ami nyilván nem igaz, hiszen nem túl nagy haszna lenne, ha ki sem léphetnénk.
:q! kilépés mentés NÉLKÜL és kérdezés nélkül
:q kilépés, ha nem módosítottuk az állományt
:w mentés
:x kilépés MENTÉSSEL és kérdezés nélkül [vagy :wq! vagy ZZ]
:sav filenev - mentés másként "filenev" néven, és azt megnyitja Igen, simán kezd el a : után begépelni a betűket, és legalul látni fogod, hogy milyen parancsokat adtál ki. Enter-ről se feledkezz meg.
Már két hasznos ismeretünk is van. Az egyik, hogy a parancsokat : jellel kezdjük, jellemzően a normál módban. A másik kevésbé fontos, de aki végignézi a fenti öt sort látja, hogy van olyan parancs ami után ! jel van. Ha ezt is használod, akkor kérdés nélkül megteszi a parancsot, azaz értően használd, mert valóban (az itteni példákban) mentés, kérdés nélkül kiléptet. Ami már parancssorban megszokott, több kapcsolót is összevonhatunk, erre jó példa a :wq! Ami a w (mentés) és a q (kiléptetés) összevonásából készült. Mivel a w már mentett, itt használható a ! is, hiszen már mentett állományból akarunk kérdés és mentés nélkül kilépni. Jogos, és igazad is van, ha azt kérdezed: ez egy szövegszerkesztő, és ha ott ilyen karaktereket írogatunk, akkor az a szövegben nem jelenik meg?
Módok, azaz a munkakörnyezet
A Vim több üzemmódban működik. A normál, ami megnyitás után lesz aktív lehetőséget ad az ilyen parancsok futtatására. Itt valóban komoly műveleteket is elvégezhetsz, csere, keresés stb. nem csak az előbbi kilépési parancsokat használhatod. Ez a parancs futtatási, szövegmanipulálási téma adja azt, hogy a Vim nem csak egy sima szöveget író szerkesztő, hanem komoly, összetett program. Ezzel a részével nem is nagyon kell most foglalkozni, az alapokat akarjuk megtanulni. Beillesztési, azaz az írogatós módba az i lenyomásával jutsz. Ez a hivatalos megoldás, szokd meg ezt! Bár ha lenyomsz egy billentyűt és azután elkezdesz gépelni sok esetben automatikusan átkerülsz a beillesztési, az INSERT módba. Az alap, az ortodox vezérlést érdemes megszokni, mert nem mindegyik Vi megvalósításban lesz így, hanem elvárja az i lenyomását.
Alul ilyenkor a -- INSERT -- felírat jelzi a kiválasztott módot. Ha a normál (ahol parancsokat adhatsz ki) módba vissza szeretnél lépni, akkor az ESC gombot kell megnyomni, és az INSERT eltűnik. Vannak esetek, amikor egyre nem tűnik el, akkor kétszeri lenyomásra eltűnik. A harmadik mód a visual mód, ami nem meglepő, hogy a v lenyomásával kerül elő. Ezt a kijelölésekkor stb. használjuk. Bár sejtem, hogy ennyi után már egyértelmű, de kezdőknek fontos lehet: értelemszerűen a mentési, kilépési szándék előtt akár a visual, akár az insert módban ESC-et kell nyomni. Szokjuk meg már most: ha befejezted a szerkesztést, azonnal ESC, és igény szerint mentés, kilépés, vagy bármi egyéb parancs. Nagyon elveszi az ember kedvét, ha megír valamit, majd ütlegeli a :w stb. gombokat, és teleszemeteli bele a szöveget, mert nem lépett vissza a normál módba.
Navigálás a szövegben
A Vim Vi stílusú navigálást használ. Ez logikus, de érdemes kiemelni, és megtanulni. Sok fájlkezelő, ablak kezelő stb. leírásában van az a szöveg, hogy Vi stílusú navigálás. Így, ha ismered nem csak itt használhatod. h j k l - balra, le, fel, jobbra Kis gyakorlás után már villámgyors lesz és nem érted miért is nem így van mindenhol. A h,j,k,l nagyon praktikus, mert ha szabályosan gépelsz, akkor amúgy is felettük van az ujjad. Ha meg nem tíz ujjal, akkor is közel ott lesz, ha a csuklótámaszra teszed a kezed. Kurzorral is mozoghatsz, azaz a nyíl billentyűk is működnek. De inkább ezt tanuld meg, mert nem kell elvenned a kezed a betűkről, és keresni a nyilakat. Illetve nem feltétlen minden Vi megvalósításban lesznek ilyen kényelmi funkciók, mint a nyilak használata. Itt is igaz, hogy normál módban kellene a navigálást a h,j,k,l gombokkal megtenni. :) Az insert módban a nyilak működnek, így aki nem akar el- és visszaváltani a két mód közt, neki sem lesz gondja. A „hivatalos” verzió szerint a navigálást a normál módban illő megtenni. Ez alapvetően az én érdekem is, hiszen amíg a normál módban vagyok, és keresgélek, navigálok addig biztosan nem írok bele, vagy törlök ki fontos dolgokat. Illetve a jövőre nézve sem rossz, ha megszokjuk a normál módban való navigálást, mert nem csak a sima mozgás, hanem nagyon hatékony ugrási funkciók is vannak. Ezeket értelemszerűen nem lehet insert módban használni.
Sima szövegszerkesztés a Vim alatt
Amikor insert módban vagy, akkor simán a megszokott mód írsz, törölsz. Ebben semmi extra nincs. Amikor a normál módban vagy, akkor törölni is tudsz. Ez elég kényelmes megoldás, mert ha valamit törölni akarunk csak odanavigálunk. Ami felett a kurzor van azt tudjuk törölni, méghozzá az x lenyomásával. Ez még a gépírás, az írógépek korából maradt meg, amikor az x-el ütötték felül a nem kívánt részt. Egy sort a dd paranccsal tüntethetünk el.
Összefoglalva: Alapvetően sokan valóban csak egy-egy konfigurációs fájl megváltoztatására használják a Vim szerkesztőt. Így a fenti pár alapismeret megadja számukra az alapokat. Így nem esünk kétségbe, ha valamikor csak a Vim lesz a gépen. Láthatjátok, semmi ördöngösség nincs benne, ha ennyit tudsz már a kellő változtatásokat megteheted.