Prehlad prikazov editora "vi" pod Operacnym systemom "UNIX". Prikazy pre vyvolanie editora: vi subor start editora od 1. riadku vi +n subor start editora od n-teho riadku vi + subor start editora od posledneho riadku vi +/retazec subor start editora od 1. vyskytu retazca vi -r subor obnovi subor po havarii systemu Prikazy pre pohyb kurzora po obrazovke: h, o jeden znak vlavo l, o jeden znak vpravo j, o jeden znak dole k, o jeden znak hore o jeden znak vpravo o jeden riadok dole w, W na zaciatok nasledujuceho slova b, B na zaciatok predchadzajuceho slova e, E na koniec nasledujuceho slova , H do praveho horneho rohu obrazovky M na zaciatok prostredneho riadku obrazovky L na zaciatok posledneho riadku obrazovky [cislo_riadku]G na zaciatok riadku daneho cisla, bez argumentu na koniec suboru 0 na zaciatok riadku $ na koniec riadku ( na zaciatok predchadzajucej vety ) na zaciatok nasledujucej vety { na zaciatok predchadzajuceho odstavca } na zaciatok nasledujuceho odstavca Prikazy pre pracu s obrazovkou: Ctrl-D posun o pol obrazovky smerom vpred Ctrl-U posun o pol obrazovky smerom vzad Ctrl-F posun o jednu obrazovku smerom vpred Ctrl-B posun o jednu obrazovku smerom vzad Ctrl-L obnovenie obsahu obrazovky, pouziva sa pre vymazanie systemovych hlaseni Ctrl-G zobrazi sa status editora na tzv. "status line", (meno suboru, cislo riadku, na ktorom je umiestneny kurzor + percentualne zobrazenie) Prikazy pre vkladanie textu do suboru: i[text]ESC vlozi text pred aktualnu poziciu kurzora I[text]ESC vlozi text pred prvy znak na aktualnom riadku a[text]ESC pripoji text za aktualnu poziciu kurzora A[text]ESC pripoji text za posledny znak na aktualnom riadku o[text]ESC otvori novy riadok pod aktualnym riadkom a vlozi text od zaciatku O[text]ESC otvori novy riadok nad aktualnym riadkom a vlozi text od zaciatku r[znak] nahradi prave jeden znak na aktualnej pozicii kurzora R[text]ESC prepise znaky suboru retazcom text Prikazy pre mazanie textu v subore: x, X vymaze jeden znak na resp. pred aktualnou poziciou kurzora dw, dW vymaze jedno slovo / neberie resp. berie do uvahy znaky .,:;<>/{}[] / D, d$ vymaze obsah riadku od pozicie kurzora do konca riadku 3dw, 3dd vymaze tri slova, resp. vety Prikaky pre nahradzovanie textu: cwtextESC, cWtextESC nahradi jedno slovo suboru cctextESC nahradi skupinu slov od pozicie kurzora do konca riadku 3cwtextESC nahradi tri slova suboru 3cctextESC nahradi tri riadky suboru Prikazy pre hladanie retazca v subore: /text, ?text vyhlada nasledujuci resp. predchadzajuci vyskyt retazca text /^text, /$text vyhlada nasledujuci riadok zacinajuci resp. konciaci retazcom text /[pP]okus vyhlada nasledujuci vyskyt slov pokus alebo Pokus n, N opakuje naposledy zadane hladanie v rovnakom resp. opacnom smere Prikazy pre nahradzovanie textu v subore: :s/text1/text2 nahradi jeden vyskyt retazca text1 retazcom text2 na aktualnom riadku :s/text1/text2/g nahradi vsetky vyskyty retazca text1 retazcom text2 na aktualnom riadku :4,8 s/text1/text2/g nahradi vsetky vyskyty retazca text1 retazcom text2 od aktualneho 4. riadku do 8. riadku :1,$ s/text1/text2/g nahradi vsetky vyskyty retazca text1 retazcom text2 v celom subore Rozne prikazy editora: u rusi posledny prikaz vkladania, alebo vymazania U obnovi aktualny riadok v stave pred editaciou J za aktualny riadok pripoji nasledujuci riadok Y, 4Y zkopiruje jeden, resp. 4 riadky suboru do buffer-a p, P zkopiruje obsah buffer-a za resp. pred aktualny riadok . opakuje posledny editacny prikaz Specialne znaky editora: ^ zaciatok riadku $ koniec riadku . prave jeden znak [] mnozina znakov [abcde] mnozina znakov a, b, c, d, e [a-z] vsetky male pismena Vyskocenie z editora: :w ulozenie obsahu suboru :x, :wq, ZZ ulozenie obsahu suboru opustenie editora :q opustenie editora :q! opustenie editora bez ulozenia zmien :! prikaz vykona prikaz operacneho systemu :!! zopakuje naposledy vykonany prikaz systemu po prikaze :! prikaz :sh opustenie editora, ktore umoznuje vykonavat prikazy operacneho systemu, navrat do editora cez prikaz exit alebo Ctrl-d :e! subor1 edituje subor1, aktualny subor opusti bez ulozenia zmien Nastavenie volieb editora: all vypise zoznam vsetkych volieb ignorecase nerozlisuje rozdiel medzi velkymi a malymi pismenami pri vyhladavani list zobrazi tabulatory a end-of-line znaky mesg umozni prijimanie sprav na obrazovku nomagic umozni vkladanie specialnych znakov do vyhladavacich retazcov bez predchadzajuceho opacneho lomitka nowrapscan hladanie retazcov je ukoncene zaciatkom alebo koncom suboru (nedochadza k "pretacaniu" suboru) number ocislovanie riadkov suboru report vypise cisla zmenenych riadkov suboru tabstop nastavi tabulatorove pozicie term nastavi typ terminalu warn vypise "no write" hlasku pred ukoncenim editora wrapmargin nastavi pravy okraj obrazovky smerom zprava :set number nastavi cislovanie riadkov suboru .exrc nastavovaci subor pre editor Postup pri kopirovani bloku v subore a medzi subormi: Pre kopirovanie bloku medzi subormi sa vyhodne da vyuzit tzv. pomenovaneho buffer-u. a) Ulozte obsahu suboru na disk prikazom :w b) Prikazom :e meno_suboru nacitajte do editora subor, z ktoreho chcete zkopirovat prislusny blok c) Presunte kurzor na 1. riadok bloku, ktory chcete zkopirovat d) Zadajte prikaz mk . Tim oznacite 1. riadok textu urceneho na zkopirovanie pismenom "k" e) Presunte kurzor na posledny riadok vybraneho bloku f) Zadajte "ay'k . Tym ulozite riadky suboru od znacky "k" az ku pozicii kurzoru do buffer-u a. V tomto buffer-i riadky ostanu dokial ich nenahradite inymi alebo neopustite editor g) Zadajte :e# pre navrat do povodneho suboru. Presunte kurzor na riadok nad miestom, kde chcete blok ulozit. h)Zadajte "ap . Prikaz ulozi riadky z buffer-u a do suboru, pricom obsah buffer-u zostane povodny a moze sa pouzit pre dalsie kopirovanie. Prikaz na kopirovanie riadkov vo vnutri suboru: :3,4 co 1 zkopiruje riadky c. 3 a 4 za riadok c. 1. .