Özet
vim [seçenekler] [dosya ...]
vim [seçenekler] -
vim [seçenekler] -t etiket
vim [seçenekler] -q [hata_dosyası]
ex
view
gvim gview evim eview
rvim rview rgvim rgview
Açıklama
Vim, Vi ile yukarıya doğru uyumlu bir metin düzenleyicisidir. Her türlü düz metni düzenlemek için kullanılabilir ve özellikle programları düzenlemek için yararlıdır.
Vi'a kıyasla çok seviyeli geri alma, çoklu pencere ve arabellek, sözdizimi vurgulama, komut satırı düzenleme, dosya adı tamamlama, çevrim içi yardım ve görsel seçim gibi birçok geliştirme sunar.
Vim ile Vi arasındaki farkların özeti için Vim içinde :help vi_diff.txt komutunu kullanın.
Vim çalışırken :help komutu aracılığıyla çevrim içi yardım sisteminden kapsamlı yardım alınabilir.
Vim çoğunlukla tek bir dosyayı düzenlemek için şu şekilde başlatılır:
vim dosya
Daha genel kullanım:
vim [seçenekler] [dosya_listesi]
Dosya listesi belirtilmezse düzenleyici boş bir arabellekle başlar.
Başlatma Biçimleri
dosya ...: Dosya adları listesi. İlk dosya geçerli dosya olur ve arabelleğe okunur. İmleç arabelleğin ilk satırına konumlandırılır. Diğer dosyalara:nextkomutuyla geçilebilir. Tire (-) ile başlayan bir dosyayı düzenlemek için dosya listesinin önüne--getirin.-: Düzenlenecek dosya standart girdiden okunur. Komutlar, bir tty olması gereken standart hatadan okunur.-t {etiket}: Düzenlenecek dosya ve ilk imleç konumu bir etikete bağlıdır.{etiket},tagsdosyasında aranır; ilişkili dosya geçerli dosya haline gelir ve ilişkili komut yürütülür. Bu genellikle C programlarında fonksiyon adına atlamak için kullanılır. Ayrıntılar için:help tag-commandskomutuna bakın.-q [hata_dosyası]: Quickfix modunda başlatır.[hata_dosyası]okunur ve ilk hata görüntülenir. Belirtilmezse dosya adıerrorfileseçeneğinden alınır. Sonraki hatalara:cnkomutuyla geçilebilir. Ayrıntılar için:help quickfixkomutuna bakın.
Çağrı Adına Göre Davranış
Vim, çağrıldığı komutun adına bağlı olarak farklı davranır; yürütülebilir dosya aynı olabilir.
vim: Normal başlatma yoludur; her şey varsayılandır.ex: Ex modunda başlar.:vikomutuyla Normal moda geçilebilir. Aynı işlem-ebağımsız değişkeniyle de yapılabilir.view: Salt okunur modda başlar. Dosyaları yazmaya karşı korunursunuz. Aynı işlem-Rbağımsız değişkeniyle de yapılabilir.gvim,gview: GUI sürümü olarak yeni pencere açar. Aynı işlem-gbağımsız değişkeniyle de yapılabilir.evim,eview: Kolay modda GUI sürümü olarak yeni pencere açar. Aynı işlem-ybağımsız değişkeniyle de yapılabilir.rvim,rview,rgvim,rgview: Yukarıdakiler gibidir, ancak kısıtlamalar içerir. Kabuk komutlarını çalıştırmak veya Vim'i askıya almak mümkün değildir. Aynı işlem-Zbağımsız değişkeniyle de yapılabilir.
Seçenekler
Seçenekler dosya adlarından önce veya sonra herhangi bir sırayla verilebilir. Parametresi olmayan seçenekler tek tire (-) işaretinden sonra birleştirilebilir.
+[sayı]: İlk dosya için imlecisayısatırına konumlandırır.sayıbelirtilmezse imleç son satıra konumlandırılır.+/{şablon}: İlk dosya için imleci{şablon}arama şablonunun ilk eşleştiği satıra konumlandırır. Kullanılabilir arama şablonları için:help search-patternkomutuna bakın.+{komut},-c {komut}:{komut}, ilk dosya okunduktan sonra yürütülür ve Ex komutu olarak yorumlanır. Komut boşluk içeriyorsa çift tırnak içine alınmalıdır. Örnek:vim "+set si" main.c. En fazla 10 adet+veya-ckomutu kullanılabilir.-A: Vim ARABIC desteği ve Arapça klavye eşlemesiyle derlenmişse Vim'i Arapça modunda başlatır vearabicseçeneğini ayarlar. Aksi halde hata verir ve Vim sonlanır.-b: İkili moddur. İkili veya yürütülebilir dosya düzenlemeyi mümkün kılan birkaç seçenek ayarlanır.-C: Uyumlu moddur.compatibleseçeneğini ayarlar ve.vimrcdosyası bulunsa bile Vim'in çoğunlukla Vi gibi davranmasını sağlar.-d: Fark modunda başlatır. İki ila sekiz dosya adı verilmelidir. Vim tüm dosyaları açar ve aralarındaki farkları gösterir;vimdiff(1)gibi çalışır.-d {aygıt},-dev {aygıt}:{aygıt}değerini terminal olarak kullanmak üzere açar. Yalnızca Amiga'da geçerlidir.-D: Hata ayıklama modudur. Bir betikten ilk komutu yürütürken hata ayıklama moduna geçer.-e: Vim'i Ex modunda başlatır; yürütülebilir dosyanın adıexolarak çağrılmış gibi davranır.-E: Vim'i geliştirilmiş Ex modunda başlatır; yürütülebilir dosyanın adıeximolarak çağrılmış gibi davranır.-f: Ön plan modudur. GUI sürümü için Vim alt süreç oluşturup başlatıldığı kabuktan ayrılmaz. Düzenleme oturumunun bitmesini bekleyen programlar tarafından çağrıldığında kullanışlıdır.-F: Vim FKMAP desteği ve Farsça klavye eşlemesiyle derlenmişse Farsça modda başlatır vefkmapilerightleftseçeneklerini ayarlar. Farsça desteği 8.1.0932 yamasıyla kaldırılmıştır.-g: Vim GUI desteğiyle derlenmişse GUI'yi etkinleştirir. GUI desteği yoksa hata verir ve Vim sonlanır.-H: Vim RIGHTLEFT desteği ve İbranice klavye eşlemesiyle derlenmişse İbranice modda başlatır vehkmapilerightleftseçeneklerini ayarlar.-i {viminfo}: Varsayılan~/.viminfoyerine okunacak veya yazılacak viminfo dosyasını belirtir.NONEverilirse.viminfokullanımı atlanır.-l: Lisp modudur.lispveshowmatchseçeneklerini açar.-L:-rile aynıdır.-m: Dosyaları değiştirmeyi devre dışı bırakır.writeseçeneğini sıfırlar. Arabellek değiştirilebilir, ancak dosya yazılamaz.-M: Değişikliklere izin vermez.modifiablevewriteseçenekleri sıfırlanır; böylece değişiklik yapılamaz ve dosyalar yazılamaz.-n: Takas dosyası kullanılmaz. Çökme sonrasında kurtarma mümkün olmaz. Çok yavaş ortamlarda dosya düzenlerken kullanışlı olabilir.:set uc=0ile de yapılabilir,:set uc=200ile geri alınabilir.-N: Uyumsuz moddur.compatibleseçeneğini sıfırlar..vimrcdosyası olmasa bile Vim'in biraz daha iyi davranmasını, ancak Vi ile daha az uyumlu olmasını sağlar.-nb: NetBeans için düzenleyici sunucusu olur. Ayrıntılar için belgelere bakın.-o[N]: Üst üste yığılmışNpencere açar.Nbelirtilmezse her dosya için bir pencere açar.-O[N]: Yan yanaNpencere açar.Nbelirtilmezse her dosya için bir pencere açar.-p[N]:Nsekme sayfası açar.Nbelirtilmezse her dosya için bir sekme sayfası açar.-P {üst-başlık}: Yalnızca Win32 GUI için üst uygulamanın başlığını belirtir. Mümkün olduğunda Vim uygulama içinde bir MDI penceresinde çalışır.-r: Takas dosyalarını, kurtarma amacıyla kullanma bilgileriyle birlikte listeler.-r {dosya}: Kurtarma modudur. Takas dosyası, çöken bir düzenleme oturumunu kurtarmak için kullanılır. Ayrıntılar için:help recoverykomutuna bakın.-R: Salt okunur moddur.readonlyseçeneği ayarlanır. Arabellek düzenlenebilir, ancak kazara dosyanın üzerine yazılması engellenir. Üzerine yazmak için:w!gibi ünlemli Ex komutu kullanılabilir.-R,-nseçeneğini de içerir.-s: Sessiz moddur. Yalnızcaexolarak başlatıldığında veya-sseçeneğinden önce-everildiğinde geçerlidir.-s {girdi_betiği}:{girdi_betiği}dosyasını okur. Dosyadaki karakterler klavyeden yazılmış gibi yorumlanır. Aynı işlem:source! {girdi_betiği}komutuyla da yapılabilir.-S {dosya}:{dosya}, ilk dosya okunduktan sonra kaynak olarak alınır.-c "source {dosya}"ile eşdeğerdir.{dosya}-ile başlayamaz. BelirtilmezseSession.vimkullanılır; bu yalnızca-Sson bağımsız değişken olduğunda çalışır.-T {terminal}: Kullanılan terminalin adını Vim'e bildirir. Yalnızca otomatik algılama çalışmadığında gerekir.-u {vimrc}: Başlatma işlemleri için{vimrc}dosyasındaki komutları kullanır. Diğer başlatma işlemleri atlanır.NONEverilirse tüm başlatma işlemleri atlanır. Ayrıntılar için:help initializationkomutuna bakın.-U {gvimrc}: GUI başlatma işlemleri için{gvimrc}dosyasındaki komutları kullanır. Diğer GUI başlatma işlemleri atlanır.NONEverilirse tüm GUI başlatma işlemleri atlanır.-v: Vim'i Vi modunda başlatır; yürütülebilir dosyanın adıviolarak çağrılmış gibi davranır. Yalnızca yürütülebilir dosyaexolarak çağrıldığında etkilidir.-V[N]: Ayrıntılı moddur. Hangi dosyaların kaynak olarak alındığı ve viminfo dosyasının okunup yazılması hakkında mesajlar verir. İsteğe bağlıN,verboseseçeneğinin değeridir. Varsayılan değer10şeklindedir.-V[N]{dosya_adı}:-Vgibidir veverbosefileseçeneğini{dosya_adı}olarak ayarlar. Mesajlar görüntülenmez, bu dosyaya yazılır.{dosya_adı}rakamla başlamamalıdır.-w{sayı}:windowseçeneğini{sayı}değerine ayarlar.-w {çıktı_betiği}: Yazılan tüm karakterleri Vim'den çıkana kadar{çıktı_betiği}dosyasına kaydeder.vim -sveya:source!ile kullanılacak betik dosyası oluşturmak için kullanışlıdır. Dosya varsa karakterler sonuna eklenir.-W {çıktı_betiği}:-wseçeneği gibidir, ancak mevcut dosyanın üzerine yazar.-x: Vim şifreleme desteğiyle derlenmişse dosyaları yazarken şifreleme kullanır ve şifreleme anahtarı ister.-X: X sunucusuna bağlanmaz. Terminalde başlatma süresini kısaltır, ancak pencere başlığı ve pano kullanılamaz.-Y: Wayland birleştiricisine bağlanmaz.-y: Vim'i kolay modda başlatır; yürütülebilir dosyaevimveyaeviewolarak çağrılmış gibi davranır. Vim'in tıkla-ve-yaz tarzı bir düzenleyici gibi davranmasını sağlar.-Z: Kısıtlı moddur. Yürütülebilir dosyanınrile başlaması gibi çalışır.--: Seçeneklerin sonunu belirtir. Bundan sonraki bağımsız değişkenler dosya adı olarak ele alınır.-ile başlayan dosya adını düzenlemek için kullanılabilir.--clean: Kişisel yapılandırma, vimrc, eklenti vb. kullanmaz. Bir sorunun temiz Vim kurulumuyla tekrarlanıp tekrarlanmadığını görmek için kullanışlıdır.--cmd {komut}:-ckullanmak gibidir, ancak komut herhangi bir vimrc dosyası işlenmeden hemen önce yürütülür.-ckomutlarından bağımsız olarak en fazla 10 adet kullanılabilir.--echo-wid: Yalnızca GTK GUI için pencere kimliğini standart çıktıya yazar.--gui-dialog-file {ad}: GUI kullanırken iletişim kutusu göstermek yerine iletişim kutusunun başlığını ve mesajını{ad}dosyasına yazar. Test işlemleri için kullanışlıdır. GUI olmadan yoksayılır.--help,-h,-?: Komut satırı bağımsız değişkenleri ve seçenekleri hakkında kısa yardım sunar, ardından Vim sonlanır.--literal: Dosya adı bağımsız değişkenlerini literal alır ve joker karakterleri genişletmez. Kabuğun joker karakterleri genişlettiği Unix üzerinde etkisi yoktur.--log {dosya_adı}: Vimevalvechannelözellikleriyle derlenmişse günlük kaydını başlatır ve girdileri{dosya_adı}dosyasına yazar.--nofork: Ön plan modudur. GUI sürümü için Vim alt süreç oluşturup başlatıldığı kabuktan ayrılmaz.--noplugin: Eklentilerin yüklenmesini atlar.-u NONEbunu içerir.--not-a-term: Vim'e girdinin veya çıktının terminale bağlı olmadığının bilindiğini belirtir. Uyarıyı ve iki saniyelik gecikmeyi önler.--remote: Bir Vim sunucusuna bağlanır ve bağımsız değişkenlerin geri kalanında verilen dosyaları düzenlemesini sağlar. Sunucu bulunamazsa uyarı verilir ve dosyalar mevcut Vim içinde düzenlenir.--remote-expr {ifade}: Bir Vim sunucusuna bağlanır, içinde{ifade}değerini değerlendirir ve sonucu standart çıktıya yazdırır.--remote-send {tuşlar}: Bir Vim sunucusuna bağlanır ve ona{tuşlar}tuşlarını gönderir.--remote-silent:--remotegibidir, ancak sunucu bulunamadığında uyarı vermez.--remote-wait:--remotegibidir, ancak dosyalar düzenlenene kadar Vim çıkış yapmaz.--remote-wait-silent:--remote-waitgibidir, ancak sunucu bulunamadığında uyarı vermez.--serverlist: Bulunabilen tüm Vim sunucularının adlarını listeler.--servername {ad}: Sunucu adı olarak{ad}kullanır. Başka sunucuya bağlanmak için--remoteile birlikte kullanılmadığı sürece mevcut Vim için kullanılır. Socketserver arka ucu kullanılıyorsa ve ad/,./veya../ile başlıyorsa sokete giden yol olarak kabul edilir.--clientserver {arka_uç}: Clientserver işlevselliği için arka uç olaraksocketveyax11kullanır. Yalnızca hem socketserver hem de X11 özellikleri mevcut olacak şekilde derlendiğinde kullanılabilir.--socketid {id}: Yalnızca GTK GUI için gVim'i başka bir pencerede çalıştırmak üzere GtkPlug mekanizmasını kullanır.--startuptime {dosya}: Başlatma sırasındaki zamanlama mesajlarını{dosya}dosyasına yazar.--ttyfail: Standart girdi veya standart çıktı terminal değilse hemen çıkar.--version: Sürüm bilgilerini yazdırır ve çıkar.--windowid {id}: Yalnızca Win32 GUI için gVim'in{id}penceresini üst pencere olarak kullanmaya çalışmasını sağlar.
Çevrim İçi Yardım
Başlamak için Vim içinde :help yazın. Belirli bir konuda yardım almak için :help konu yazın. Örneğin ZZ komutu hakkında yardım almak için :help ZZ yazın.
Konuları tamamlamak için <Tab> ve CTRL-D tuşlarını kullanın; ayrıntılar için :help cmdline-completion komutuna bakın. Bir yerden diğerine atlamak için etiketler mevcuttur; ayrıntılar için :help komutuna bakın.
Tüm belgelendirme dosyaları bu şekilde görüntülenebilir; örneğin :help syntax.txt.
Dosyalar
/usr/local/share/vim/vim??/doc/*.txt: Vim belgelendirme dosyaları. Tam liste için:help doc-file-listkomutunu kullanın. Buradavim??kısa sürüm numarasıdır; örneğin Vim 9.1 içinvim91./usr/local/share/vim/vim??/doc/tags: Belgelendirme dosyalarında bilgi bulmak için kullanılan etiketler dosyası./usr/local/share/vim/vim??/syntax/syntax.vim: Sistem genelinde sözdizimi başlatma işlemleri./usr/local/share/vim/vim??/syntax/*.vim: Çeşitli diller için sözdizimi dosyaları./usr/local/share/vim/vimrc: Sistem genelinde Vim başlatma işlemleri.~/.vimrc,~/.vim/vimrc,$XDG_CONFIG_HOME/vim/vimrc: Kişisel Vim başlatma işlemleri. Bulunan ilk dosya kullanılır./usr/local/share/vim/gvimrc: Sistem genelinde gVim başlatma işlemleri.~/.gvimrc,~/.vim/gvimrc,$XDG_CONFIG_HOME/vim/gvimrc: Kişisel gVim başlatma işlemleri. Bulunan ilk dosya kullanılır./usr/local/share/vim/vim??/optwin.vim: Seçenekleri görüntülemek ve ayarlamak için güzel bir yol sunan:optionskomutu için kullanılan betik./usr/local/share/vim/vim??/menu.vim: gVim için sistem genelinde menü başlatma işlemleri./usr/local/share/vim/vim??/bugreport.vim: Hata raporu üretmek için kullanılan betik.:help bugskomutuna bakın./usr/local/share/vim/vim??/filetype.vim: Bir dosyanın türünü adına göre tespit etmek için kullanılan betik.:help 'filetype'komutuna bakın./usr/local/share/vim/vim??/scripts.vim: Bir dosyanın türünü içeriğine göre tespit etmek için kullanılan betik.:help 'filetype'komutuna bakın./usr/local/share/vim/vim??/print/*.ps: PostScript yazdırma için kullanılan dosyalar.
Güncel bilgiler için Vim ana sayfasını ziyaret edin:
Ayrıca Bakınız
vimtutor(1)
Yazar
Vim'in büyük kısmı, başkalarının da yardımıyla Bram Moolenaar tarafından geliştirilmiştir. Vim içinde :help credits komutuna bakın.
Vim, Stevie'ye dayanmaktadır. Stevie üzerinde çalışanlar Tim Thompson, Tony Andrews ve G.R. (Fred) Walter'dır. Ancak orijinal koddan neredeyse hiçbir şey kalmamıştır.
Hatalar
Muhtemelen vardır. Bilinen sorunların listesi için :help todo komutuna bakın.
Bazıları tarafından hata olarak görülebilecek bazı davranışlar, Vi'ın davranışının sadık şekilde yeniden üretilmesinden kaynaklanır. "Vi bunu farklı yapıyor" diye hata olduğunu düşündüğünüz şeyler için vi_diff.txt dosyasına bakın veya Vim içinde :help vi_diff.txt yazın. Ayrıca compatible ve cpoptions seçeneklerine de göz atın.