ETKİLİ vi EDİTÖR KULLANIMI
- TEMEL KONUMLAR
- Komut konumu Bu konumda basılan bir tuş ekranda görüntülenmez ama bir işlevi vardır. O işlev gerçekleşir.
- Giriş/Düzeltme konumu Bu konuma 'i', 'a', veya 'o' komutları ile girilir. Bu konumda iken basılan her tuş ekranda görüntülenir. Bu konumdan Esc tuşu ile çıkılır.
- Satır Editörü Konumu ':' komutu ile bu konuma geçilir. Bu komunda yazılan komutların işlemi bitince vi editör tekrar komut konumuna geri döner.
- TEMEL KOMUTLAR
- KÜTÜK İŞLEMLERİ
- vi EDİTÖRDE İmleç YERİNİ DEĞİŞTİRME KOMUTLARI
- EKRAN AYARLARINA İLİŞKİN KOMUTLAR
- İŞARETLEME ve İŞARETE GERİ GİTME KOMUTLARI
- SATIR AYARLAMA KOMUTLARI
- KARAKTER AYARLAMA KOMUTLARI
- SÖZCÜK, CÜMLE, BÖLÜM ve PARAGRAF AYARLAMA KOMUTLARI
- GİRİŞ KONUMU DÜZELTMELERİ
- GİRİŞ ve DÜZELTME KONUMU KOMUTLARI
- İŞLEMLER
- ÖZEL İŞLEMLER
- KES ve YAPIŞTIR KOMUTLARI
- GERİ ALMA ve YİNELEME KOMUTLARI
Bir komut başlamadan girilen rakamlar vi editörün o komutu kaç kez tekrarlayacağını belirtir.
| Ok tuşları | İmleç (cursor) hareketi |
| h j k l | Ok tuşları yerine imleç hareketi |
| i<text>Esc | bir metini araya girme |
| cw<yeni>Esc | bir sözcüğü değiştirme |
| x | bir karakter silme |
| dw | bir sözcük silme |
| dd | bir satır silme |
| u | son işlemi geri alma |
| ZZ | vi editorden saklayarak çıkma |
| :q! | vi editörden saklamadan çıkma |
| ^D ^B ^F | ileri ve geri sayfa kaydırma |
| :w | kütüğe yazma |
| :w! | kütüğü ezerek yazma |
| :q | editörden çıkma |
| :q! | değişiklikleri atarak editörden çıkma |
| :e <ad> | ad adlı kütüğü edit etme |
| :e + <ad> | ad adlı kütüğü sonundan edit etme |
| :e + n | kütüğü n. satırdan edit etme |
| :e # | başka bir kütüğü edit etme |
| :e! # | değişiklikleri atarak başka bir kütüğü edit etme |
| :w <ad> | ad adlı kütüğe yazma |
| :w!<ad> | ad adlı kütüğü ekerek yazma |
| :sh | shell komutuna geçiş (exit ile geri dönülür). |
| :!<komut> | bir komutu çalıştırma ve editöre geri dönme |
| :n | bir sonraki kütüğü edit ortamına alma |
| ^G | kütük adını ve imleçin satır numarasını görüntüleme |
| :tag <tag> | imleç yerine tag koyma |
| :pop | bir önceki tag yerine dönme |
| ^F | Bir sayfa ileri kaydır. |
| ^B | Bir sayfa geri kaydır. |
| ^D | Yarım sayfa ileri kaydır. |
| ^U | Yarım sayfa geri kaydır. |
| /pat | verilen karakter dizisini ileriye doğru arama |
| ?pat | verilen karakter dizisini geri doğru arama |
| N | arama yönünü değiştirme |
| /pat/+n | ileriye doğru aranan ilk diziden n satır sonrasına gitme |
| ?pat/-n | geriye doğru aranan ilk diziden n satır öncesine gitme |
| ]] | bir sonraki işleve gitme |
| [[ | bir önceki işlev gitme |
| ( | cümlenin başına gitme |
| ) | cümlenin sonuna gitme |
| { | paragraf başlangıcına gitme |
| } | paragraf sonuna gitme |
| % | birbirine karşıt gelen { } veya ( ) ikilisini bulma |
| ^] | imleçden sonraki sözcüğü tag etme |
| ^T | bir önceki tag yerine geri dönme. |
| ^L | sayfayı tekrar görüntüle |
| ^R | sayfayı tekrar görüntüle (^L çalışmaz ise) |
| z | imleç satırı en üstte olacak şekilde sayfayı yeniden |
| görüntüle | |
| z- | imleç satırı en altta olacak şekilde sayfayı yeniden |
| görüntüle | |
| z. | imleç satırı ortada olacak şekilde sayfayı yeniden |
| görüntüle | |
| /pat/z- | pat ile bulunan satırı en altta olacak şekilde sayfayı |
| yeniden görüntüle. | |
| zn. | n satırlık pencere kullan. |
| ^E | bir satır aşağıya kaydır. |
| ^Y | bir satır yukarıya kaydır. |
| `` | imleçin bir önceki işarete geri gönderme |
| '' | imleçin bir sonraki ilk boşluk olmayan yere götürme. |
| mx | imleç yerini x küçük harf alanına sakla |
| `x | imleç yerini x alanında saklanan imleç yerine götür. |
| 'x | imleçi x alanında saklanan imleç yerindeki satırın |
| ilk boşluk olmayan karakterine götür. |
| H | imleçi ekrandaki ilk satıra götür. |
| L | imleçi ekrandaki son satıra götür. |
| M | imleçi ekrandaki orta satıra götür. |
| + | bir sonraki satıra git. |
| - | bir önceki satıra git. |
| CR | bir sonraki satırın başına git. |
| Aşağı Ok j | bir sonraki satırın aynı kolonuna git. |
| Yukarı Ok k | bir önceki satırın aynı kolonuna git. |
| ^ | satırdaki ilk boşluk olmayan karaktere git. |
| 0 | satır başına git |
| $ | satır sonuna git |
| l Sağ Ok | bir karakter sağa git |
| h Sol Ok | bir karakter sola git |
| ^H | bir karakter geri git |
| boşluk | bir karakter sağa git |
| Fx | bir önceki x karaterini bul |
| tx | x karakterinden önceki karaktere git. |
| Tx | x den sonraki karaktere git. |
| ; | Fx, tx veya Tx işlemini tekrarla |
| , | Fx, tx veya Tx işleminin tersini tekrarla |
| n| | n. kolona git |
| % | karşıklı { } veya ( ) tipi parantezlere git. |
| w b e | sonraki sözcüğe, önceki sözcüğe, sözcük sonuna git |
| ) ( | sonraki cümleye, önceki cümleye git. |
| } { | sonraki paragrafa, önceki paragrafa git |
| W B E | sonraki, önceki boşlukla ayrılmış sözcüğe git |
| boşlukla ayrılmış sözcüğün son karakterine git. |
| ^H | Backspace |
| ^W | bir sözcük silme |
| \ | "erase", "kill" karakteri için başlangıç |
| Esc, Del | giriş konumundan çıkış |
| ^D | bir karakter geri git. |
| ^^D 0^D | (^) işaretinden sonra ^D satı başına git demektir. |
| ^T | satır başına içerlek boşluk bırak |
| ^V | yazılamayan karakterleri görüntülemek veya girmek |
| için başlangıç |
| a | imleç sonuna ekle |
| A | satır sonuna ekle |
| i | imleç yerine gir |
| I | satır başına ilk boşluk olmayan karakterden sonra gir |
| o | imleç altına bir boş satır aç |
| O | imleç üzerine bir boş satır aç |
| rx | imleç karakterini x karakteri ile değiştir |
| R<text>Esc | imleç yerinden text kadar metni değiştirme. |
| d | sil |
| c | değiştir |
| y | bir satırı belleğe al |
| < | sol shift |
| > | sağ shift |
| ! | bir komut ile filitrele |
| C | satırın kalanını değiştir |
| D | satırın kalanını sil |
| s | bir karakteri değiştir |
| S | satırları değiştir |
| J | satırları birleştir |
| x | bir karakter sil |
| X | imleçden önceki karakteri sil |
| Y | satırları belleğe al |
| <n>yy | n satırı belleğe al |
| <n>yl | n karakteri belleğe al |
| p | imleçin devamına bellektekini kopyala |
| P | imleçin önüne bellektekini koplaya |
| "xp | x belleğindekini kopyala |
| "xy | x belleğine al |
| "xd | silerken x belleğine al |
| u | son değişiklik işlemini geri al |
| U | son satırı eski haline getir |
| . | son değişikliği tekrarla |
| "dp | sondan d satır önceki satır silmeyi geri getir. |
SATIR EDİTÖRÜ KOMUTLARI
Genelde, bir satır editöründe komut :
,s/eski/yeni/g
biçimindedir. Bu örnekte editör eski karakter dizisini yenisi ile
değiştirir.
Genel satır editörü komutları kalıbı :
[adres [,adres]]komut[parameterler]
biçimindedir. Bu kalıptaki adres'ler işlemin yapılacağı satırların
numaralarını gösterir.
SATIR ADRESLEMESİ
Bir adres kütük içinde satırın başlangıç satırından uzaklığını tanımlar. Komut içinde son satır belirtilmez ise, yalnız virgül kullanımı son satırı gösterir. Satır adresleri aşağıdaki listeden oluşturulurken satırlara sayısal değerler de verilebilir.
Aşağıdaki tabloda satır adresi olarak kullanılan simgeler gösterilmiştir.
| . | imleçin bulunduğu satır. |
| $ | Kütüğün son satırı. |
| n | Kütüğün n. satırı n [0,$] arasında bir değerdir. |
| - ^ | Önceki satır. Bu değer -1 ile aynı anlama gelir. |
| -n ^n | Önce n. satır. Burada n sıfırdan büyük bir sayıdır. |
| + | Bir sonraki satır. Bu değer +1 ile aynı anlama gelir. |
| +n boşluk n | Sonraki n. satır. Burada n sıfırdan büyük bir sayıdır. |
| , % | İlk satırdan sonuna kadar tüm satırlar. 1,$ ile aynı anlama gelir. |
| ; | imleç satırından sonuna kadar tüm satırlar. .,$ ile aynı anlama gelir. |
| /re/ | içinde regular expression re olan bir sonraki satır. |
| ?re? | içinde regular expression re olan bir önceki satır. |
| 'lc | Daha önce mark komutu ile işaretlenmiş satır. |
DÜZENLİ DEYİMLER (REGULAR EXPRESSIONS)
"Düzenli Deyimler" metin içindeki bir karakter dizisini aramak için kullanılan deyimlerin genel adıdır.
Düzenli deyimler, yalnız karakter dizisi olmayıp, bir kümede yer alan dizileri de tanımlayabilir. Bu durumda kurala uyan karakter dizileri aranmış olur. Bir satırda aynı kümeye/sınıfa giren birden çok karakter dizisi bulunursa, önce soldan ilki seçilir.
Aşağıdaki simgeler Kurallı Deyim oluşturmada kullanılır.
| c | Karakter c `{', '}', `(', `)', `<' ve `>' değilse kendisini bulur. |
| \c | Bu karakter `{', '}', `(', `)', `<', `>', `b', 'B', `w', `W', `+', ve `?' değilse kendisini bulur. |
Herhangi bir karakteri bulmak
| [char-class] |
bu karakter kümesine uygun ilk karakteri bulur. Bir karakter kümesi,
yazılan iki karakter arasındaki artan sırada karakterleri tanımlar.
Örneğin a'dan z'e tüm küçük harfler kümesi için [a-z] yazmak gerekir.
Aşağıdaki şekilde karakter kümeleri tanımlama olanağı vardır :
[:alnum:] [:cntrl:] [:lower:] [:space:] Eğer küme tanımında ilk karakter '-' ise kendisini arar. Patterns in char-class of the form: Aşağıdaki gibi tanımlanmış kümelerde [.col-elm.] veya, [=col-elm=] "col-elm" ülke kodlamasına göre sıralanmış karakterleri tanımlar. |
| [^char-class] | Yeni satır hariç, belirtilen küme içine girmeyen ilk karakteri bulur. |
| ^ | Eğer `^' deyimin ilk karakteri ise satır başından arama yapar. Yoksa karakterin kendisini arar. |
| $ | Eğer `$' deyimin son karakteri ise satır sonuna göre arama yapar, yoksa kendisini arar. |
| \(re\) |
Bir alt deyimi tanımlar. Bazen alt deyim boş olabilir. İçiçe alt
deyim tanımlanabilir. Örneğin
`\(a.c\)\1' `abcabc', fakat `abcadc' bulunamaz. |
| * | bir deyimin peşinden gelen ilk karakteri bulur. Örneğin `b*' ile `abbb' bulunur, ancak `bbb' bulunamaz. |
| \{n,m\} \{n,\} \{n\} | bir karakterlik deyimi en az n kez, en çok m kez tekrarlandıktan sonra bulur. |
| \< \> | bir karakterlik deyimi kelime başına (\<) veya kelime sonuna (\>) göre arar. |
Aşağıdaki geliştirilmiş işlem kodlarının başındaki '\', işlemleri diğer editör komutlarından ayırmak için konmuştur.
|
\` \' | Koşulsuz olarak satır başını (\`) veya sonunu (\') arar. |
| \? | kendisinden önce gelen deyim veya altdeyime uygun ilk karakteri bulur. |
| \+ | kendisinden sonra gelen ve birden çok tekrarlanan ilk deyim veya altdeyime uygun karakteri bulur. |
| \b | bir kelimenin başını veya sonunu bulur. Yani `\bhello\b' biçimindeki bir deyim `\<hello\>' ile aynıdır. Ancak `\b\b'i geçerli bir deyim iken `\<\>'değildir. |
| \B | Bir kelime içindeki boşluğu arar. |
| \w | bir kelime içindeki herhangi bir harfi arar. |
| \W | kelime içinde olmayan bir karakteri bulur. |
KOMUTLAR (COMMANDS)
Tüm editör komutları tek karakterlidir. Ancak bazıları için paramterler tanımlanabilir. Bir komut için bir satır yeterli olmaz ise satırın devam ettiğini göstermek için (\) kullanılır.
Genelde her satır için bir komut tanımlanabilir. Ancak her komuttan önce yazma ve listeleme komutu kullanılabilir.
^C yazılan satırı durdurur ve editörü komut konumuna geri döndürür.
editör için aşağıdaki komutlar kullanılabilir.
| (.)a | metni belirtilen satırın arkasına ekler. | |
| (.,.)c | Belirtilen satırdaki bilgiyi değiştirir. | |
| (.,.)d | adreslenen satırlar arasını siler. | |
| e file | bir kütüğü edit ortamına alır ve varsayılan kütük adını belirler. | |
| e !command | !command komutu ile oluşan çıktı satırını edit ortamına alır. | |
| E file | Bir kütüğü koşulsuz olarak edit ortamına alır. | |
| f file | Varsayılan kütük adını "file" yapar. | |
| (1,$)g/re/command-list |
Komut listesini belirtilen satırlar arasında, belirtilen deyime
uygun gelen yerlerde uygular.
komut listesindeki komutların herbiri ayrı satırlarda olmalıdır. Ancak en son komut (\) ile son bulmalıdır. | |
| (1,$)G/re/ |
adreslenen satırlarda deyime uygun bilgiyi etkileşimli olarak
edit etmek içinkullanılır.
komut listesi kalıbı 'g' komutundaki gibidir. | |
| H | Bir önceki deyimin yazılıp yazılmamasını değiştirir (yaz/yazma gibi) | |
| h | Son hata açıklamasını yazmak için kullanılır. | |
| (.)i | Aktif satırın önüne yeni satır eklemek için kullanılır. | |
| (.,.+1)j | adreslenmiş satırları birleştirir. | |
| (.)klc | içinde lc ile tanımlanmış küçük harf bulunan satırı işaretler. | |
| (.,.)l | Adreslenmiş satırları listeler. | |
| (.,.)m(.) | adreslenmiş satırları belirtilen satırdan sonrasına taşır. | |
| (.,.)n | Satırları satır numaraları ile yazdırır. | |
| (.,.)p | Belirtilen satırları yazdırır. | |
| P | Komut işaretini kapatır veya açar. | |
| q | editörden çıkmak için kullanılır. | |
| Q | editörden koşulsuz çıkışı sağlar. | |
| ($)r file | kütüğü okuyup belirtilen satırdan sonrasına taşır. | |
| ($)r !command | !command ile çalıştırılan komutun çıktısını belirtilen satırdan sonarsına okur. | |
|
(.,.)s/re/replacement/ (.,.)s/re/replacement/g (.,.)s/re/replacement/n |
Belirtilen satırlar arasında, belirtilen deyime (re) uyan metinleri
belirtilen
deyimle (replacement) değiştirir.
re ve replacement yeni satır karakteri veya boşluk dışında bir karakter olabilir. Escape kullanılmamış & replacement içinde varsa re deyimine uyumlu metini tekrarlar. `\m' karakter sırası kullanılırsa ve burada m [1-9] arasında bir değerse, değişiklik m tane önce yapılan değişikliğe uyan metin ile değiştirilir. Eğer replacement bir tane `%' den oluşuyorsa bir önceki değiştirmeden kullanılan replacement metni kullanılacaktır. Eğer (\) kullanılırsa yeni satır karakteri metin içine yazılabilir. | |
| (.,.)s | Son değişikliği tekrarlar. | |
| (.,.)t(.) | belitilen satırları komuttan sonra gösterilen satırın arkasına kopyalar. | |
| u | Son komutu geri alır. | |
| (1,$)v/re/command-list | Belirtilen satırlar için re deyimine uymayan satırlarda komut listesini uygular. | |
| (1,$)V/re/ | Belirtilen satırlar için re deyimine uymayan satırlarda etkileşimli düzeltme yapılmasını sağlar. | |
| (1,$)w file | Belitilen satırların "file" adlı kütüğe yazılmasını sağlar. | |
| (1,$)wq file | Belitilen satırların "file" adlı kütüğe yazılmasını sağlar. Ve sonra editörü bitirir. | |
| (1,$)w !command | Belirtilen satırların !command komutu ile çalışacak programa girdi olmasını sağlar. | |
| (1,$)W file | Belirtilen satırların "file" adlı kütüğün sonuna yazılmasını sağlar. | |
| (.)x | Belirtilen satırdan sonrasına kesme tampon alanındaki bilginin kopyalanmasını sağlar. | |
| (.,.)y | Belirtilen satırları kesme tampon alanına koplayamaya yarar. | |
| (.+1)zn | Belirtilen adresden başlayarak her seferinde n satır kaydırılmasını sağlar. | |
| !command | shell açarak komutu çalıştırır. | |
| (.,.)# | Bir açıklamayı başları. Bu satırda bundan sonra yazılan herşey açıklama olarak kullanılır. | |
| ($)= | Belirtilen satırın satır numarasını yazdırır. | |
| (.+1)newline |
Adreslenen satırın satır numarasını yazar ve imleç o satıra gider.
Ana Sayfaya Teknik Bilgiler Sayfasina |

