<!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> &nbsp;<A href="../../Castellano/May2000/article153.shtml">Castellano</a> &nbsp;<A href="../../Deutsch/May2000/article153.shtml">Deutsch</a> &nbsp;<A href="../../Francais/May2000/article153.shtml">Francais</a> &nbsp;<A href="../../Nederlands/May2000/article153.shtml">Nederlands</a> &nbsp;<A href="../../Russian/May2000/article153.shtml">Russian</a> &nbsp;<A href="../../Turkce/May2000/article153.shtml">Turkce</a> &nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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>&lt;&lt;<dd>Bulunulan sat�r� bir kayd�rma geni�li�i sola kayd�r�r.

<dt>&gt;&gt;<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">&nbsp;</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>&lt;<dd>Birs�zc���n ba�lang�c�n� veya sonunu bulmak i�in "\" ard�ndan

bir ifade yaz�n.�rne�in: /\&lt;kaz\&gt; yaln�zca  kaz s�zc���n� bulur;  ikaz

ve kaza gibi s�zc�kleri bulmaz.

 <dt>&gt;<dd>Yukar�daki '&lt;' 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>

 &quot;ic&quot 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">&nbsp;</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>&lt;&lt;</tt> ve <tt>&gt;&gt;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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">&nbsp;</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&lt;return&gt;"

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>&lt;<dd> <i>nerede</i> ye kadar olan sat�rlar� sola

bir kayd�rma geni�li�i kayd�r.    "&lt&lt" bulunulan sat�r� sola kayd�r�r ve

yan�nda bir say� da verilebilir. 



 <dt>&gt;<dd>i>nerede</i> ye kadar olan sat�rlar� sa�a

bir kayd�rma geni�li�i kayd�r.  "&gt;&gt;"  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>&amp;<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 &gt;&gt; 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">&nbsp;</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 &#169; 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">&nbsp;</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>&nbsp;g�r�� bildirim sayfas� &nbsp;</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">&copy; 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>