Geçerli dosyanın vim olarak görünen adı?


157

Üzerinde çalıştığınız dosyanın dosya adını vim'de nasıl görüntülersiniz?


1
Terminaliniz doğru ayarlandıysa, dosya adını pencere başlığında almalısınız.
Cascabel



2
ctrl + g dosya bilgilerini gösterebilir
Dhiren Hamal

Yanıtlar:


200

:f( :file) ile aynı işlemi yapar <C-G>. :f!varsa, kesilmemiş bir sürüm verir.


2
Güzel, ama terminalin üst çubuğunda göstermek mümkün mü? (veya sonlandırıcı) veya komut girmeyen bir yerde.
eMarine

21
:f!her zaman çalışmaz, önce tam yol için 1, sonra Ctrl-G tuşlarına basın.
ives

1
Tam bir yola ne dersin? ~/dev/file.pyVim'i başlattığımda ve :fvim içinde çalıştırdığımda file.pybunun yerine çıktı olarak alıyorum ~/dev/file.py.
gxyd

1
@ives 1 ve Ctrl + g ayrı olarak ne anlama geliyor?
jobima

2
@jobima: ctrl-gyol + dosyasını döndürmek için değiştirir . :fdosya adını olabildiğince yol olmadan döndürecektir ctrl-g. Bir 1önceki ctrl-gyolu & adı (zorunlu olsa genişletilmiş değil) gösterecektir. yani ~/dev/file.pyyerine gösterecektir file.py. 2ardından ctrl-gbu tampon içerecektir: buf 1: "~/dev/file.py".
ives

71

ctrl+ gyapacak.

Ayrıca, sahip olmak istiyorum:

set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"

Hangi üretir:

foo.c [C] [kod / foo.c 1, 1% 50'nin 50'si

Ayrıca, belirtildiği gibi (ancak şimdi silinmiş olan) %mevcut dosya adıyla değiştirilecektir. Örneğin:

:! echo "geçerli dosya:%"
geçerli dosya: foo.c
Devam etmek için ENTER tuşuna basın veya komut yazın

2
Ne [C]ve [0x23]parçaları demek?
LangeHaare

@LangeHaare İmleç altındaki karakterin filetype ve onaltılı değeri

'statusline'bir dizedir, ancak sete tırnak set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
eklemezsiniz

18

durum satırını ayarlayın. ile daha fazla bilgi:help statusline

Bu komutlar .vimrc dosyanıza gidebilir veya komut modunda ':' yazarak bunları vim'deyken komut olarak girebilirsiniz.

İlk olarak, aşağıdakileri kullanarak son durumu 2 olarak ayarlayın:

set laststatus=2

Ardından kısa dosya adı için durum satırını% f olarak ayarlayın.

set statusline=%f

Dosyanın tam yolu için% F kullanın.


E518: Bilinmeyen Seçenek:% f
Isius 18:17

Cevabı güncelledim Isius. Umarım bu daha açık hale getirir.
Brian Clements

5

:set title dosya adını pencere başlık çubuğunda görüntülemek için


5

Neden bu kadar karmaşık? Control-G işi yapacak


4

Çözülmüş semboller de dahil olmak üzere herhangi bir dosyanın tam yolunu göstermek için aşağıdakileri kullanın.

:echo resolve(expand('%:p'))

Bu, durum çubuğunuza aşağıdaki satırı ekleyerek durum çubuğunuza eklenebilir. ~./vimrc

set statusline +=%{resolve(expand('%:p'))}\ %*

2

Yukarıdaki önerilerden birinin şu şekilde değiştirilmesi gerekiyordu:

set statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines

çalışmasını sağlamak için. Ayrıca

set laststatus=2

kullanıldı.


Stack Overflow'a hoş geldiniz ! Bu, muhtemelen ilgili yanıt (lar) için önerilen bir düzenleme veya yorum olmalıdır; henüz yorum yapmak veya düzenlemek için yeterli üne sahip değilsiniz, ancak iyi sorular sorarsanız ve iyi cevaplar yazarsanız yakında olacaksınız! Bu arada, cevapların yazarlarına ilgili düzeltmeleri önereceğim. İyi yakalama!
D. Ben Knoble

1

İnanılmazı vimrcamix'den kullanıyorum: https://github.com/amix/vimrc

lightline.vimEklentiyi kullanır ve durum çubuğunda dosya adını görüntüler.

Kullanmakla ilgili en iyi şey amix/vimrc, bu eklentinin özelleştirmenin çoğunu, çok kararlı olduğunu ve github yıldızlarının sayısına ve seyrek sorunlara bakarak kontrol edebileceğiniz 1000 kişi tarafından test edilmiş olmasıdır.

Ayrıca oldukça sık güncellenir.

Not: herhangi bir eklentinin yazarı değil .. sadece bir hayran :)


1

Ben de bu benim .vimrc dosya koymak gerekir:

set noruler
set laststatus=2

Sonra set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L".vimrc dosyama benzer bir şey koyabilir ve terminalimi yeniden başlattıktan sonra durum satırı düzgün bir şekilde görüntülenir.


'statusline'bir dizedir, ancak kümeye tırnak set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
eklemezsiniz
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.