Vim'de dosyayı açtıktan sonra dizine geri git


123

Vim'de gezinen bir dizini açtığımda, imleci bir dosya adına getirip tuşuna basarak bir dosyayı açabilirim Enter.

Şimdi, önceki dizine göz atmaya geri dönmek için herhangi bir komut var mı?

Değilse, dizine gözatma modunu kapatmadan bir dosyayı açmanın bir yolu var mı?


2
Emin değilim, ancak gerçekten kullanışlı dizin taraması istiyorsanız, NERDTree
Johan Kotlinski

Yanıtlar:


198

Kullanarak son arabelleğe geri dönebilirsiniz :b#.

Bir dosyayı yeni açtıysanız, sizi sadece dizine göz atmaya geri getirecektir.

Güncelleme : Bu cevap doğru cevap olarak kabul edildiğinden ve bu nedenle en üstte olduğundan, @romainl tarafından imho'nun doğru cevap olduğu da dahil olmak üzere cevapları biraz özetlemek istiyorum.


3
Bu olmalı :b#. Düzeltirdim ama tek karakterli düzenlemeler uçmaz.
echristopherson

Bunu yaparsam vim <dirname>ve sonra dosyaya gidip tuşuna Enterbasarsam çalışmaz; vim'i açarsam, :e <dirname>dosyayı seçin ve Enterçalışır. Her iki durumda :buffersda yalnızca bir arabellek gösterir. Neden böyle olduğundan emin değilim.
mcmlxxxvi

@mcmlxxxvi vim wiki'ye göre b#yalnızca "önceden düzenlenmiş tamponlar" için çalışır: vim.wikia.com/wiki/…
ezdazuzena

3
Diğer tüm doğru cevapları özetleyen güzel bir şey, keşke daha çok insan bunu yapsın.
Lightman

1
@veich Yorumunuz için teşekkürler, ancak soru sadece geriye gitmekle ilgili olduğu için bunu şimdilik yapmayacağım. Bu bir wiki sayfası değil, sadece açıklık olsun diye diğer soruları özetliyorum. Umarım bunu anlarsın.
ezdazuzena

88

Önceki ara belleğe geri dönmek için Ctrl- kullanabilirsiniz O.


2
Genel olarak çok kullanışlıdır (örneğin, geri dönmek için gf), ancak dizinleri keşfetmek durumunda, bu beni dosyayı açarken bulunduğum "satır" a geri getirmez. :Rex<Enter>, biraz beceriksiz olan (5 tuş vuruşuna karşı 1), bunu yapıyor. Muhtemelen bu haritalama için aday ... olduğunu
Tomasz Gandor

34

Netrw listesine dönmek için uygun komut :Rex[plore]. Düzinelerce dosyaya girip çıktıktan sonra bile çalıştırabilirsiniz.


Netrw listesinden çıktıktan sonra bir dosyayı düzenlerken, ile geri dönmekten :Rexplorefarklı bir şekilde geri dönüyor :Exploremu?
Jasha

Kendi sorumu yanıtlamak :Rexploreiçin, sizi her zaman daha önce göz attığınız ağ listesine geri döndürürken :Explore, şu anda açık olan dosyanın dizin listesini verir.
Jasha

29

:Ex sizi geri götürecektir (ve düzenleyip kaydetmediğinizi size gösterecektir).


1
Cevaplardan HERKESE oy verdim. hepsi kullanışlıydı
javadba

Güzel, üst satır (bazı Netrw başlıkları) yerine Ctrl-Oana dizini ( ..) vurguladığı için biraz daha iyi , ama yine de gezgini (açılmış dosya) bıraktığım yerde değil. 4 tuş vuruşuna karşı 1, jbulunduğum yere gitmek için biraz tasarruf , ancak yine :Rex<Enter>de çok fazla navigasyon bekliyorsam muhtemelen haritalama olasılığım var .
Tomasz Gandor

26

İki tampon s / b ileri geri gitmek için Ctrl ^ 'ye güveniyorum.


1
Bu benim için homebrew'den OSX'te vim 7.3 ile çalıştı. Ctrl-O çalışmıyor gibi görünüyor.
Gardner Bickford


daha doğrusu, bu "alternatif dosyayı düzenler": vimdoc.sourceforge.net/htmldoc/editing.html#CTRL- ^
ezdazuzena

Mükemmel! İleri geri çalışıyor olsa da ("1 seviye Geri Al" gibi), ama aslında bulunduğum satıra geri dönüyor! Görünüşe göre haritalama yapmıyorum :Rex<CR>! (Tabii ki, yalnızca iç içe geçmiş navigasyonlardan "geri dönmeyi" dört gözle
beklemediğimde

15

Genelde sadece kullanırım :E. Hatırlaması kolaydır ve sizi açtığınız dosyanın dizin listesine geri götürür.


2
Bunun çok az oyu olmasına şaşırdım. Kesinlikle bir cevap.
TaoPR

1
Şaşırmayın - :Eşu anki sürümümde 7.4.x belirsiz ve hiçbir şey yapmıyor. En azından yazmanız gerekiyor :E<CR>.
Tomasz Gandor

1
Bu, ile başlayan başka bir komutun tanımlanmasıyla aynıdır :Exveya :Explorerdeğildir E. Örneğin stackoverflow.com/a/14367507/1141095'e
ezdazuzena
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.