$dat=GetDate(); $stat=fopen("../clanky.log","a+"); fputs($stat,$dat["mday"].".".$dat["mon"].". Editor VI\n"); fclose($stat); ?>
Editor
VI
[ J. Janec ]
Pri praci s roznymi operacnimi systemami budete musiet obcas nieco nastavit,
alebo si precitat nejaku dokumentaciu.pripadne si napisat niejaku
poznamku,pripadne list, alebo program.
Aby ste tak mohli urobit ,potrebujete textovy editor. Pouzivaju sa rozne
typy ,ale sa najde len par editorov, ktore su velkostou male,jednoduche,
podporuju programovnie v jednotlivych jazykoch, tvorbu html stranok.
Zo zaciatku sa sice bude zdat ze jednotlive prikazy nedavaju zmysel, a dalej
sa mozno nebudu dat pochopit tri rezimi ovladania editoru vi/vim.
Prva verzia ktora bol na svete je vi. Tato bola postupne zdokonalovana a
teraz ma oznacenie vim. Existuje aj graficka verzia pod windows a ta ma
oznacenie gvim.
Spustenie editoru:
Dolezitou vecou je spustenie editoru. Editor mozeme spustit z prikazovej
riadky pomocou prikazu vim ( pri starsich verziach pomocou vi).
Pri spustani mozeme hned zadat ktore subori ma editorovat(syntax
prikazoveho riadku):
vi subor (vim subor)
vi +n subor (vim +n subor)
vi +/vzorka subor (vim +/vzorka subor)
Pri spustani pod windowsom mozeme vi/vim spustit kliknutim na ikonu,
ak chceme editovat subor staci ho mysou potiahnut na ikonu editoru a ten
danny subor otvori.
Dalsou dolezitou castou je vypnutie editoru:
Zial musim vas sklamat , ale ani opustenie editoru nie je ako u ostatnych
editorov ako nap. typu ESC, F10, alebo Alt+X, i ked pri spusteni verzie g vim staci mysou kliknut do rohu a zatvorit editor ako typicku aplikciu pod
windowsom, co urcite vsetci viete. Ale pri ostatnych verziach editoru
vi/vim.
sa ukoncenie robi v jednom uz spominanom rezime. Postup je nasledovny:
1. stlacime ESC
2. stlacime :
3. a do otvoreneho prikazoveho riadku napiseme :q
Jednoduche ,prevazne vela prikazov sa zacina zaciatocnym pismenom.
Ale pozor. Tento postup nepomoze ak ste v otvorenom subore urobili zmeny.
Samozrejme, ked nefunguje tento sposob existuje dalsi.
Zatvorenie editoru a ulozenie zmen v subore:
1. opat stlacime ESC
2. stlacime :
3. napiseme :wq
mozete si lahko domysliet, co znamena w pred q. Pre tych co by to nevedeli
znamena write ,cize zapis.
Samozrejme existuje este jeden sposob:
1. ESC
2. a stlacte dvakrat Z(velke, nezabudnite na to, inac sa ukoncenia a
nedockate )
Sposob zatvorenia editoru bez ulozenia editorovaneho suboru:
1. ESC
2. :
3. :q! (ukonci program bez zapisania zmien)
Ovladanie editora vi/vim/gvim:
Ako som uz na zaciatku naznacil, v editore rozlisujeme tri rezimi:
- normalny(klavesy znamenaju prikaz)
- vkladaci(sluzi na pisanie textu do suboru)
- rezim ex(da sa povedat ze je to skor prikazovy riadok, s : na zaciatku)
Normalni rezim:
V tomto rezime sa ocitnete, ked sa editor spusti. Tento rezim sluzi
na pracu s textom.
K jednotlivym klavesniciam su priradene jednotlive prikazy.
Do tohto rezimu sa mozete dostat z ostatnych rezimov pomocou
klavesy ESC.
Vkladaci rezim:
V tomto rezime piseme nas text, prip. program, a pod.
Ak chceme tento rezim spusit, stlacime v normalnom rezime
jednu s tychto klaves:
a - znaky sa budu pisat za znak, na ktorom je kurzor
i - znaky sa zacnu pisat pred znak, na ktorom je kurzor(insert)
A - kurzor preskoci za posledne slovo, v aktualnom riadku
I - kurzor skoci na zaciatok aktualneho riadku
o - vytvori prazny riadok pod aktualnym riadkom
O - vytvori prazny riadok nad aktualnym riadkom
R - dostaneme sa do rezimu, kedy novy text prepisuje stary
Vkladaci rezim opustime stlacenim ESC a dostaneme sa opet do
normalneho rezimu.
Rezim ex:
Do tohto rezimu sa z normalneho rezimu dostaneme pomocou stlacenia
:(dvojbodky, a hlavne nezabudnut na to aku klavesnicu mate
nastavenu, aby ste sa zbytocne netrapili s tym preco vam to nefunguje)
Tento rezim je jednorazovy, po vykonani prikazu sa vrati spat do
normalneho rezimu. Ak by sme si rozmysleli pouzit prikaz, staci
stlacit ESC, a ocitneme sa v normalnom rezime.
Ak by ste v nasledujucich odstavcoch mali problemi s tym, ktory prikaz do
ktoreho rezimu patri, treba si vsimat to, ci je na zaciatku dvojbodka(:),
alebo nie. Ak tam je, prikaz patri do rezimu ex, ak nie tak do normalneho
rezimu.
Prve prikazy ktore vam vysvetlim su prikazy pre pohyb po texte. Urcite
sa vam uz stalo, ze sa potrebujete dostat na koniec odstavca a ten je
v nedohladnu. V normalnom rezime stlacite }. Ak sa chcete dostat na za-
citok pouzijete opacu {,pomocou obycajnych zatvoriek sa mozete pohybovat
po vetach => (= zacitok vety, )= koniec vety.Pre [] plati pohyb zaciatok
a koniec suboru (musite stalcit dvakrat).
V texte sa samozrejme mozete pohybovat pomocou sipiek. Ak by tie
nefungovali, mozete pouzit v normalnom rezime klavesnice
sipka nahor = k
sipka nadol = j
sipka do prava = l
sipka do lava = h
Dalsi pohybje nie po riadkoch, ale po obrazovkach. A to uz znamimi
PageDown a PageUp.Ties sa to d pokocou kombinacie klaves Ctrl-f
smerom dole, a Ctrl-b smerom hore(tieto kombinacie klaves funguju
rezime normal).
Pre tych co programuju sa zide prikaz % ktory kontroluje ukaze druhu parovu konstrunkciu.Plati to pre zatvorky (...),[...],{...}, tiez pre prikazy
riadiace preklad nap. #if ,#ifdef.
Operacie s v kladanim a mazanim textu:
Vsetky tieto operacie sa robia v normalnom rezime. Ak chceme mazat text
pouzijeme klavesu x. Ak chceme zmazat vacsie mnozstvo znakov pouzijeme
napr. 20x = zmaze dvadsat znakov. Ak chceme tychto 20 znakov vlozit
naspat, umiestnime kurzor na znak, za ktory chceme vlozit vymazane
znaky, a stlacime klavesu p.
Na podobnu operaciu mozeme pouzit aj prikaz dd. Tento ulozi cely riadok
do pamate a pomocou prikazu p vlozi za aktualny riadok(na ktorom je
kurzor). Ale mi samozrejme chceme aj kopirovat, a to mozeme pouzit prikaz
yy, ktory kopiruje do pamete cely riadok, ktory opet dostaneme naspet
pomocou prikazu p.Dalej mozeme tiez pouzit kombinacie: 20 dd,alebo 20 yy.
Hladanie znaku pripadne retazca:
Ak vas zaujima nejaky znak, skor castejsie poznam pripady kedy potrebujem
najst nejaky retazec(slovo).
Na taketo vyhladavanie pouzijeme prikaz / = vyhladavanie v smere textu
a na vyhladavanie v protismere pouzijeme prikaz ? ,za tieto prikazy
napiseme hladany retazec, alebo znak. Samozrejme tieto prikazy pouzijeme
v rezime normal.
Doplnovanie textu:
Ak mame nejaky dlhy retazec,a nechce sa nam ho opat pisat, mozeme pouzit
automaticke doplnovanie pomocou kombinacie klaves:CTRL+P,CTRL+N.
Kombinacia CTRL+N pokracuje od aktualnej pozicie na koniec riadku a hlada
retazec s rovnakym zaciakom. Kombinacia CTRL+P hlada retazec smerom na
na zaciatok suboru. Opakovanim kombinacie mozeme prepinat medzi jednotli-
vymi variantami doplnenia.
Help:
Tak ako vacsina programov, tak aj editor vi ma vlastnu napovedu, ktoru
vyvolame stlacenim F1, alebo prikazom :help. V texte helpu su umiestnene
aj hypertextove odkazy |odkaz|. Ak ich chcete pouzit musite stlacit
kombinaciu klaves :CTRL+]. Spat sa dostanete pomocou : CTRL+T.
Help opustite pomocou prikazu :q. Mozete si aj zavolat help k urcitemu
prikazu :
:help :w => vypise napovedu k prikazu :w
Prekladce gcc,cpp... :
Ak pracujete napr. s jazykom c, mozete priamo z editoru spustim preklad
programu a to pomocou prikzu :!gcc -c % -o %o
kde nazov suboru nahradite znakom % , a editor vim ho potom nahradi nazvom
suboru. Ako dalej vidite %o je urobene preto, aby vystupny subor mal tiez
nazov vstupujuceho suboru.
Tento riadok mozeme dopisat do suboru menu.vim (pre verziu >= 5,6)
a to tak ze najdeme menu IDE a pridame k nemu riadok
40amenu IDE.Co/Make/Ansi :!gcc -ansi % -o %o <CR>
40amenu IDE.Compile/Allegro :!gcc -Ie:/jano/c/include/ -g -c % -o %o <CR>
40amenu IDE.Make/Allegro :!gcc -Le:/jano/c/lib -o %exe %o -lalleg <CR>
40menu IDE.LINUX :!gcc -Id:/linux/include/ -c % -o %o<CR>
Je tu napisana moznost pre ansi normu, a tiez pre allegro, tieto naviac
obsahuju cestu ku knizniciam allegra.
Velmi dobrou vyhodou je to , ze editor vim si pamata pouzite prikazy, tak ze
ak sa nachadzame v prikazovom riadku editora , staci sipkami hore a dole
pohybovat sa v historii prikazov, ktora sa vsak po vypnuti editora vymaze.
Ak chcete spustit vas prekompilovany program, staci napisat
:!nazov_programu.exe
a spusti sa nas program.
Dufam ze som vas zaujal, tymto trochu nezvycajnym editorom....