<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=iso-8859-9"> <META NAME="GENERATOR" CONTENT="lfparser_1.5"> <!-- lfparser can be obtained from http://www.linuxfocus.org/developer/Guido/lfparser.html --> <META NAME="LFCATEGORY" CONTENT="Applications"> <TITLE>Applications : VI Edit�r�ne Hakim Olma</TITLE> </HEAD> <BODY bgcolor="#ffffff" text="#000000" alink="#336633" link="#336633" vlink="#336633"> <MAP name="top"> <AREA shape="rect" coords="367,9,418,30" alt="Home" href="../index.shtml"> <AREA shape="rect" coords="423,9,457,30" alt="Map" href="../map.html"> <AREA shape="rect" coords="463,9,508,30" alt="Index" href="../indice.html"> <AREA shape="rect" coords="514,9,558,30" alt="Search" href="../Search/index.shtml"> </MAP> <MAP name="bottom"> <AREA shape="rect" coords="78,0,163,15" alt="News" href="../News/index.html"> <AREA shape="rect" coords="189,0,284,15" alt="Archives" href="../Archives/index.html"> <AREA shape="rect" coords="319,0,395,15" alt="Links" href="../Links/index.html"> <AREA shape="rect" coords="436,0,523,15" alt="About LF" href="../aboutus.html"> </MAP> <!-- IMAGE HEADER --> <CENTER> <IMG src="../../common/images/Topbar-tr.gif" width="600" height="40" border="0" alt="[Top bar]" ismap usemap="#top" ><BR> <IMG src="../../common/images/Bottombar-tr.gif" width="600" height="21" border="0" alt="[Bottom bar]" ismap usemap="#bottom"> </CENTER> <!-- SSI_INFO --> <!-- tr_staticssi include virtual --> <!-- tr_staticssi exec cmd --> <!-- addedByLfdynahead ver 1.4 --><TABLE ALIGN="right" border=0><TR><TD ALIGN="right"><FONT SIZE="-1" FACE="Arial,Helvetica">Bu makalenin farkl� dillerde bulundu�u adresler: <A href="../../English/May2000/article153.shtml">English</a> <A href="../../Castellano/May2000/article153.shtml">Castellano</a> <A href="../../Deutsch/May2000/article153.shtml">Deutsch</a> <A href="../../Francais/May2000/article153.shtml">Francais</a> <A href="../../Nederlands/May2000/article153.shtml">Nederlands</a> <A href="../../Russian/May2000/article153.shtml">Russian</a> <A href="../../Turkce/May2000/article153.shtml">Turkce</a> </FONT></TD></TR></TABLE><br> <!-- SHORT BIO ABOUT THE AUTHOR --> <TABLE ALIGN=LEFT BORDER=0 CELLSPACING=0 CELLPADDING=5 WIDTH="30%" > <TR> <TD><IMG src="../../common/images/white.gif" width="100" heigth="10" alt="[Foto of the Auteur]"> <BR> <A HREF="mailto:ben@wiliki.eng.hawaii.edu">Ben Y. Yoshino</A> <BR><BR> <I>Yazar Hakk�nda:</I><BR> <P>Ben Yoshinori Yoshino Hawaii �niversitesinde �al��maktad�r. Onun anasayfas�na <a href="http://www.eng.hawaii.edu/~ben/">www.eng.hawaii.edu/~ben</a> adresinden ula�abilirsiniz.</P> <P><FONT COLOR="#336633">��erik</FONT>: <UL> <LI><A HREF="#lfindex0">Uyla��mlar</A></LI> <LI><A HREF="#lfindex1">Ba�lamadan �nce</A></LI> <LI><A HREF="#lfindex2">VI Edit�r�n� Ba�latma</A></LI> <LI><A HREF="#lfindex3"> VI'�n D���na ��kma</A></LI> <LI><A HREF="#lfindex4">VI'�n �ki Modu</A></LI> <LI><A HREF="#lfindex5">Komut Modunda Komutlar�n Yaz�lmas�</A></LI> <LI><A HREF="#lfindex6">Baz� Kolay VI Komutlar�</A></LI> <LI><A HREF="#lfindex7">VI'da Yaz� Tamponlar� (Text Buffers)</A></LI> <LI><A HREF="#lfindex8">Kesme ve Kopyalama (Yanking)</A></LI> <LI><A HREF="#lfindex9">Yap��t�rma</A></LI> <LI><A HREF="#lfindex10">Kodunuzu Hizalama ve Kontrol Etme</A></LI> <LI><A HREF="#lfindex11">Kelime ve Karakter Aratma</A></LI> <LI><A HREF="#lfindex12"> VI (ve EX) i�in Ayarlar </A></LI> <LI><A HREF="#lfindex13">K�saltmalar ve Tu�lar� Ba�ka Tu�lara Haritalama</A></LI> <LI><A HREF="#lfindex14">EXINIT �evresel De�i�keni ve .exrc Dosyas�</A></LI> <LI><A HREF="#lfindex15">Terminalinizde Bir Sorun Oldu�unda �al��malar�n�z� Kurtarma</A></LI> <LI><A HREF="#lfindex16">��-�stasyonlar�nda VI Kullan�m�yla �lgili Uyar�</A></LI> <LI><A HREF="#lfindex17"> VI Komutlar�n�n �zeti</A></LI> <LI><A HREF="#lfindex18">KAynaklar</A></LI> <LI><A HREF="http://cgi.linuxfocus.org/cgi-bin/lftalkback?anum=153&lang=en">Bu makale i�in G�r�� Bildirim formu</A></LI> </UL> </P> </TD></TR></TABLE> <!-- HEAD OF THE ARTICLE --> <H2> VI Edit�r�ne Hakim Olma</H2> <h3>�eviri : Zeynep Arslano�lu</h3> <IMG src="../../common/images/illustration153.gif" width="125" height="60" alt="[VIM the edtitor]"> <P><FONT COLOR="#336633">�zet</FONT>: <P> <P> Bu, vi �zerine <A href="mailto:ben@wiliki.hawaii.edu">Ben Y. Yoshino</A> taraf�ndan yaz�lm�� e�itsel bir yaz�d�r. Yaz�n�n asl� <A href="http://www.eng.hawaii.edu/Tutor/vi.html">www.eng.hawaii.edu/Tutor/vi.html</A> adresinde bulunabilir. Ayn� yazar taraf�ndan yaz�lm�� ba�ka e�itsel yaz�lar da bulunmaktad�r: <A href="http://www.eng.hawaii.edu/Tutor/">www.eng.hawaii.edu/Tutor/</A>. Biz bu makaleyi <A href="http://www.rootprompt.org">www.rootprompt.org</A> adresinde bulduk ve yazar�n izniyle yay�nlad�k. <P> VI edit�r�, bir�ok Unix kullan�c�s� taraf�ndan kullan�lan ekran-tabanl� bir edit�rd�r. VI edit�r�, programc�lara yard�mc� olacak bir�ok g��l� �zelli�e sahiptir; ama �o�u yeni ba�layan kullan�c� VI kullanmaz; ��nk� de�i�ik �zelliklerin �oklu�u onlar� korkutur. Bu e�itsel yaz�, yeni ba�layanlar�n VI edit�r�n� kullanmaya al��malar�na yard�mc� olmak i�in yaz�lm��t�r; fakat VI'�n normal seviyedeki kullan�c�lar�yla ilgili b�l�mler de i�ermektedir. �rnekler sa�lanm��t�r ve ��renmenin en iyi yolu bu �rnekleri denerken, kendi �rneklerinizi de d���nmektir. Bir �eyi kendinizin tecr�be etmenizden daha iyi bir yol olamaz. </P><HR size="2" noshade><BR> <!-- BODY OF THE ARTICLE --> <A NAME="lfindex0"> </A> <H2>Uyla��mlar</H2> <p> Bu e�itsel yaz�da a�a��daki uyla��mlar kullan�lacakt�r: </p> <p> <b>^X</b> bir kontrol karakterini g�stermektedir. �rne�in e�er yaz�da,<b>^d</b> g�r�rseniz bu, "control" tu�unu bas�l� tutarak ilgili harfe basacaks�n�z demektir. Bu �rnek i�in, "<b>control</b>" tu�unu bas�l� tutacak ve ard�ndan <b>d</b> ye basacaks�n�z.</p> <A NAME="lfindex1"> </A> <H2><a name="before">Ba�lamadan �nce</a></H2> <p> Bu b�l�m, xterm gnome-terminali, kvt, aterm gibi modern terminal em�lat�rlerine sahip Linux kullan�c�lar�yla ilgili de�ildir. Bu terminal pencereleriyle $TERM kabuk de�i�keni daima do�ru de�eri alacakt�r; bu y�zden bu konuda endi�elenmenize gerek yoktur. </p> <p> VI edit�r� t�m ekran� kullan�r; bu y�zden ne t�r bir terminaliniz oldu�unu bilmesi gerekir. Sisteme girdi�inizde, wiliki (wiliki, Hawaii �niversitesindeki ana M�hendislik sunucusunun ad�d�r ) size hangi terminali kulland���n�z� soracakt�r. Kar��n�za gelecek imle� ��yle g�r�necektir: </p> <pre> TERM = (vt100) </pre> <p> Terminalinizin bir vt100 (veya vt100 gibi davranabilen bir em�lat�r) oldu�unu biliyorsan�z, sisteme girdi�inizde terminal tipi i�in "return" tu�una bas�n. E�er bir hp terminaliniz varsa, terminal t�r� i�in "<tt>hp</tt>" yaz�n ve "return" e bas�n. E�er ne t�r terminaliniz oldu�undan emin de�ilseniz sistem y�neticinize sorun veya sizin i�in do�ru terminal t�r�n� ayarlayabilecek birinden yard�m isteyin. <p> <p> E�er sisteme girdi�inizde bir hata yapar ve yanl�� terminal t�r� girerseniz pani�e kap�lmay�n. Sistemden ��k�n ve ayarlar� d�zeltmek i�in a�a��daki komutlar� verin: </p> <ul> <p> �nce kabu�unuza ne t�r terminale sahip oldu�unuzu anlatmal�s�n�z. ( Kabu�unuzun hangisi oldu�unu bilmiyorsan�z bunu ��renmek i�in <tt>echo $SHELL</tt> yaz�n.) Verilen �rneklerde terminal t�r� "vt100" d�r. Bunu kendi terminal t�r�n�zle de�i�tirerek kullanmal�s�n�z. C kabu�u (/bin/csh) i�in komut ��yledir:<br> <pre> set term=vt100 </pre> Bourne Kabu�u (/bin/sh) veya Korn Kabu�u (/bin/ksh) i�in komutlar ise ��yledir:<br> <pre> export TERM TERM=vt100 </pre> Ard�ndan terminalinizi a�a��daki komutla ba�tan ayarlay�n:<br> <pre> tset </pre> </p> </ul> <p> Art�k terminal tipi (umuyoruz ki) do�ru olarak ayarland� ve VI'� ba�latmak i�in haz�rs�n�z. </p> <A NAME="lfindex2"> </A> <H2><a name="start">VI Edit�r�n� Ba�latma</a></H2> <p> VI edit�r�, kullan�c�lar�n yeni dosyalar yaratmas�na veya varolan dosyalar� de�i�tirmesine izin verir. VI edit�r�n� ba�latmak i�in gereken komut, ard�na dosya ad� eklenerek verilecek <tt>vi</tt> komutudur. �rne�in <i>gecici</i> adl� bir dosyada de�i�iklik yapabilmek i�in, <tt>vi gecici</tt> yazacak ve "return" tu�una basacaks�n�z. VI'� dosya ad� olmadan da ba�latabilirsiniz; fakat daha sonra �al��man�z� kaydetmek istedi�inizde VI'a hangi dosya ad�n� kullanaca��n� belirtmek zorundas�n�z.</p> <p> VI'� ilk kez ba�latt���n�zda sol taraf� tildelerle dolu bir ekran g�receksiniz. (Bir tilde �una benzer: ~) Dosya sonundan sonraki t�m bo� sat�rlar bu �ekilde g�sterilir. Ekran�n�z�n sonunda dosya ad� g�r�nmelidir. E�er �nceden varolan bir dosya ad� belirlediyseniz dosyan�n boyutu da ayn� yerde �u �ekilde yaz�l� olmal�d�r:<br> <pre> "dosya_adi" 21 lines, 385 characters </pre> </p> <p> E�er ad�n� verdi�iniz dosya �nceden yoksa, o zaman bunun yeni bir dosya oldu�unu size �u �ekilde g�sterecektir:<br> <pre> "yeni_dosya" [New file] </pre> </p> <p> E�er VI'� dosya ad� olmadan ba�latt�ysan�z, ekran�n son sat�r� VI ba�lad���nda bo� olacakt�r. E�er ekranda bu beklenen sonu�lar g�r�lm�yorsa terminal tipiniz yanl�� ayarlanm�� olabilir demektir. <tt>:q</tt> yaz�n ve VI'�n d���na ��karak <a href="#before"> terminal tipinizi d�zeltin</a>. Nas�l yap�laca��n� bilmiyorsan�z sistem y�neticinize dan���n.</p> <A NAME="lfindex3"> </A> <H2><a name="quit"> VI'�n D���na ��kma</a></H2> <p> Art�k VI'a nas�l girece�inizi bildi�inize g�re nas�l ��kaca��n�z� da bilmeniz iyi olur. VI edit�r� <a href="#modes">iki mod</a> a sahiptir ve VI'�n d���na ��kmak i�in <i>komut</i> modunda olman�z gerekir. "<b>Escape</b>" veya "<b>Esc</b>" yaz�l� tu�a bas�n. (Terminalinizde b�yle bir tu� yoksa ^[, veya control-[.) kombinasyonlar�n� deneyerek <i>komut</i> moduna ge�in. E�er "<b>Escape</b>" tu�una bast���n�zda zaten komut modunda iseniz, endi�elenmeyin. Bir bip sesi gelebilir; fakat hala <i>komut</i> modunda olacaks�n�z. </p> <p> VI'� b�rakmak i�in komut <tt>:q</tt> dur. <i>komut</i> moduna girdi�inizde, "iki nokta �st�ste" ve 'q' tu�lar�n�n ard�ndan "return" e bas�n. E�er dosyan�zda bir �ekilde de�i�iklik yap�lm��sa, edit�r bu konuda sizi uyaracak ve ��kman�za izin vermeyecektir. Bu meaj� g�zard� etmek ve de�i�ikikleri kaydetmeden VI'dan ��kmak i�in <tt>:q!</tt> yaz�n.</p> <p> Normal olarak bir edit�rde, yapt���n�z de�i�iklikleri kaydetmeyi de isteyeceksiniz. Edit�r�n i�eri�ini kaydetmek i�in gereken komut <tt>:w</tt> dur. Bu komutu edit�rden ��kma komutuyla birle�tirebilir ve <tt>:wq</tt> yazabilirsiniz. <tt>:w</tt> komutunun ard�ndan bir dosya ad� vererek yazd�klar�n�z� farkl� bir dosya ad�yla da kaydedebilirsiniz. �rne�in �al��t���n�z dosyay� <i>dosya2</i> ad�yla kaydetmek istiyorsan�z: <tt>w dosya2</tt> yaz�p "return" e basmal�s�n�z. </p> <p> De�i�ikliklerinizi kaydedip VI'� b�rakman�n bir ba�ka yolu ise <tt>ZZ</tt> komutudur. <i>komut</i> modundayken, <tt>ZZ</tt> yaz�n. Bu komut <tt>:wq</tt> ile ayn� i�i g�recektir. Dosyada herhangi bir de�i�iklik yap�ld�ysa bunlar kaydedilecektir. Bu yaln�zca iki tu�a basarak edit�rden ��kman�n en kolay yoludur. </p> <A NAME="lfindex4"> </A> <H2><a name="modes"> VI'�n �ki Modu</a></H2> <p> �o�u kullan�c�n�n VI edit�r� hakk�nda ilk ��rendi�i �ey, iki modunun oldu�udur: <i>komut</i> ve <i>yaz�m</i>. <i>komut</i> modu, yaz�da de�i�iklik yapabilmek i�in gereken komutlar�n girilmesine imkan verir. Bu komutlar genellikle bir ya da iki karakter uzunlu�undad�r ve �ok az tu�a basarak girilebilir. <i>yaz�m</i> modu, klavyeden girilen her �eyin dosyaya yaz�lmas�n� sa�lar.</p> <p> VI <i>komut</i> modunda ba�lar. VI edit�r�n� <i>yaz�m</i> moduna sokan bir�ok komut vard�r. Bunalr�n en s�k kullan�lanlar� ise <tt>a</tt> ve <tt>i</tt> dir. Bu iki komut a�a��da tan�t�lmaktad�r. Bir kez <i>yaz�m</i> moduna girdi�inizde, <b>escape</b> tu�una basarak bu moddan ��kabilirsiniz. E�er terminaliniz bunu desteklemiyorsa, ^[ birle�imi i�e yaramal�d�r(control-[). "escape" tu�una iki kez basarsan�z VI kesinlikle <i>komut</i> modunda olacakt�r. �nceden <i>komut</i> modunda olman�z halinde <b>escape</b> e basman�z, edit�r� <i>komut</i> modundan ��kartmaz. Yaln�zca, zaten komut modunda oldu�unuzu size anlatan bir bip sesi duyabilirsiniz.</p> <A NAME="lfindex5"> </A> <H2><a name="commands">Komut Modunda Komutlar�n Yaz�lmas�</a></H2> <p> Komut modu komutlar� genellikle �u bi�imdedir: (Se�ime ba�l� arg�manlar, k��eli parantezler i�inde verilmektedir)<br> <ul> <tt>[<i>say�</i>] komut [<i>nerede</i>]</tt> </ul> Kontrol karakterleri kullanan komutlar da dahil �o�u komutlar bir karakter uzunlu�undad�r. Bu b�l�mde tan�t�lan komutlar, VI edit�r�nde en s�k kullan�lan komutlard�r. </p> <p> <i>say�</i>, 1'den 9'a kadar olan rakamlardan herhangi biriyle ba�layabilen bir say�d�r. �rne�in <tt>x</tt> komutu, imlecin alt�ndaki bir tek karakteri siler. E�er <i>komut</i> modundayken <tt>23x</tt> yazarsan�z, 23 karakter silinecektir. </p> <p> Baz� komutlar se�ime ba�l� bir <i>nerede</i> parametresi kullanabilirler. Bu parametreyle belgenin ka� sat�r�n�n ya da ne kadar�n�n komuttan etkilendi�i verilebilir. <i>nerede</i> parametresi ayn� zamanda, imleci hareket ettiren herhangi bir komut olabilir.</p> <A NAME="lfindex6"> </A> <H2><a name="simple">Baz� Kolay VI Komutlar�</a></H2> <p> Bir kullan�c�n�n VI'a yeni ba�layabilmesi i�in gereken baz� basit komutlar buradad�r. Daha bir�ok uygun komut ileriki b�l�mlerde ele al�nacakt�r. <dl compact> <dt>a<dd> <i>yaz�m</i> moduna gir. Yaz�lan karakterler imlecin o anki yerinden sonraya eklenecektir. Bir say� belirtirseniz, girilmi� olan yaz�n�n b�t�n� o say� kadar tekrar yaz�lacakt�r. <dt>h<dd>imleci sola bir karakter hareket ettir. <dt>i<dd> <i>yaz�m</i> moduna gir.Yaz�lan karakterler imlecin o anki yerinden �nceye eklenecektir. Bir say� belirtirseniz, girilmi� olan yaz�n�n b�t�n� o say� kadar tekrar yaz�lacakt�r. <dt>j<dd>imleci bir sat�r a�a�� hareket ettir. <dt>k<dd>imleci bir sat�r yukar� hareket ettir. <dt>l<dd>imleci sa�a bir karakter hareket ettir. <dt>r<dd>imlecin alt�ndaki bir karakteri de�i�tir. Birden fazla karakteri de�i�tirmek i�in <i>say�</i> belirtin. <dt>u<dd>dosyadaki son de�i�ikli�i geri al. <tt>u</tt> komutunu tekrar vermek de�i�ikli�i yeniden yapacakt�r.<dt>x<dd>imlecin alt�ndaki bir karakteri sil. <i>Say�</i> ka� karakter silinece�ini belirtir. �mle�ten sonra gelen karakterler silinecektir. </dl> </p> <A NAME="lfindex7"> </A> <H2><a name="buffers">VI'da Yaz� Tamponlar� (Text Buffers)</a></H2> <p> VI edit�r� yaz� par�ac�klar�n� depolayacak 36 tampona ve bir de genel ama�l� tampona sahiptir. Dosyadan bir yaz� blo�u silindi�inde ya da kopyaland���nda, bu par�a genel ama�l� tampona yerle�tirilir. �o�u VI kullan�c�s� di�er tamponlar� nadiren kullan�r ve onlar olmadan da rahat edebilir. E�er belirtilirse, yaz� blo�u ba�ka bir tamponda da saklan�r. Tampon, <tt>"</tt> komutu kullan�larak belirtilir. <tt>"</tt> yazd�ktan sonra, tamponu belirleyen bir harf veya hane girilmelidir. �rne�in, <tt>"mdd</tt> komutu, <b>m</b> tamponunu kullan�r ve son iki karakter, bulunulan sat�r� sildirmeye yarar. Benzer �ekilde yaz�, <tt>p</tt> veya <tt>P</tt> komutlar� kullan�larak yap��t�r�labilir. <tt>"mp</tt> komutu, <b>m</b> tamponunun i�eri�ini imlecin bulundu�u yerden sonraya yap��t�r�r. Sonraki iki b�l�mde kullan�lan komutlar i�in bu tamponlar, kelime veya paragraflar�n ge�ici depolama yerleri olarak belirlenebilir. </p> <A NAME="lfindex8"> </A> <H2><a name="cut">Kesme ve Kopyalama</a></H2> <p> Kesme i�in genel olarak kullan�lan komut <tt>d</tt> dir. Bu komut, yaz�y� dosyadan siler. Komuttan �nce se�ime ba�l� olarak bir <i>say�</i> kullan�labilir ve ard�na da bir hareket ettirme �zelli�i eklenebilir. E�er komutu tekrarlayarak <tt>dd</tt> yazarsan�z, bulunulan sat�r� silersiniz. ��te bunlar�n birka� farkl� birle�imi: <dl compact> <dt>d^<dd>imlecin bulundu�u yerden sat�r�n ba��na kadar siler <dt>d$<dd>imlecin bulundu�u yerden sat�r�n sonuna kadar siler <dt>dw<dd>imlecin bulundu�u yerden s�zc���n sonuna kadar siler <dt>3dd<dd>imlecin bulundu�u yerden itibaren a�a��daki �� sat�r� siler. </dl> </p> <p> Bir de <tt>y</tt> komutu (kopyalama komutu) vard�r ki, <tt>d</tt> komutuna benzer �al���rken dosyadaki yaz�y� silmeden onu al�r.</p> <A NAME="lfindex9"> </A> <H2><a name="paste">Yap��t�rma</a></H2> <p> Yap��t�rma komutlar� <tt>p</tt> ve <tt>P</tt> d�r. Tek farklar� ise, <tt>p</tt> belirlenen veya genel tamponu imle� pozisyonundan sonra yap��t�r�rken; <tt>P</tt> nin imle�ten �nce yap��t�rmas�d�r. Yap��t�rma komutundan �nce bir <i>say�</i> belirtmek, yaz�y� belirlenen say� kez tekrar yap��t�r�r. </p> <A NAME="lfindex10"> </A> <H2><a name="indent">Kodunuzu Hizalama ve Kontrol Etme</a></H2> <p> VI edit�r�, programc�lar�n kodlar�n� istedikleri d�zg�nl�kte bi�imlendirmelerine yard�mc� olacak �zelliklere sahiptir. Kodun i�indeki her yuvalanma seviyesindeki hizay� ayarlayacak bir de�i�ken vard�r. Bunu ayarlamak i�in bu yaz�n�n <a href="#settings">�zelle�tirme b�l�m�</a> ne g�z at�n. �rne�in, kayd�rma geni�li�ini(shiftwidth) 4 karaktere ayarlamak i�in gereken komut <tt>:set sw=4</tt> t�r. </p> <p> A�a��daki komutlar sat�rlar�n�z� hizalar veya hizalamay� kald�r�r. Bunlarla beraber bir <i>say�</i> da belirtilebilir: <dl compact> <dt><<<dd>Bulunulan sat�r� bir kayd�rma geni�li�i sola kayd�r�r. <dt>>><dd>Bulunulan sat�r� bir kayd�rma geni�li�i saga kayd�r�r.</dl> </p> <p> VI edit�r� ayn� zamanda kaynak kodunuzu, tek kalan parantez olup olmad���n� kontrol etmek i�in inceleyen bir �zelli�e sahiptir. <tt>%</tt> komutu, bir sa� paranteze kar�� gelen sol parantezi aramaya (ya da tam tersi) yarar. �mleci bir parantezin ya da k��eli parantezin �zerine getirip <b>%</b> yazarsan�z ona ka��l�k gelecek parantez bulunacakt�r. Kar��l��� olmayan bir parantez bulunursa, VI bip sesi ��kartarak size bunu g�sterecektir.</p> <A NAME="lfindex11"> </A> <H2><a name="search">Kelime ve Karakter Arama</a></H2> <p> VI edit�r� iki �e�it aramaya sahiptir: katar veya karakter. Bir katar aramak i�in, <tt>/</tt> ve <tt>?</tt> komutlar� kullan�l�r. Bu komutlar� verdi�inizde yazd�klar�n�z, arad���n�z katar� girdi�iniz ekran�n en alt sat�r�nda g�r�lecektir. Bu iki komut yaln�zca katar� arad�klar� y�nler a��s�ndan farkl�d�r. <tt>/</tt> komutu dosyada a�a�� do�ru arama yaparken, <tt>?</tt> komutu yukar� do�ru arama yapar. <tt>n</tt> ve <tt>N</tt> komutlar� �nceki aramay�, s�ras�yla, ayn� veya z�t y�nde tekrar ederler. VI'da baz� karakterlerin �zel anlam� vard�r. Bunlar�n, aranan ifadenin bir par�as� olabilmeleri i�in �nlerine birer "\" karakteri konmal�d�r. </p> <p> �zel karakterler: <dl compact> <dt>^<dd>Sat�r�n ba��. (Aranan bir ifadenin ba��nda.) <dt>.<dd>Tek bir karaktere kar�� gelir. <dt>*<dd>Kendinden �nceki karakterin s�f�r veya daha fazla tekrar�na kar�� gelir. <dt>$<dd>Sat�r�n sonu. (Aranan bir ifadenin sonunda.) <dt>[<dd>Bir dizi uyan veya uymayan karakteri ba�lat�r.�rne�in: /f[iae]t �unlardan herhangi birine uyar: fit fat fet <br> ^ ile kullan�ld���nda ise "[ ]" i�indeki harfler d���nda her �eye uyar: /a[^bcd] �unlar�n hi�birine uymayacakt�r: ab ac ad ;fakat a harfinin yan�nda b c d olmayan t�m katarlara uyacakt�r. <dt><<dd>Birs�zc���n ba�lang�c�n� veya sonunu bulmak i�in "\" ard�ndan bir ifade yaz�n.�rne�in: /\<kaz\> yaln�zca kaz s�zc���n� bulur; ikaz ve kaza gibi s�zc�kleri bulmaz. <dt>><dd>Yukar�daki '<' karakterinin tan�t�m�na bak�n. </dl> </p> <p> Karakter arama ise bir sat�r i�inde, komuttan sonra girilen karakteri arar. <tt>f</tt> ve <tt>F</tt> komutlar�, yaln�zca bulunulan sat�rda karakteri ararlar. <tt>f</tt> ileri do�ru, <tt>F</tt> ise geriye do�ru arama yapar. �mle�, bulunan karakterin �zerine gelir. </p> <p> <tt>t</tt> ve <tt>T</tt> komutlar� yaln�zca bulunulan sat�rda karakteri ararlar; fakat <tt>t</tt> ile imle�, bulunan karakterden �nce dururken ,<tt>T</tt> sat�r� geriye do�ru arar ve imleci karakterden sonraya yerle�tirir. </p> <p> Bu iki komut tak�m� <tt>;</tt> veya <tt>,</tt> komutlar� kullan�larak tekrar edilebilir. Burada <tt>;</tt> son karakter aramas�n� ayn� y�nde yaparken <tt>,</tt> komutu ters y�nde tekrar eder. </p> <p> "ic" se�ene�iyle; (veya ignorecase ile ) set (type <tt>:set ic</tt>) ayn� zamanda b�y�k k���k harf duyarl��� olmadan arama yap�labilir. </p> <A NAME="lfindex12"> </A> <H2><a name="settings">VI ve EX i�in Ayarlar </a></H2> <p> VI'�n davran�� bi�imini ba�lang��ta tan�mlayabilirsiniz. :set komutuyla ayarlayabilece�iniz bir�ok yaz�m se�ene�i vard�r. ��te Wiliki'de bulunan VI ve EX edit�r� se�enekleri: ( Bu listeyi elde etmek i�in komut modundayken <tt>:set all</tt> yazman�z ve ard�ndan <b>return</b> e basman�z yeterlidir) </p> <p> <listing> noautoindent magic noshowmatch autoprint mesg noshowmode noautowrite nomodelines noslowopen nobeautify nonumber tabstop=8 directory=/tmp nonovice taglength=0 nodoubleescape nooptimize tags=tags /usr/lib/tags noedcompatible paragraphs=IPLPPPQPP LIpplpipnpbp term=xterm noerrorbells prompt noterse noexrc noreadonly timeout flash redraw timeoutlen=500 hardtabs=8 remap ttytype=xterm noignorecase report=5 warn keyboardedit scroll=11 window=23 keyboardedit! sections=NHSHH HUuhsh+c wrapscan nolisp shell=/bin/csh wrapmargin=0 nolist shiftwidth=8 nowriteany </listing> </p> <p> Bu se�eneklerin baz�lar�, i�lerindeki '=' i�aretleriyle de�erlerini alm��t�r. Di�erlerinin ise baz�lar� ayarl�, baz�lar� de�ildir. (Bu a��k veya kapal� tarz� se�eneklere <b>Boolean</b> ad� verilir ve ayarl� olmad�klar�n� g�stermek i�in �nlerinde "no" yaz�l�d�r.) Burada g�sterilen se�enekler, hi�bir �zelle�tirmeye gerek duymayan se�eneklerdir. Bunlar�n baz�lar�n�n tan�mlar� a�a��da, bir k�saltmayla verilmi�tir. �rne�in set autoindent komutunu a�mak i�in <tt>:set autoindent</tt> veya <tt>:set ai</tt> yazabilirsiniz. Kapatmak i�inse:<tt>:set noautoindent</tt> veya <tt>:set noai</tt> yaz�lmal�d�r. <dl compact> <dt>autoindent (ai)<dd>Bu se�enek edit�r� �yle ayarlar ki, i�eri hizalanm�� bir sat�r� takip eden di�er sat�rlar da �ncekiyle ayn� hizalamaya sahip olur. Bu hizalamay� geri almak i�in, ilk karakter pozisyonundayken <tt>^D</tt> 'ye bas�lmal�d�r. <tt>^D</tt> <i>yaz�m</i> modundayken �al���r; <i>komut</i> modunda �al��maz. Ayr�ca, i�eri hizalaman�n geni�li�i a�a��da a��klanaca�� gibi <b>shiftwidth</b> ile ayarlanabilir. <dt>exrc<dd> Bulunulan dizindeki <i>.exrc</i> dosyas� ba�lang��ta okunur. Bu, ya <b>EXINIT</b> �evresel de�i�keniyle veya ana dizininizdeki <i>.exrc</i> dosyas�yla ayarlan�r. <dt>mesg<dd> Bu se�enek <tt>:set nomesg</tt> kullan�larak kapat�l�rsa siz edit�r� kullan�rken kimse sizi rahats�z edemez. <dt>number (nu)<dd>Sat�rlar�n solunda sat�r numaralar�n� g�sterir. <dt>shiftwidth (sw)<dd>Bu se�enek ald��� de�erle yaz�l�m tabstop geni�li�ini ayarlar. ( Yaz�l�m tabstop, <tt><<</tt> ve <tt>>></tt> komutlar� i�in kullan�l�r.) �rne�in �u komutla kayd�rma geni�li�ini 4'e ayarlars�n�z: <tt>:set sw=4</tt>. <dt>showmode (smd)<dt> Bu se�enek, edit�r�n, i�inde bulundu�unuz modunu g�sterir. E�er <i>yaz�m</i> modundaysan�z ekran�n en alt sat�r�nda <b>INPUT MODE</b> yazacakt�r. <dt>warn<dd>Bu se�enek, dosyada de�i�iklik yap�p hen�z kaydetmedi�iniz durumda sizi uyaracakt�r. <dt>window (wi)<dd>Bu se�enek VI'�n kulland��� penceredeki sat�rlar�n say�s�n� ayarlayacakt�r. �rne�in VI edit�r�n� ekran�n�z�n yaln�zca 12 sat�r�n� kullanmak �zere ayarlamak istiyorsan�z (�rne�in modeminiz yava� oldu�u i�in) �unu kullanman�z gerekecektir: <tt>:set wi=12</tt>. <dt>wrapscan (ws)<dd>Bu se�enek kelime araman�n davran���n� etkiler. E�er <tt>wrapscan</tt> a��ksa ve s�zc�k dosyan�n sonuna kadar bulunamad�ysa aramaya ba�tan ba�layacakt�r. <dt>wrapmargin (wm)<dd>Bu se�enek s�f�rdan b�y�k bir de�er al�rsa, edit�r kendili�inden "word wrap" yapacakt�r. Yani, sol kenardan belirtilen say� kadar bo�luk i�eri girerseniz, 'return' e basman�za gerek kalmadan s�zc�k alt sat�ra inecektir. �rne�in, kenar kal�nl���n� (wrap margin) iki karaktere ayarlamak i�in �unu yazman�z gerekecektir: <tt>:set wm=2</tt>. </dl> </p> <A NAME="lfindex13"> </A> <H2><a name="map">K�saltmalar ve Tu�lar� Ba�ka Tu�lara Haritalama</a></H2> <p> VI edit�r�nde yararlan�lan bir EX edit�r� komutu <b>abbreviate</b> tir. Bu �zellik, belirtilen katarlar i�in k�saltmalar yapabilmenizi sa�lar. Komut �una benzer: <tt>:ab katar yerine konulacak �ey</tt>. �rne�in "<b>Humuhumunukunukuapua`a</b>" ad�n� yazmak zorundaysan�z ama b�t�n ismi yazmak istemiyoran�z bunun i�in bir k�saltma kullanabilirsiniz. Bu �rnek i�in komutumuz ��yle girilebilir: <br> <tt>:ab 9u Humuhumunukunukuapua`a</tt><br> Art�k her <tt>9u</tt> yaz���n�zda (ayr� bir kelime olarak), VI belirtilen kelime ya da kelimeleri girecektir. E�er 9university yazarsan�z bu kelimeyi de�i�tirmeyecektir. </p> <p> �nceden belirtilmi� bir k�saltmay� kald�rmak i�in gereken komut unabbreviate 'tir. �nceki �rne�i kald�rmak i�in gereken komut ":una 9u" olacakt�r. K�saltmalar�nz�n bir listesini g�rebilmek i�in :ab yazman�z yeterlidir. </p> <p> �zelle�tirme i�in yararl� bir di�er EX edit�r� komutu haritaland�rma komutudur. �ki �e�it haritaland�rma komutu vard�r. Biri komut modu, di�eri yaz�m modu i�indir. Bu iki komut s�ras�yla <tt>:map</tt> ve <tt>:map!</tt> komutlar�d�r. Haritaland�rma, k�saltmaya benzer �al���r. Ona bir tu� s�ralamas� verir ve onunla yer de�i�tirecek bir ba�ka tu� s�ralamas� daha verirsiniz. (Yer de�i�tirilen tu� s�ralamalar� genellikle VI komutlar�d�r.) </p> <A NAME="lfindex14"> </A> <H2><a name="setup"> EXINIT �evresel De�i�keni ve <i>.exrc</i> dosyas�</a></H2> <p> VI edit�r�n� �zelle�tirmenin iki yolu vard�r. Ana dizininizde .exrc adl� bir dosya yarat�rsan�z dosyadaki t�m komutlar VI'�n a��l���nda okunacat�r. Di�er y�ntem ise <b>EXINIT</b> adl� bir �evresel de�i�keni ayarlamakt�r. Se�enekler, kabu�unuzun ayar dosyas�nda ayarlanacakt�r. E�er /bin/csh (C-Shell) kullan�yorsan�z, gereken komut <i>.cshrc</i> dosyas�na yaz�l�r ve ��yledir:<br> <pre> setenv EXINIT '...' </pre> E�er /bin/sh veya /bin/ksh kullan�yorsan�z, gereken komut <i>.profile</i> dosyas�na yaz�l�r ve ��yledir:<br> <pre> export EXINIT EXINIT='...' </pre> �rnekteki gibi ... koymay�n. Bu bo�lu�a, ayarlamak istedi�iniz komutlar� girin. �rne�in, otomatik hizalama, sat�r numaralama ve �� karakterlik kenar geni�li�i ayarlamak istiyorsan�z (C kabu�u i�in) setenv komutu ��yle olacakt�r:<br> <pre> setenv EXINIT 'set ai nu wm=3' </pre> </p> <p> E�er <tt>setenv EXINIT</tt> in i�ine birden fazla �ey koymak istiyorsan�z komutlar� bir boru ile ay�r�n (|). �rne�in komut modundaki 'g' komutunu 'G' ile de�i�tirmek i�in komut <tt>:map g G</tt>, ve yukar�daki komutla birle�tirilerek �unu elde edersiniz: <pre> setenv EXINIT 'set ai nu wm=3|map g G' </pre> </p> <p> <i>.exrc</i> dosyas�n� yaratmak istiyorsan�z, tamamen ayn� �eyleri <b>EXINIT</b> den sonra g�sterildi�i gibi dosyaya yazmal�s�n�z. </p> <A NAME="lfindex15"> </A> <H2><a name="recover">Terminalinizde Bir Sorun Oldu�unda �al��malar�n�z� Kurtarma</a></H2> <p> VI edit�r�, dosyan�z�n ge�ici bir kopyas�n� yazar ve siz ona kaydetmesini s�yledi�inizde veya yazma i�i bitti�inde ge�ici kopyan�ni�eri�ini as�l dosyaya koyar. E�er doyan�z� yazarken bir sorun ��karsa VI edit�r� yapt���n�z t�m �al��malar� kaydetmeye �al��acak ve daha sonra kurtarmak i�in depolayacakt�r. (Not: E�er siz herhangi bir dosya �zerinde �al���rken VI �l�rse, size �al��man�z� nas�l kurtaraca��n�za dair bir elektronik ileti yollayacakt�r. <b>-r</b> se�ene�i kurtarma anlam�na gelen 'recovery' s�zc��� yerine ge�er. �rne�in <i>hayati</i> dosyas�nda de�i�iklik yaparken kazayla sistemden ��kt�ysan�z vi edit�r�n�n <b>-r</b> se�ene�i yard�mc� olacakt�r. Komut hemen hemen �una benzeyecektir: <br> <tt>vi -r vitalinfo</tt><br> <b>-r</b> se�ene�ini bir kez kulland�ktan sonra kurtard���n�z �al��may� kaydetmeniz �ARTTIR. <b>-r</b> se�ene�i her kusurlu i�leme i�in bir kez i�e yarayacakt�r. </p> <A NAME="lfindex16"> </A> <H2><a name="warning">��-�stasyonlar�nda VI Kullan�m�yla �lgili Uyar�</a></H2> <p> ��-istasyonlar�n� kullan�rken dikkat edilecek iki �ey vard�r: Ayn� dosyay� ayn� anda birden fazla yerde de�i�tirmek ve ekran�n boyutunu de�i�tirmek. </p> <p> VI as�l dosyan�z�n ge�ici bir kopyas�n� olu�turup bu kopyan�n i�eri�ini dosyan�n asl�na kaydetti�i i�in, birden fazla konsoldan sisteme girmi� olman�z ve bir dosyay� birden fazla yerde VI kullanarak de�i�tiriyor olman�z durumunda bir pencerede kaydeder ard�ndan da bir ba�ka pencerede kaydederseniz ilk kay�t i�leminde yapt���n�z de�i�iklikler, ikinci kay�t taraf�ndan silinecektir. Bu y�zden VI da her dosyan�n bir tek kopyas�n� �al��t�rd���n�zdan emin olun. </p> <p> Bir i�-istasyonunda bir terminal program� kullan�yorsan�z, ekran�n boyutunu pencerenin kenarlar�n� s�r�kleyerek de�i�tirebilirsiniz. E�er bu �zellik d�zg�n �al��m�yorsa bunun i�in gereken komut :<br> <pre> eval `resize` </pre> Bu da i�e yaramazsa komutumuz:<br> <pre> eval `/usr/bin/X11R6/resize` </pre> olacakt�r. Bu, VI'�n �zellikle Vim gibi yeni s�r�mleri i�in nadir rastlanabilecek bir sorundur. </p> <A NAME="lfindex17"> </A> <H2><a name="summary"> VI Komutlar�n�n �zeti</a></H2> <p> Bu liste VI komutlar�n�n fonksiyonlar�na g�re s�n�fland�r�lm�� bir �zetidir. Eri�ilebilir ba�ka komutlar da olabilir bu y�zden <a href="/cgi-bin/man-gateway?vi">VI �zerine yaz�lm�� elyordam sayfas�</a> adresini ziyaret edin. Kolay kullan�m i�in bu dosyay� kaydedebilir ve kullanmayaca��n�z� d���nd���n�z komutlar� silerek daha k�sa bir dosya elde edebilirsiniz. </p> <ul> <li><a href="#s-cut">Kesme ve Yap��t�rma/Yaz� Silme</a> <li><a href="#s-insert">Yeni Yaz� Yazma</a> <li><a href="#s-mvcur">�mleci Dosyan�n ��inde Hareket Ettirme</a><li> <a href="#s-mvscr">�mleci Ekran Etraf�nda Dola�t�rma</a> <li><a href="#s-repl">Yaz�lar�n Yerlerini De�i�tirme</a> <li><a href="#s-srch">Yaz� veya Karakter Arama</a> <li><a href="#s-fmt">Karakter/Sat�r Bi�imlemelerini(Formatting) De�i�tirme</a> <li><a href="#s-save">Kaydetme ve ��kma</a> <li><a href="#s-misc">Derleme</a> <li><a href="#s-excmd">EX Komutlar�</a> </ul> <h4><a name="s-cut">Kesme ve Yap��t�rma/Yaz� Silme</a></h4> <p> <dl compact> <dt>"<dd>Tampon kullanan herhangi bir komut taraf�ndan kullan�lacak tamponu belirle. " i�aretinden sonra bir tampona kar�� gelecek hane ya da harf gir. <dt>D<dd>�mlecin bulundu�u yerden sat�r sonuna kadar sil. <dt>P<dd>Belirtilen tamponun i�eri�ini imleci bulundu�u yerden veya sat�rdan �nceye yap��t�r. E�er tampon belirtilmemi�se 'P' genel tamponu kullanacakt�r. <dt>X<dd>�mlecin bulundu�u yerden �nceki karakteri sil. <dt>Y<dd>Bulunulan sat�r� belirtilen tampona kopyala. E�er tampon belirtilmemi�se genel tampon kullan�lacakt�r. <dt>d<dd> <i>nerede</i> ye kadar sil. "dd" bulunulan sat�r� siler. Say� verilirse o kadar sat�r silinir. Silinen her �ey " komutuyla belirtilen tampona yerle�tirilir. E�er tampon belirtilmemi�se genel tampon kullan�lacakt�r. <dt>p<dd>Belirtilen tamponun i�eri�ini imleci bulundu�u yerden veya sat�rdan sonraya yap��t�r. E�er tampon belirtilmemi�se 'p' genel tamponu kullanacakt�r. <dt>x<dd>�mlecin alt�ndaki karakteri sil. Say� verilirse o kadar karakter silinir. Karakterler imle�ten sonra silinecektir. <dt>y<dd><i>nerede</i> ye kadar kopyala ve sonucu tampona yerle�tir. "yy" bulunulan sat�r� kopyalar. Tampon " komutuyla belirlenebilir. Say� verilirse o kadar sat�r kopyalan�r. E�er tampon belirtilmemi�se genel tampon kullan�lacakt�r. </dl> </p> <h4><a name="s-insert">Yeni Yaz� Yazma </a></h4> <p> <dl compact> <dt>A<dd>Bulunulan sat�r�n sonuna ekle. <dt>I<dd>Bir sat�r�n ba��ndan itibaren yaz. <dt>O<dd>(Harf olan O ) Bulunulan imlec pozisyonunun �st�ndeki yeni sat�rda <i>komut</i> moduna gir. <dt>a<dd><i>komut</i> moduna gir. Yaz�lan karakterler bulunulan imlec pozisyonundan sonra yaz�lcakt�r. Say� belirtilirse girilen yaz� o kadar tekrar edilerek yaz�lacakt�r. <dt>i<dd><i>komut</i> moduna gir. Yaz�lan karakterler bulunulan imlec pozisyonundan �nce yaz�lacakt�r. Say� belirtilirse girilen yaz� o kadar tekrar edilerek yaz�lacakt�r. <dt>o<dd> Bulunulan imle� pozisyonunun alt�ndaki yeni sat�rda <i>komut</i> moduna gir. </dl> </p> <h4><a name="s-mvcur">�mleci Dosyan�n ��inde Hareket Ettirme</a></h4> <p> <dl compact> <dt>^B<dd>Bir sayfa geriye d�n. Say� verilirse o kadar sayfa geri d�n�lecektir. <dt>^D<dd>Yar�m pencere ileri git. Say� verilirse o kadar sat�r ileri gidilecektir. <dt>^F<dd>Bir sayfa ileriye git. Say� verilirse o kadar sayfa ileri gidilecektir. <dt>^H<dd>�mleci sola bir karakter oynat. Say� verilirse o kadar karakter gidilecektir. <dt>^J<dd>�mleci ayn� kolonda bir sat�r a�a�� oynat. Say� verilirse o kadar sat�r a�a�� inilecektir. <dt>^M<dd>Bir sonraki sat�r�n ilk karakterine git. <dt>^N<dd>�mleci ayn� kolonda bir sat�r a�a�� oynat. Say� verilirse o kadar sat�r a�a�� inilecektir. <dt>^P<dd>�mleci ayn� kolonda bir sat�r yukar� oynat. Say� verilirse o kadar sat�r yukar� ��k�lacakt�r. <dt>^U<dd>Yar�m pencere geri git. Say� verilirse o kadar sat�r geri gidilecektir. <dt>$<dd>�mleci bulunulan sat�r�n sonuna g�t�r. Say� verilirse takip eden sat�rlar�n sonuna gidilecektir. <dt>%<dd>�mleci kar��l�k gelen parantez veya k��eli parantezlerin �zerine g�t�r. <dt>^<dd>�mleci, bo�luk olmayan ilk karakterin �zerine g�t�r. <dt>(<dd>�mleci c�mlenin ba��na g�t�r. <dt>)<dd>�mleci bir sonraki c�mlenin ba��na g�t�r. <dt>{<dd>�mleci �nceki paragrafa g�t�r. <dt>}<dd>�mleci sonraki paragrafa g�t�r. <dt>|<dd> �mleci say� ile belirtilen kolona g�t�r. <dt>+<dd>�mleci, sonraki sat�rda bo�luk olmayan ilk karakterin �zerine g�t�r. <dt>-<dd>�mleci, �nceki sat�rda bo�luk olmayan ilk karakterin �zerine g�t�r. <dt>_<dd>�mleci, bulunulan sat�rda bo�luk olmayan ilk karakterin �zerine g�t�r. <dt>0<dd>(S�f�r) �mleci bulunulan sat�r�n ilk kolonuna g�t�r. <dt>B<dd>�mleci, noktalama i�aretlerini atlayarak, bir kelime geriye g�t�r. <dt>E<dd>�leri do�ru, noktalama i�aretlerini atlayarak, kelimenin sonuna git. <dt>G<dd>Say� ile belirtilen numaral� sat�ra git. E�er say� verilmemi�se dosyan�n sonuna git. <dt>H<dd>�mleci, ekran�n ba��ndaki ilk bo�luk olmayan karaktere g�t�r. <dt>L<dd>�mleci, ekran�n sonundaki ilk bo�luk olmayan karaktere g�t�r. <dt>M<dd>�mleci, ekran�n ortas�ndaki ilk bo�luk olmayan karaktere g�t�r. <dt>W<dd>�leri do�ru, noktalama i�aretlerini atlayarak, kelimenin ba��na git. <dt>b<dd>�mleci geriye do�ru bir kelime g�t�r;e�er imle� bir kelimenin ortas�ndaysa imleci o kelimenin ilk karakterine g�t�r. <dt>e<dd>�mleci ileriye do�ru bir kelime g�t�r;e�er imle� bir kelimenin ortas�ndaysa imleci o kelimenin son karakterine g�t�r. <dt>h<dd>�mleci bir karakter sola g�t�r. <dt>j<dd>�mleci bir sat�r a�a�� g�t�r. <dt>k<dd>�mleci bir sat�r yukar� g�t�r. <dt>l<dd>�mleci bir karakter sa�a g�t�r. <dt>w<dd>�mleci bir kelime ileri g�t�r; e�er imle� bir kelimenin ortas�ndaysa imleci ondan sonraki kelimenin ilk karakterine g�t�r.</dl> </p> <h4><a name="s-mvscr">�mleci Ekran Etraf�nda Dola�t�rma</a></h4> <p> <dl compact> <dt>^E<dd>Bir sat�r ileriye git. Say� verilirse o kadar sat�r ileri gidilir. <dt>^Y<dd>Bir sat�r geriye git. Say� verilirse o kadar sat�r geri gidilir. <dt>z<dd>Ekran� a�a��daki se�eneklerle tekrar �iz. "z<return>" bulunulan sat�r� ekran�n en ba��na getirir; "z." bulunulan sat�r� ekran�n ortas�na getirir; ve "z-" bulunulan sat�r� ekran�n sonuna getirir. 'z' komutundan �nce bir say� belirtirseniz, bulunulan sat�r� verilen numaral� sat�r yapar. �rne�in, "16z." 16 numaral� sat�r� ekran�n ortas�na getirir. </dl> </p> <h4><a name="s-repl">Yaz�lar�n Yerlerini De�i�tirme</a></h4> <p> <dl compact> <dt>C<dd>Bulunulan yerden sat�r�n sonuna kadar git. <dt>R<dd>Ekrandaki karakterleri, Escape tu�una bas�lana kadar, girilen karakterlerle de�i�tir. <dt>S<dd>B�t�n bir sat�r� de�i�tir. <dt>c<dd> <i>nerede</i> ye kadar de�i�tir. "cc" bulunulan sat�r� de�i�tirir. Say� verilirse o kadar sat�r de�i�tirilir. <dt>r<dd>�mlecin alt�ndaki karakteri de�i�tir. Birden fazla karakteri de�i�tirmek i�in bir say� verilmelidir. <dt>s<dd>�mlecin alt�ndaki karakteri de�i�tir ve komut moduna geri d�n. Birden fazla karakteri de�i�tirmek i�in bir say� verilmelidir. Yer de�i�tirilecek son karaktere bir dolar i�areti ($) yerle�tirilecektir.</dl> </p> <p> <p> <h4><a name="s-srch">Yaz� veya Karakter Arama</a></h4> <p> <p> <dl compact> <dt>,<dd>Son f, F, t veya T komutunu ters y�nde tekrarla. <dt>/<dd>/ dan sonra verilen katar� dosyan�n i�inde a�a�� do�ru ara. <dt>;<dd>Son f, F, t veya T komutunu tekrarla. <dt>?<dd>? den sonra verilen katar� dosyan�n i�inde yukar� do�ru ara. <dt>F<dd>'F' komutundan sonra verilen karakteri, bulunulan sat�rda geriye do�ru ara. E�er bulunursa imleci oraya hareket ettir. <dt>N<dd> '/' veya '?' ile verilen son aramay� tekrar et. Ters y�nde ara. <dt>T<dd>'T' komutundan sonra verilen karakteri, bulunulan sat�rda geriye do�ru ara. E�er bulunursa imleci ondan sonraki s�tuna hareket ettir. <dt>f<dd>'f' komutundan sonra verilen karakteri, bulunulan sat�rda ara. E�er bulunursa imleci oraya hareket ettir. <dt>n<dd> '/' veya '?' ile verilen son aramay� tekrarla. <dt>t<dd>'t' komutundan sonra verilen karakteri, bulunulan sat�rda ara. E�er bulunursa imleci o karakterden �nceki s�tuna hareket ettir. </dl> </p> <h4><a name="s-fmt">Karakter/Sat�r Bi�imlemelerini(Formatting) De�i�tirme</a></h4> <p> <dl compact> <dt>~ <dd>�mlecin alt�ndaki karakteri b�y�kse k���k harfe, k���kse b�y�k harfe �evir. <dt><<dd> <i>nerede</i> ye kadar olan sat�rlar� sola bir kayd�rma geni�li�i kayd�r. "<<" bulunulan sat�r� sola kayd�r�r ve yan�nda bir say� da verilebilir. <dt>><dd>i>nerede</i> ye kadar olan sat�rlar� sa�a bir kayd�rma geni�li�i kayd�r. ">>" bulunulan sat�r� sa�a kayd�r�r ve yan�nda bir say� da verilebilir. <dt>J<dd>Bulunulan sat�r� �ncekiyle birle�tir. Say� verilirse o kadar say�da sat�r birle�tirilir. </dl> </p> <h4><a name="s-save">Kaydetme ve ��kma </a></h4> <p> <dl compact> <dt>^\<dd> "VI" modundan ��k ve "EX" moduna gir. EX edit�r�, VI'�n �zerine kurulu oldu�u sat�r edit�r�d�r. VI a geri d�nmek i�in gereken EX komutu ":vi" d�r. <dt>Q<dd> "VI" modundan ��k ve "EX" modunda gir. ex edit�r� sat�r sat�r �al��an bir edit�rd�r. VI a geri d�nmek i�in gereken EX komutu ":vi" d�r. <dt>ZZ<dd>Bir de�i�iklik yap�lm��sa de��iklikleri kaydederek edit�rden ��k.</dl> </p> <h4><a name="s-misc">Derleme</a></h4> <p> <dl compact> <dt>^G<dd>Bulunulan dosya ad�n� ve dosyadaki yeri g�ster. <dt>^L<dd>Ekran� temizle ve yeniden g�ster. <dt>^R<dd>Yanl�� sat�rlar� silerek ekran� yeniden g�ster. <dt>^[<dd>Escape tu�u. Tamamlanmam�� komutlar� iptal eder. <dt>^^<dd>En son de�i�tirilen dosyaya geri d�n. <dt>!<dd>Bir kabuk �al��t�r. E�er bir <nerede> belirtilmi�se ! kullan�larak �al��t�r�lan program, bu belirtilen sat�r(lar)� standart girdi olarak kullan�r ve bu sat�rlar�n yerine �al��t�r�lan program�n standart ��kt�s�n� koyar. "!!" ise, bulunulan sat�r� standart girdi olarak alg�larak program� �al��t�r�r. �rne�in, "!4jsort" bulunulan imle� pozisyonundan itibaren be� sat�r alacak ve sort komutunu �al��t�racakt�r. Bu komutu yazd�ktan sonra, komutu girebilece�iniz bir tek �nlem i�areti olacakt�r. <dt>&<dd>�nceki ":s" komutunu tekrarla. <dt>.<dd>Dosyay� de�i�tiren son komutu tekrarla. <dt>:<dd>Bir EX edit�r� komutu yazmaya ba�la. Kullan�c� bir kez return tu�una bast���nda komut �al��t�r�lacakt�r.(A�a��daki b�l�me bek�n�z.) <dt>@<dd>Belirtilen tampondaki komutu yaz. <dt>U<dd>Bulunulan sat�r�, imle� sat�ra girmeden �nceki haline getir. <dt>m<dd>'m' komutundan sonra sonra belirtilen karakterle, bulundu�un pozisyonu i�aretle. <dt>u<dd>Dosyada yap�lan son de�i�ikli�i geri al. Tekrar 'u' yazmak de�i�ikli�i yeniden yapacakt�r.</dl> </p> <h4><a name="s-excmd">EX Komutlar�</a></h4> <p> VI edit�r�, EX adl� bir ba�ka edit�r �zerine in�aa edilmi�tir. EX edit�r� yaln�zca sat�r sat�r de�i�iklik yapar. VI Edit�r�nden bir EX komutu girmeye ba�lamak istiyorsan�z : komutunu kullan�rs�n�z. Burada verilen liste tam de�ildir; fakat verilen komutlar, en s�k kullan�lanlard�r. E�er belli komutlarla (�rne�in ":s" ve ":w") birden fazla sat�r de�i�ikli�e u�rat�lacaksa komuttan �nce de�i�iklik aral��� belirtilmelidir. �rne�in, 3 ten 15 e kadar olan sat�rlardaki "from" s�zc�klerini "this" ile de�i�tirmek i�in verilmesi gereken komut ��yledir: ":3,15s/from/this/g" . <dl compact> <dt>:ab string strings<dd>K�saltma. E�er VI'da string1 ile ilgili bir s�zc�k yaz�l�rsa edit�r kendili�inden onunla ba�lant�l� s�zc�kleri girer. �rne�in, ":ab usa United States of America" k�saltmas� her "usa" girili�inde "United States of America" kelimelerini yazacakt�r. <dt>:map keys new_seq<dd>Haritalama. Bu �zellik bir veya bir dizi tu�u bir veya bir dizi farkl� tu�a haritalar. <dt>:q<dd>VI'dan ��k. E�er de�i�iklik yap�lm��sa edit�r ekrana bir uyar� mesaj� yollayacakt�r. <dt>:q!<dd>De�i�iklikleri kaydetmeden VI'dan ��k. <dt>:s/<i>kal�p</i>/<i>de�i�en_kal�p</i>/<i>se�enekler</i><dd> Yer de�i�tirme. Bu, belirtilen "kal�p" � "de�i�en_kal�p" �n yerine koyar. Se�enekler olmadan yaln�zca kal�b�n ilk g�r�ld��� yerde de�i�ikli�i yapar. 'g' se�ene�i verilirse kal�b�n her bulundu�u yerde de�i�iklik yap�lacakt�r. �rne�in, ":1,$s/Dwayne/Dwight/g" komutu "Dwayne" bulunan her yere "Dwight" yazacakt�r. <dt>:set [all]<dd> VI ve EX i�in baz� �zelle�tirici komutlar katar. ":set all" komutu b�t�n olas� se�enekleri g�sterir. (Baz� se�enekler i�in, VI'� �zelle�tirme ile ilgili b�l�me bak�n�z.) <dt>:una string<dd>�nceden ":ab" ile tan�mlanm�� k�saltmay� kald�r�r. <dt>:unm keys<dd> ":map" taraf�ndan tan�mlanm�� haritaland�rmay� ortadan kald�r�r. <dt>:vi dosya_ad�<dd>Yeni bir dosya yazmaya ba�lar. E�er de�i�iklikler kaydedilmemi�se edit�r size bir uyar�da bulunacakt�r. <dt>:w<dd>Bulunulan dosyay� yaz. <dt>:w dosya_ad�<dd>Tamponun i�eri�ini dosya_ad� ile belirtilen dosyaya yaz. <dt>:w >> dosya<dd>Tamponun i�eri�ini dosya n�n sonuna ekle. <dt>:wq<dd>Tamponun i�eri�ini yaz ve ��k. </dl> </p> <A NAME="lfindex18"> </A> <H2>Kaynaklar</H2> <P> <UL> <LI>As�l URL: <A href="http://www.eng.hawaii.edu/Tutor/vi.html">www.eng.hawaii.edu/Tutor/vi.html</A><br> <LI>VI'�n be�enilen s�r�m� VIM'i indirmek i�in, <A href="http://www.vim.org">www.vim.org</A><br> <LI>B�t�n soru ve yorumlar�n�z i�in, <A href="mailto:ben@wiliki.eng.hawaii.edu">ben@wiliki.eng.hawaii.edu</A> (Ben Y. Yoshino)<br> </UL> Son g�ncellenme 10 Aral�k 1996, 1996<br> G�ncellenme 27 Temmuz 1995 <br> G�ncellenme 3 Ekim 1994<br> Copyright © 1996 University of Hawaii, College of Engineering, Computer Facility<br>T�m haklar� mahfuzdur.</p> <!-- vim: set sw=4 ts=4 et: --> <A NAME="talkback"> </a> <h2>Bu makale i�in g�r�� bildirme ve destek formu </h2> Her makalenin kendi g�r�� bildirim sayfas� vard�r. Bu sayfada bir yorumunuzu iletebilir veya di�er okuyucular�n yorumlar�n� okuyabilirsiniz: <center> <table border="0" CELLSPACING="2" CELLPADDING="1"> <tr BGCOLOR="#C2C2C2"><td align=center> <table border="3" CELLSPACING="2" CELLPADDING="1"> <tr BGCOLOR="#C2C2C2"><td align=center> <A href="http://cgi.linuxfocus.org/cgi-bin/lftalkback?anum=153&lang=en"><b> g�r�� bildirim sayfas� </b></a> </td></tr></table> </td></tr></table> </center> <HR size="2" noshade> <!-- ARTICLE FOOT --> <CENTER><TABLE WIDTH="95%"> <TR><TD ALIGN=CENTER BGCOLOR="#777777"> <A HREF="../../common/lfteam.html"><FONT COLOR="#FFFFFF">Sayfalar�n kal�c�l��� LinuxFocus Edit�r Tak�m� taraf�ndan sa�lanmaktad�r. </FONT></A> <BR><FONT COLOR="#FFFFFF">© Ben Y. Yoshino <BR>LinuxFocus.org 2000</FONT> <BR><a href="http://linuxfocus.linuxbox.com/cgi-bin/lfcomment?lang=en&article=article153.shtml" target="_TOP"><FONT COLOR="#FFFFFF">LinuxFocus hakk�ndaki hata mesajlar�n� veya yorumlar�n�z� iletmek i�in buraya t�klay�n.</FONT></A><BR></TD> <!-- OLD FORMAT, NO TRANSLATION INFO --> </TR></TABLE></CENTER> <p><font size=1>2000-05-01, generated by lfparser version 1.5</font></p> </BODY> </HTML>