VIM

From ICO wiki
Revision as of 16:54, 27 November 2012 by Lmironov (talk | contribs)
Jump to navigationJump to search

Mis on VIM?

Vim on konfigureeritav tekstiredaktor, mille loojaks ja esmakordseks avaldajaks on Braam Moolenaar (aastal 1991). Selle eesmärgiks on võimaldada tõhusat teksti redigeerimist. Vim on täiustatud versioon VI redaktorist, mis käib kaasas enamike UNIX'i süsteemidega. Vim on kavandatud nii käsureal kasutamiseks kui ka eraldiseisva rakendusena - graafilise kasutajaliidesena. Vim on tasuta ja avatud lähtekoodiga tarkvara. Algselt oli Vim mõeldud Amiga personaalarvutitele, kuid nüüdseks on ta arendatud mitmeplatvormiliseks ja töötab ka mitmetel teistel platvormidel (Atari MiNT, BeOS, DOS, Microsoft Windows 95/98/Me/NT/2000/XP/Server 2003/Vista/Server 2008/7, IBM OS/2 and OS/390, MorphOS, OpenVMS, QNX, RISC OS, Unix, Linux, BSD, Mac OS). Vim'i nimetatakse tihtipeale programmeerijate redaktoriks, kuna see on programmeerimiseks väga kasulik ja üsna paljude jaoks on see lausa omaette IDE. Tegelikkuses ei ole Vim mõeldud vaid programmeerijatele. Vim'i on mugav kasutada igasugusteks teksti redigeerimisteks, e-kirjade loomisest kuni konfiguratsiooni failide muutmiseni, kuid samas tuleb meeles pidada, et tegemist ei ole tekstitöötlusprogrammiga. Vim'ist on ka Notepad'i-laadseid versioone - evim või Easy Vim, mida on väga lihtne konfigureerida. Vim on ühtlasi ka tööriist, mille kasutamist tuleb õppida. [1] Aastal 2006 hääletati Vim Linux Journal lugejate poolt kõige populaarsemaks redaktoriks. [2]

Vim'i eellugu

Bram Moolenaar alustas tööd Vim'i kallal aastal 1988 kui ta ostis endale Amiga personaalarvuti. Ta oli harjunud kasutama Unix'i redaktorit ja kuna Amiga jaoks puudus piisavalt hea Vi, siis hakkas ta täiustama parimat olemasolevatest - programmi nimega Stevie'i. Alguses oli Bram'i eesmärgiks imiteerida Vi'd. Pärast seda lisandusid Vi'le uued funktsioonid ja Vi IMitation'ist sai Vi IMproved. Nüüdseks on Vim pidevalt kasvanud ja sellest on saanud keeruline programm. Uute funktsioonide lisamiseks tuleb teha tunduvalt suuremaid jõupingutusi, kuid samas ootavad kasutajad püsivalt uusi vahendeid, millega Vim'i kasutamist ja selle võimalusi efektiivsemaks muuta. [3]

Liides

Nagu Vi liides, ei baseeru ka Vim'i 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 kasutatavatele käskudele, kuid täielik funktsionaalsus on siiski kättesaadav käsurealt. Vim'il on sisse-ehitatud õpetused algajatele, mis on kättesaadavad "vimtutor" käsuga. Veel on abiks ka Vim Users' Manual, mis täpsustab funktsioone ja on leitav Vim'ist ning Internetist. Vim'il on veel ka sisse-ehitatud abivahend, millele pääseb ligi ":help" käsuga, mis võimaldab kasutajal pärida ja navigeerda käskudes ja funktsioonides. [4]

Kohandamine

Vim'i suureks eeliseks on see, et teda saab laialdaselt kohandada. Põhiliidest on võimalik juhtida paljude olemasolevate valikute abil ja samas saab kasutaja defineerida personaliseeritud klahvivastendusi, mida tihtipeale nimetatakse makrodeks või lühenditeks, mis automatiseerivad klahvivajutusi, või isegi kutsuvad esile sisseehitatud või kasutaja poolt määratletud funktsioone. Saadaval on mitmeid pistikprogramme, mis laiendavad või lisavad Vim'ile uusi funktsioone. Need keerulised skriptid on tavaliselt kirjutatud Vim'i siseskriptimiskeeles vimscript'is. Vim toetab skriptimist kasutades Lua'd, Perl'i, Python'it, Racket'it, Ruby't ja Tcl'i. On projekte, mis panevad kokku keerukaid skripte ja kohandusi ning muudavad Vim'i tööriistaks, mis täidab mõnda kindlat ülesannet või muudavad suuresti Vim'i käitumist. Näiteks Cream, mis paneb Vim'i käituma kui "kliki ja kirjuta" redaktori.

Funktsioonid ja täiustused võrreldes Vi'ga

Vim'il on Vi ühilduvus töörežiim, kuid kui Vim pole parajasti eelnevalt mainitud režiimis, siis tal on Vi ees nii mõningaid eeliseid. Ometi ei ole Vim ka ühilduvus töörežiimis Vi'ga 100% ühilduv. Mõned Vim'i täiustustest: failide täiendamine, võrdlemine ja ühinemine (vimdiff), kõikehõlmav integreeritud abisüsteem, laiendatud väljendid, skriptimiskeeled (nii algupärased kui ka alternatiivsed interpretaatrid - Perl, Python, Ruby, Tcl jne), pistikprogrammide toetus, graafiline kasutajaliides (qvim), piiratud integreeritud arenduskeskkonna-laadsed funktsioonid, hiire kasutamine nii graafilise kasutajaliidesega kui ka ilma, pakitud või arhiveeritud gzip, bzip2, zip, tar failide muutmine ja toimetamine läbi SSH, FTP ja HTTP võrguprotokollide, sessiooniolekute säilitamine, õigekirja kontrollimine, unicode ja mitmekeelsuse toetus, süntaksi esile tõstmine, otsing, kursori positsioonide ajalugu, mitmetasandiline undo/redo ajalugu, mis võib püsida ka sessioonide muutudes ja visuaalne töörežiim.[5]

Vim'i kasutamine

Käivitamine

Lihtsamad käivitamiskäsud:

  • vim - käivita redaktor tühja puhvriga
  • vim minufail.txt - käivita redaktor ja ava või loo (kui faili pole varem loodud, luuakse automaatselt uus) fail nimega minufail.txt
  • vim minufail1.txt minufail2.txt minufail3.txt - käivitatakse redaktor ja avatakse või luuakse kõik failid nimedega minufail1.txt, minufail2.txt, minufail3.txt, vaikimisi näidatakse esimesena minufail1.txt'd

Töörežiimid

Vim'il on kolm erinevat töörežiimi:

  • käsu töörežiim (command mode) - kõik klahvivajutused tõlgendatakse käskudena
  • sisestus töörežiim (insert mode) - enamus klahvivajutustest sisestatakse tekstina
  • visuaalne töörežiim (visual mode) - aitab visuaalselt teksti valida ja on ühtlasi käsu töörežiimi alamrežiim

Sisestus ja visuaalsest režiimist käsurežiimi liikumiseks tuleb klaviatuuril vajutada "ESC" klahvi.

Käsu töörežiimist sisestusrežiimi:

  • i - lülita sisestusrežiimi enne praegust positsiooni
  • a - lülita sisestusrežiimi pärast praegust positsiooni (lisama)
  • I - hüppa esimesele mittetühjale tähemärgile sellel real ja lülita sisestusrežiimile
  • A - hüppa viimasele tähemärgile sellel real ja lülita sisestusrežiimile

Käsu töörežiimist visuaalrežiimi:

  • v - lülita visuaalrežiimi (tähemärgile orienteeritud)
  • V - lülita visuaalrežiimi (reale orienteeritud)
  • CTRL-v - lülita plokkvisuaalrežiimi (vali tekst ristkülikutena)

Liikumine

Kõige lihtsamad liikumiskäsud:

  • h - liigu vasakule
  • l - liigu paremale
  • j - liigu üles
  • k - liigu alla

Need käsud töötavad vaid käsurežiimis, kuid kõigis kolmes režiimis võib kursori liigutamiseks kasutada ka nooleklahve (aeglasem variant).

Viited

Liis Mironova A22 05.11.2012