Vim

vim

Vim "konzol" módban
Típusú Szöveg szerkesztő
Fejlesztő Bram Molenar és mások
Beírva C és Vim szkript [1]
Operációs rendszer Amiga , Linux , Mac OS X , Windows , OpenVMS , OS/2 , Unix
Interfész nyelvek Angol, spanyol, olasz, kínai, német, perzsa, lengyel, orosz, francia, japán [2]
Első kiadás 1991. november 2. [3]
legújabb verzió
Engedély GPL - kompatibilis Vim licenc , jótékonysági program
Weboldal vim.org
 Médiafájlok a Wikimedia Commons oldalon

A Vim ( a Vi Im proved rövidítése , ejtsd: "vim") egy ingyenes szövegszerkesztő , amely a régebbi vi -n alapul . Most ez egy erőteljes szövegszerkesztő, teljes testreszabási és automatizálási szabadsággal, amelyet a bővítmények és kiegészítők tesznek lehetővé.

A Vim felhasználói felülete tiszta szöveges (konzol) módban futhat .

Van egy módosítás a grafikus ablakfelülethez - GVim. A GVim számos felhasználói parancsa a megfelelő menüelemeken keresztül hívható meg.

A fő különbség a "klasszikus" szövegszerkesztőktől

A szerkesztő egyik fő jellemzője a két fő, manuálisan kapcsolható beviteli mód használata: parancs (indítás után a szerkesztő benne van) és szöveg ( angol  beszúrási mód , direkt szövegszerkesztő mód, hasonlóan a legtöbb "normál" módhoz szerkesztők). Vannak más módok is.

A Vim nem intuitív (kivéve "szöveges" módban), így a szerkesztővel való hatékony munkavégzés előzetes tanulást igényel.

Funkcionalitás

Áttekintés: Kiemelt vi fejlesztések

A klasszikus vi -hez képest a Vim a következő fejlesztésekkel rendelkezik:

Vim súgórendszer

A Vim rendelkezik egy nagyon kényelmes és részletes súgórendszerrel, valamint egy rendszerrel a szakaszok közötti navigációhoz és navigáláshoz. Bármelyik szakaszának megnyitásához csak használja a :help parancsot parancs módban.

Terminológia

Üzemmódok

Normál mód

Természetesen sokkal több ilyen csapat van. A lényeg az, hogy ezeket a parancsokat meg kell tanulnod a használathoz. Azzal érvelhet, hogy valószínűleg nem tudja megtanulni az összes parancsot, mert több száz különböző mozgásparancs létezik, néhány egyszerű és néhány nagyon okos, és hogy ezeknek a parancsoknak a megtanulása hetekig tartó gyakorlást igényel. Nos, nem kell mindegyiket megtanulni. Ehelyett meg kell értenie az egyéni szerkesztési stílusát, és csak azokat a parancsokat kell megtanulnia, amelyek segítenek a hatékonyabbá tenni [5] .

Bram Moolenaar

Alapértelmezés szerint a Vim normál módban indul, amit parancs módnak is neveznek. A billentyűleütéseket ebben a módban parancsként érzékeli (másolás, törlés, szöveg áthelyezése stb.).

A normál módú parancsok között vannak "egykarakteres" parancsok. Így például a megnyomásával $a kurzor a sor végére kerül; a gomb megnyomása 0(nulla) - az elejére; D(nagybetűvel) - az aktuális sor egy részének törlése ( d elete) a kurzor aktuális pozíciójától a végéig; С(nagybetűvel) - az aktuális sor egy részének cseréje ( c hange ) a kurzor aktuális pozíciójától a végére stb.

A munkájukhoz tartozó többi parancs a bevitel további folytatására vár. Például ffelelős azért, hogy egy sorban gyorsan a maga után beírt karakterre lépjen. Ezért a fVim megnyomása után megvárja ennek a karakternek a beírását, hogy keresésként használja.

yA ( y ank ), d, és más hasonló "vezérlő" billentyűk megnyomása után ca Vim további parancsok bevitelére vár, amelyek meghatározzák azt az objektumot, amelyen a művelet végrehajtásra kerül (másolás, törlés vagy csere). Tehát dawtörli az aktuális szót a kurzor alatt ( d elete a mbient w ord ), és d$ az összes karaktert a kurzor aktuális pozíciójától a sor végéig.

Az ilyen nagyon egyszerű parancsokat nem csak "kézi módban" használják (ha szükséges, minden alkalommal a billentyűzetről írják be), hanem összetett műveletsorok beállításakor is .

A normál üzemmód a központi mód , amelyből az összes többire való áttérés történik. Bármely módból parancs módba válthat a gomb kétszeri megnyomásával Esc(a legtöbb esetben elég egy megnyomás).

Beszúrás mód

Beszúrási mód ( angol  beszúrási mód ), amelyben a szöveg bevitele történik.

A parancs módból beszúrási módba váltáshoz nyomja meg ia (a szöveg kurzornál történő beillesztéséhez) vagy a(a szöveg kurzor utáni beillesztéséhez) gombot. Számos más billentyű és ezek kombinációja is létezik a közvetlen szövegszerkesztési módra való átváltáshoz (például a szövegobjektum-csere parancsok egyikén keresztül).

Ebben a módban a Vim ugyanúgy működik, mint a legtöbb "szokásos" szövegszerkesztő. Alapértelmezés szerint a beírt karaktereket a rendszer nem parancsként kezeli, hanem beszúrja a meglévő szövegbe. Azonban még ebben a módban is beállíthat speciális szerkesztőműveleteket, amelyek bizonyos billentyűk vagy azok kombinációinak lenyomásakor hajtódnak végre. Példaként megadhatja, hogy nyitó zárójel beírásakor (a megfelelő záró zárójel azonnal hozzáadásra kerüljön, és a kurzor közéjük kerüljön.

CtrlA billentyűparancsok ( + Rstb.) szövegek beszúrására, törlésére, módosítására és automatikus kiegészítésére is használhatók .

Rövidítés szó beírásakor ez a szó automatikusan lecserélődik egy előre meghatározott szövegre.

Parancssori mód

:Ez az üzemmód a normál módból a gomb megnyomásával hívható elő . A kettőspontot egy összetett parancs követi (például keresés vagy csere), amely beírása után a lenyomásával végrehajtásra kerül ↵ Enter. A parancs végrehajtása után a szerkesztő visszatér normál módba. Ez a mód a szövegben további keresésre, a szövegben /visszafelé történő keresésre ( ?), valamint egy szűrőparancsot !is tartalmaz az adatok külső szűrőnek való továbbítására.

Vizuális mód

A vizuális mód hiányzott a Vi-ből, és először a Vimben jelent meg. Ez némileg hasonlít a parancshoz. Speciális vezérlőparancsokkal, nyilakkal és navigációs parancsokkal kombinálva karakterenként, soronként vagy blokkként jelölheti ki a szövegrészleteket, majd normál módú parancsokat alkalmazhat rájuk (például törölheti vagy cserélheti ki a kijelölt szöveget). Ebben a módban a szerkesztés egyszerűbb, mint a normál módban, mert jól látható, hogy melyik szövegblokkra vonatkozik a meghívott szerkesztési parancs.

Műveletek automatizálása

A Vim azon képessége, hogy különbséget tud tenni a szöveges objektumok (szavak, mondatok, bekezdések, sorok, egyedi karakterek stb.) között, lehetővé teszi bizonyos műveletek automatizálása érdekében műveletek sorozatának beállítását.

Igen, a parancs után

nmap < F7 > byei << ESC > ea >< / < C - R > 0 >< ESC >

megnyomásával (parancs módban) a kurzor alatt lévő bármely szót (függetlenül a hosszától és a benne lévő karakterektől) xml címkévéF7 alakítja . Például, ha az aktuális szó a kurzor alatt div , akkor a rendszer <div></div>-re konvertálja , ha a transzformáció  akkor <transform></transform>-ra stb.

A Vim sokkal összetettebb átalakításokra képes, saját függvényeket is beállíthat az adatok átalakítására és a rutinműveletek automatizálására.

Minden olyan művelet, amely a Vimben "manuálisan" (vagyis közvetlenül a billentyűzeten lévő személy által) megvalósítható, automatizálható (beleértve a különböző módok közötti váltást is).

Verzióelőzmények

Verziótörténet
dátum Változat Változtatások
1988 1.0 A Stevie for Amiga alapján készült, Vi Imitation címmel , hivatalosan soha nem adták ki.
1991. november 2 1,14 [6] Első nyilvános kiadás az Amigához
1992 1,22 [6] Unixra portolva . Most Vim versenyez vi -vel . Ettől a pillanattól kezdve Vim Vi IMproved lett
1994. augusztus 12 3.0 [6] Osztott ablakok támogatása
1996. május 29 4.0 [6] Grafikus felhasználói felület
1998. február 19 5.0 [6] Szintaxis kiemelés , egyszerű szkriptnyelv (felhasználó által definiált függvények, parancsok stb.)
1998. április 6 5.1 Hibajavítások és egyéb változtatások.
1998. április 27 5.2 Hosszú sorok támogatása, beépített fájlböngésző, párbeszédpanelek, előugró menük, kiválasztási mód, munkamenet-fájlok, felhasználó által definiált funkciók, parancsok, tcl felület és egyéb változtatások.
1998. augusztus 31 5.3 Hibajavítások és egyéb változtatások.
1999. július 25 5.4 Egyszerű fájltitkosítás, különféle fejlesztések
1999. szeptember 19 5.5 Hibajavítások, különféle fejlesztések
2000. január 16 5.6 Új szintaktikai fájlok, hibajavítások és egyéb változtatások
2000. június 24 5.7 Azonos
2001. május 31 5.8 Azonos
2001. szeptember 26 6.0 [6] Hajtogatás , bővítmények, többnyelvűség és egyéb változtatások
2002. március 24 6.1 Hibajavítás
2003. június 1 6.2 GTK2 , arab támogatás , parancs: try, kisebb funkciók, hibajavítások
2004. június 7 6.3 Hibajavítások, fordítási frissítések, címkék fejlesztései
2005. október 15 6.4 Hibajavítások, Perl , Python és Ruby támogatási frissítések
2006. május 7 7.0 Helyesírás-ellenőrzés , automatikus kiegészítés , tabulátorok ("tabs"), az aktuális sor és oszlop kiemelése, ágak visszavonása és egyéb változtatások
2007. május 12 7.1 Hibajavítások, új végrehajtható és szintaktikai fájlok, valamint egyéb változtatások
2008. augusztus 9 7.2 Hibajavítások, új végrehajtható és szintaktikai fájlok, biztonsági fejlesztések és egyéb változtatások
2010. augusztus 15 7.3 Hibajavítások, új végrehajtható és szintaktikai fájlok, biztonsági fejlesztések, „örökös” visszavonás, Mac OS 9 és GTK1 támogatásának megszűnése, Lua támogatás és egyéb változtatások
2013. augusztus 10 7.4 Új, gyorsabb reguláris kifejezés motor és egyéb változtatások
2016. szeptember 12 8.0 Aszinkron I/O, lambda-kifejezések , lezárások , GTK+ 3 és Microsoft DirectX támogatása és egyéb változtatások.
2018. május 18 8.1 A Vim ablakon belüli terminál megnyitásának támogatása [7] .
2019. december 14 8.2 Felugró ablakok
2022. június 28 9.0 [8] Vim9 szkript

Hordozhatóság

A Vim szerkesztő egyik előnye, hogy számos operációs rendszerhez elérhető . Ez különösen igaz a rendszergazdákra , akiknek platformokon keresztül kell fájlokat szerkeszteniük.

A Vim a következő operációs rendszereken fut:

Vim Touch

Az érintőképernyőt elsődleges beviteli eszközként használó Android operációs rendszerhez David Tao megírta a vim, vim touch adaptált változatát, amelyet jelenleg Apache licenc alatt terjesztenek [9] [10] [11] [12] . Létezik a DroidVim egy változata is.

Díjak

2001-től 2004-ig Vim nyerte el a LinuxJournal Readers' Choice Awards Favourite Text Editor díját. 1999- ben megkapta a Linuxworld Editors' Choice Award -ot és 2000-ben a Slashdot Beanie-díjat is.

Licenc

A Vim-et  a Charityware néven ismert GPL - kompatibilis licenc alatt terjesztik . A Vim fejlesztésére felajánlott pénz egy részét az ICCF Hollandon keresztül az ugandai árvák támogatására fordítják .  

Vim kiterjesztések

A hivatalos oldalon elérhető bővítmények teljes száma több mint 3000 [13] .

A népszerű Vim bővítmények a következők:

  • MiniBufferExplorer ;
  • taglist  - a programfájlok szerkezetének megtekintése (függvénylista stb.);
  • bufexplorer (a Vim 7.4 óta, többnyire elavult);
  • closetag - a címkék  kényelmesebb bezárásához html és xml fájlok szerkesztésekor ;
  • supertab  - a szavak automatikus befejezéséhez lenyomással Tab ↹(ugyanakkor a sor behúzása a szokásos módon működik);
  • projekt - a fájlok projektekbe való rendszerezése a könnyebb navigáció érdekében;
  • indexer - címkék generálásához ctagok használatával a projektben szereplő összes fájlhoz (a projekt megszervezhető a projekt bővítménnyel és anélkül is). A címkékre szükség van a függvényhívásról a deklarációra való gyors átlépéshez, egy struktúra vagy osztály tagjainak listájához stb.

A népszerű Vim-bővítmények listája népszerűségük szerint a GitHubon: http://vimawesome.com

A bővítményeken keresztül biztosított lehetőségek rugalmassága miatt a Vim személyes wikiként is használható .

Jegyzetek

  1. Vim | freshmeat.net . Letöltve: 2009. május 21. Az eredetiből archiválva : 2009. június 6..
  2. Vim nem angol nyelveken . Letöltve: 2008. február 4. Az eredetiből archiválva : 2011. augusztus 23..
  3. http://arstechnica.com/information-technology/2011/11/two-decades-of-productivity-vims-20th-anniversary/
  4. Vim 9.0  : vim online – 2022.
  5. A hatékony szövegszerkesztés hét szokása . Letöltve: 2010. április 7. Az eredetiből archiválva : 2011. október 2..
  6. 1 2 3 4 5 6 Moolenaar, Bram Vim, egy nyílt forráskódú szövegszerkesztő ( 2002-01-15 ). Letöltve: 2005. október 24. Az eredetiből archiválva : 2011. augusztus 23..
  7. OpenNews: Megjelent a Vim 8.1 szövegszerkesztő . www.opennet.ru Letöltve: 2018. május 25. Az eredetiből archiválva : 2018. május 25.
  8. Bram Moolenaar. Megjelent a Vim 9.0! . Hozzáférés időpontja: 2022. június 30.
  9. Alex Young. Áttekintés: VimTouch for Android (nem elérhető link) . usevim.com (2012. szeptember 19.). Letöltve: 2016. június 15. Az eredetiből archiválva : 2016. június 13. 
  10. Teljes értékű munkahelyté varázsoljuk a táblagépet . "Hacker" (2013. november 26.). Letöltve: 2016. június 15. Az eredetiből archiválva : 2016. augusztus 9..
  11. Vitalij Soroko. PHP Androidon // LinuxFormat . — 2016. — május ( 05 (209) szám ). - S. 22 .
  12. Vim Touch projekt a GitHubon
  13. Vim Scripts  . Hozzáférés időpontja: 2012. január 4. Az eredetiből archiválva : 2012. február 3.

Linkek