Erinevus lehekülje "VIM" redaktsioonide vahel
20. rida: | 20. rida: | ||
== Õppimine == | == Õppimine == | ||
− | Uuele kasutajale võib Vim näida ülemõistuse käiv. Näiteks, et teksti sisestada tuleb kõige pealt liikuda Insert Modesse ´Insert´ Või ´I´ nupuga. Salvestamiseks tuleks aga trükkida ´:w´, ning programmist lahkumiseks ´:q´. | + | Uuele kasutajale võib Vim näida ülemõistuse käiv. Näiteks, et teksti sisestada tuleb kõige pealt liikuda ''Insert Modesse'' ´Insert´ Või ´I´ nupuga. Salvestamiseks tuleks aga trükkida ´:w´, ning programmist lahkumiseks ´:q´. |
Põhilisemad asjad on võimalik kiiresti ära õppida käsurealt käivitades programmi '''vimtutor'''. | Põhilisemad asjad on võimalik kiiresti ära õppida käsurealt käivitades programmi '''vimtutor'''. | ||
26. rida: | 26. rida: | ||
== Konfigueerimine == | == Konfigueerimine == | ||
− | Vim-i saab | + | Vim-i saab konfigureerida meeletult. Peaaegu iga asi on muudetav. Kõik selleks, et lihtsustada ja kiirendada kirjutamist. Eriti kasutatakse neid võimalusi programmeerimisel. |
− | Näiteks põhilisemad asjad mida võiks ~/.vimrc faili sisse kirjutada. Need käivituvad seal automaatselt kui vim käivitada. | + | Näiteks põhilisemad asjad, mida võiks ~/.vimrc faili sisse kirjutada. Need käivituvad seal automaatselt kui vim käivitada. |
set nocompatible | set nocompatible | ||
48. rida: | 48. rida: | ||
set confirm "annab teate ülekirjutamisel, readonly faili muutmisel jne | set confirm "annab teate ülekirjutamisel, readonly faili muutmisel jne | ||
set pastetoggle=<F11> "F11 klahvile vajutamisel Insert Modes minnakse Paste Modele, | set pastetoggle=<F11> "F11 klahvile vajutamisel Insert Modes minnakse Paste Modele, | ||
− | + | "mis tähendab, et millega kleepimisel ei kasutata automaatset <tab> süsteemi. | |
Juhul kui otsite abi mõne käskluse kohta siis trükkida vimi käsureale :help käsunimi. Nii antakse teile põhjalik info selle käsu kohta. | Juhul kui otsite abi mõne käskluse kohta siis trükkida vimi käsureale :help käsunimi. Nii antakse teile põhjalik info selle käsu kohta. | ||
58. rida: | 58. rida: | ||
# [http://www.vim.org/scripts/script.php?script_id=1318 SnippetsEmu] - Mingi kindla lühendi kirjutamisel ning Tabi vajutamisel ilmub selle asemele määratud tekst. Snippeteid on automaatselt kaasas üle 30 programeerimiskeelele. Samuti on väga lihtne neid ise juurde kirjutada. | # [http://www.vim.org/scripts/script.php?script_id=1318 SnippetsEmu] - Mingi kindla lühendi kirjutamisel ning Tabi vajutamisel ilmub selle asemele määratud tekst. Snippeteid on automaatselt kaasas üle 30 programeerimiskeelele. Samuti on väga lihtne neid ise juurde kirjutada. | ||
# [http://www.vim.org/scripts/script.php?script_id=1567 Rails.vim] - Ruby on Railsi programeerijatele, mis annab hulgaliselt uusi võimalusi. | # [http://www.vim.org/scripts/script.php?script_id=1567 Rails.vim] - Ruby on Railsi programeerijatele, mis annab hulgaliselt uusi võimalusi. | ||
− | |||
== Trikke == | == Trikke == | ||
64. rida: | 63. rida: | ||
Allikas: [http://wiki.linux.ee wiki.linux.ee] | Allikas: [http://wiki.linux.ee wiki.linux.ee] | ||
− | Vajutades normal modes klahvi "*" otsitakse järgnevast tekstist kursori all olevat sõna ja viiakse kursor sellele. Näiteks | + | Vajutades ''normal modes'' klahvi "*" otsitakse järgnevast tekstist kursori all olevat sõna ja viiakse kursor sellele. Näiteks |
foo = 10 | foo = 10 | ||
76. rida: | 75. rida: | ||
Teksti saab leida ka järgnevalt: | Teksti saab leida ka järgnevalt: | ||
− | Vajutada '/' märki, kirjutada otsingustring, vajutada enter. Näiteks: | + | Vajutada '/' märki, kirjutada otsingustring, vajutada ''enter''. Näiteks: |
/karu | /karu | ||
82. rida: | 81. rida: | ||
Tekstis otsitakse kõik 'karu' sisaldavad kohad. Otsing toimub regulaaravaldistes. | Tekstis otsitakse kõik 'karu' sisaldavad kohad. Otsing toimub regulaaravaldistes. | ||
− | Kui on kiiresti teksti vaja asendada siis saab selleks kasutada | + | Kui on kiiresti teksti vaja asendada, siis saab selleks kasutada ''substitute'' käsku, ehk lühendina käsureal ':s' Näiteks: |
:s/aaa/bbb/g | :s/aaa/bbb/g | ||
− | asendab real kõik 'aaa'-d 'bbb'-dega. '/g' lõpus näitab et asendada tuleb kõik leitud otsingutulemused, mitte ainult esimene. Asendamine toimub regulaaravaldistega ning on suuresti sarnane Perlis kasutatavale süntaksile. | + | asendab real kõik 'aaa'-d 'bbb'-dega. '/g' ehk ''global'' lõpus näitab, et asendada tuleb kõik leitud otsingutulemused, mitte ainult esimene. Asendamine toimub regulaaravaldistega ning on suuresti sarnane Perlis kasutatavale süntaksile. |
− | Kui on vaja ette anda teatud vahemikku siis kogu faili puhul saab kasutada järgnevat: | + | Kui on vaja ette anda teatud vahemikku, siis kogu faili puhul saab kasutada järgnevat: |
− | %s/aaa/bbb/g | + | :%s/aaa/bbb/g |
mis asendab kogu failis/buffris 'aaa'-d 'bbb'-dega. | mis asendab kogu failis/buffris 'aaa'-d 'bbb'-dega. | ||
+ | Kui on näiteks vaja teksti muuta jooksval ja viiel järgneval real: | ||
+ | |||
+ | :.,+5s/aaa/bbb/g | ||
Käskudega :set wrap ja :set nowrap saab valida, et kas pikad read murtakse ära või jäetakse osa ekraani serva taha | Käskudega :set wrap ja :set nowrap saab valida, et kas pikad read murtakse ära või jäetakse osa ekraani serva taha |
Redaktsioon: 20. veebruar 2008, kell 20:48
![]() | |
| |
Tüüp: | Tekstiredaktor |
Arendaja: | |
Litsents: | GPL |
Viimane versioon: | 7.1 12-05-2007 |
Staatus: | aktiivne |
Eesti keel: | {{{eesti_keel}}} |
Koduleht: | www.vim.org |
Foorum: |
VIM - Vi IMproved on tekstiredaktor, mis on edasiarendatud versioon programmist Vi. See on avatud lähtekoodiga ning mitte platvorm spetsiifiline.
Sisukord
[peida]Õppimine
Uuele kasutajale võib Vim näida ülemõistuse käiv. Näiteks, et teksti sisestada tuleb kõige pealt liikuda Insert Modesse ´Insert´ Või ´I´ nupuga. Salvestamiseks tuleks aga trükkida ´:w´, ning programmist lahkumiseks ´:q´.
Põhilisemad asjad on võimalik kiiresti ära õppida käsurealt käivitades programmi vimtutor. Tuleks leppida sellega, et vimi ei saa kunagi lihtsalt lugedes selgeks. Kõik tuleb kirjutamise ja töö käigus.
Konfigueerimine
Vim-i saab konfigureerida meeletult. Peaaegu iga asi on muudetav. Kõik selleks, et lihtsustada ja kiirendada kirjutamist. Eriti kasutatakse neid võimalusi programmeerimisel.
Näiteks põhilisemad asjad, mida võiks ~/.vimrc faili sisse kirjutada. Need käivituvad seal automaatselt kui vim käivitada.
set nocompatible set history=50 "ajalugu käsklustel set nobk "ei tee backup faili ülekirjutamisel set ttyfast "osadel terminalidel teeb töö kiiremaks set smarttab "smart tab set title "ilus terminali tiitel set splitbelow "juhul kui teise faili, siis see läheb praeguse alla set shiftround "< ja > nupud teksti liigutamiseks set shiftwidth=2 "tabi pikkus tühikutes set smartindent "automaatsed tabid minnes järgmisele reale set softtabstop=2 "tühikud tabide asemel set tabstop=2 "number of spaces that a <Tab> in the file counts for set modeline set ruler "rea ja veeru asukoht filetype on "failitüübi otsimine syntax on "värvid koodile set confirm "annab teate ülekirjutamisel, readonly faili muutmisel jne set pastetoggle=<F11> "F11 klahvile vajutamisel Insert Modes minnakse Paste Modele, "mis tähendab, et millega kleepimisel ei kasutata automaatset <tab> süsteemi.
Juhul kui otsite abi mõne käskluse kohta siis trükkida vimi käsureale :help käsunimi. Nii antakse teile põhjalik info selle käsu kohta.
Skriptid
Töö lihtsustamiseks ja abistamiseks on loodud hulganisti skripte. Vim Scripts.
Ära tasuks mainida sellised skriptid:
- SnippetsEmu - Mingi kindla lühendi kirjutamisel ning Tabi vajutamisel ilmub selle asemele määratud tekst. Snippeteid on automaatselt kaasas üle 30 programeerimiskeelele. Samuti on väga lihtne neid ise juurde kirjutada.
- Rails.vim - Ruby on Railsi programeerijatele, mis annab hulgaliselt uusi võimalusi.
Trikke
Allikas: wiki.linux.ee
Vajutades normal modes klahvi "*" otsitakse järgnevast tekstist kursori all olevat sõna ja viiakse kursor sellele. Näiteks
foo = 10 /* 99 rida koodi */ bar = foo
Kui nüüd kursor on esimesel real ja vajutatakse "*", siis liigub kursor reale bar = foo. Kui otsimisega jõutakse faili lõppu, siis alustatakse seda algusest uuesti. "#" teeb samasugust otsingut vastassuunas, s.t. kursori all olevat sõna otsitakse kursorile eelnevast tekstist.
Teksti saab leida ka järgnevalt:
Vajutada '/' märki, kirjutada otsingustring, vajutada enter. Näiteks:
/karu
Tekstis otsitakse kõik 'karu' sisaldavad kohad. Otsing toimub regulaaravaldistes.
Kui on kiiresti teksti vaja asendada, siis saab selleks kasutada substitute käsku, ehk lühendina käsureal ':s' Näiteks:
:s/aaa/bbb/g
asendab real kõik 'aaa'-d 'bbb'-dega. '/g' ehk global lõpus näitab, et asendada tuleb kõik leitud otsingutulemused, mitte ainult esimene. Asendamine toimub regulaaravaldistega ning on suuresti sarnane Perlis kasutatavale süntaksile.
Kui on vaja ette anda teatud vahemikku, siis kogu faili puhul saab kasutada järgnevat:
:%s/aaa/bbb/g
mis asendab kogu failis/buffris 'aaa'-d 'bbb'-dega. Kui on näiteks vaja teksti muuta jooksval ja viiel järgneval real:
:.,+5s/aaa/bbb/g
Käskudega :set wrap ja :set nowrap saab valida, et kas pikad read murtakse ära või jäetakse osa ekraani serva taha
Uuemad vim-i versioonid ei näita dos-i faile redigeerides enam rea lõppu ^M-i, vaid fail avatakse dos-formaadis. Sellegipoolest mõned teised tekstiredaktorid näitavad sama faili iga rea lõppu endiselt ^M-i. Et nendest ^M-idest lahti saada, tuleb kirjutada
:set fileformat=unix