Vim

Vim on tekstiredaktor, mille andis esmakordselt välja Bram Moolenaar 1991. aastal Amiga arvutitele. "Vim" on esitähtlühend nimest "Vi IMproved", sest Vim loodi laiendatud versioonina vi tekstiredaktorist koos lisavõimalustega, mis on mõeldud olema abiks programmide lähtekoodi redigeerimisel.

Kuigi Vim on mitmeplatvormiline, on see populaarseim UNIXi-laadsetes operatsioonisüsteemides.

Vim on vaba ja avatud lähtekoodiga tarkvara, kuna see on välja antud GNU üldise avaliku litsentsiga ühilduva tarkvaralitsentsi all. Programmi litsents sisaldab mõningaid annetusvara tingimusi.

Liides
pisi|left|Vim terminaliemulaatoris
Samuti nagu vi liides, ei põhine ka Vimi liides menüüdel või ikoonidel, vaid tekstipõhisesse kasutajaliidesesse sisestatud käskudel; selle graafiline liides, gVim, lisab menüüd ja tööriistaribad kõige sagedamini kasutatud käskudele, kuid täielik funktsionaalsus on siiski kättesaadav läbi käsurea.

Tihti edeneb Vimi õppimine alguses aeglaselt, kuid kui põhimõtted on selged, siis kulgeb õpe kiiresti. Et õppimist hõlbustada, sisaldab Vim algajatele mõeldud õpetust. Algelisi ja keerukamaid toiminguid seletab Vim Users' Manual, mida saab lugeda kas läbi Vimi enda või internetist.

Käskude ja võimaluste päringuteks sisaldab Vim abivahendit, millele saab ligi :help käsuga.

Redigeerimine režiimides
Olles vi järeltulija, on Vim režiimne – disainivalik, mis kipub uutes kasutajates segadust põhjustama. Selles mõttes on kõik tekstiredigeerimisprogrammid režiimsed, et need eristavad sisestus- ja käsusisendeid, kuid enamikus saavutatakse see sootuks teistviisi: käsud menüüdes (hiire või klaviatuuriga juhitavad), metaklahvid (samaaegne mitme klahvi kasutamine, tavaliselt koos Control (CTRL)- või Alt (ALT)-klahviga) ning osutusseadme sisend. Vim, sammudes vi radades, on ainulaadne, kuna tervet klaviatuuri lülitatakse nende režiimide vahel. Tänu sellele on võimalik kõiki redigeerimisfunktsioone sooritada kasutamata osutusseadet või menüüsid, ning vähima arvu metaklahvidega. Pimesüsteemis kirjutajatele ja hiire suhtes vastumeelsetele võib see jõudluses ja tõhususes olla suureks eeliseks.

Kohandamine
Osa Vimi võimsusest tuleneb laialdastest kohandamisvõimalustest. Põhiliidest saab juhtida paljude saadaolevate valikute abil, ning kasutaja saab määratleda isikupäraseid klahvijärjendeid – sageli nimetatakse neid makrodeks – ehk lühendeid, mis automatiseerivad klahvivajutuste järjendeid, või isegi kutsuvad esile sisseehitatud või kasutaja poolt määratletud <to /> funktsioone.

Vimscript
On palju laiendusi (pluginaid), mis laiendavad või lisavad Vimi funktsioone. Neid keerukaid skripte kirjutatakse tavaliselt Vimi sisseehitatud skriptimiskeele vimscript abil. Vim toetab skriptimist ka teiste programmeerimiskeeltega, nagu MzScheme, Perl, Python, Ruby, Tcl jt.

Komplektid
On projekte, mis komplekteerivad keerukaid skripte ja kohandusi, mis on mõeldud tegemaks Vimist spetsialiseerinud töövahendi või muutmaks oluliselt selle käitumisviisi. Näitena võib tuua Creami, mis muudab Vimi käitumise klõpsa-ja-kirjuta laadi redaktorprogrammi sarnaseks, või VimOutliner, mis annab UNIXi-laadsete arvutite kasutajatele mugava liigitusprogrammi.

Võimalused ja vi täiendused
Ühilduvusrežiimis on Vim peaaegu täielikult vi'ga ühilduv, kuid Vim sisaldab vi täiendusi, mis võivad, kuid ei pruugi ühilduvusrežiimis saada olla.

Mõned nendest täiendustest on lõpetamine, võrdlemine, failide sulatamine (tuntud kui vimdiff), sügavuti sisseehitatud abisüsteem, laiendatud regulaaravaldised; skriptimiskeeled (nii oma-, kui ka alternatiivsed skriptimisinterpretaatorid, nagu Perl, Python, Ruby, Tcl, jms), sealhulgas laiendprogrammide toetus; graafiline kasutajaliides (tuntud kui gvim), piiratud integreeritud arenduskeskkonna võimalused, hiire kasutamine (nii graafilise liidesega, kui ka ilma), reapeitmine; GZIP-, BZIP2-, ZIP- ja TAR-vormingus tihendatud või arhiveeritud failide redigeerimine; läbi võrguprotokollide, nagu SSH-, FTP- ja HTTP-failide redigeerimine; seansiolekute säilitamine, õigekirjakontroll, lõhestamine (põikne ja püstne) ja (vahe)kaartides aknad, Unicode'i ja mitme muu märgistiku tugi, süntaksi esiletõstmine, seansiülesed käsud, regulaaravaldistega tekstiotsing ja asendamine, kursori asukohtade ajalugu, mitmetasandiline tegevuste tagasivõtmine ja uuestitegemine ning visuaalne režiim.

Kuigi vi oli algselt saadaval vaid UNIXi operatsioonisüsteemidele, on Vim väga laialdaselt porditav. Programmi versioone on järgmistele süsteemidele: AmigaOS (algne platvorm), UNIX, Linux, BSD, Mac OS ja Mac OS X, Android (pakett Vim Touch), MS-DOS, Microsoft Windows 9x (95/98/Me) ja Windows NT-põhised süsteemid (NT/2000/XP/Server 2003/Vista/Server 2008/7 ja uuemad); IBM OS/390 ja OS/2; lisaks Atari, MiNT, BeOS, MorphOS, OpenVMS, QNX, RISC OS, jpt.

Ajalugu
 Kuupäev Versioon Muudatused ja täiendused 1988  1.0  Steviel põhinev tekstiredaktor Amigale Vi IMitation; ei ole avalikult välja kuulutatud 2. november 1991  1.14 Esimene avalik väljalase Amigale Fred Fishi disketil #591 1992  1.22  Porditud Unixile. Vim konkureerib nüüd vi'ga. Vimist sai Vi IMproved 12. august 1994  3.0  Mitme akna toetus 29. mai 1996  4.0  Graafiline kasutajaliides 19. veebruar 1998  5.0 Süntaksi esiletõstmine, algeline skriptimine (kasutaja määratletud funktsioonid, käsud, jms) 6. aprill 1998  5.1  Veaparandused, täiustused 27. aprill 1998  5.2  Pikkade ridade toetus, failibrauser, dialoogid, hüpikmenüü, märgistusrežiim, seansside failid, kasutajate määratletud funktsioonid ja käsud, tcl-liides jms 31. august 1998  5.3  Veaparandused jms 25. juuli 1999  5.4  Algeline failide krüpteerimine, täiustused 19. september 1999  5.5  Veaparandused, täiustused 16. jaanuar 2000  5.6  Uued süntaksifailid, veaparandused jms 24. juuni 2000  5.7  idem 31. mai 2001  5.8  idem 26. september 2001  6.0 Reapeitmine, lisandprogrammid, mitmed keeled jms 24. märts 2002  6.1  Veaparandused 1. juuni 2003  6.2  GTK2, araabia keelte toetus, :try käsk, pisivõimalused, veaparandused 7. juuni 2004  6.3  Veaparandused, tõlgete uuendused, märgistamise parandused 15. oktoober 2005  6.4  Veaparandused, Perli, Pythoni ja Ruby toetuse uuendused 7. mai 2006  7.0 Õigekirjakontroll, automaatne koodi lõpetamine, dokumentide kaardid, käesoleva rea ja veeru esiletõstmine, tagasivõtmise harud ja rohkem 12. mai 2007  7.1  Veaparandused, uued süntaksi- ja käitusaja failid, jms 9. august 2008  7.2 Ujukomade toetus skriptides, uuesti tehtud ekraanile joonistamise kood, veaparandused, uued süntaksifailid jms 

(Märkus. Mõned kuupäevad on umbkaudsed, arendusväljalaskeid ei ole loetletud ning mitut pisiväljalaset pole siia loendisse kantud.)

Viited

Välislingid

Kategooria:Vaba tarkvara
Kategooria:Tekstiredaktorid