2010-11-06 31 views
90

Làm cách nào để hiển thị tên tệp của tệp bạn đang làm việc trong vim?Làm cách nào để hiển thị tên tệp của tệp bạn đang làm việc trong vim?

+1

Nếu của thiết bị đầu cuối của bạn thiết lập một cách chính xác, bạn sẽ nhận được tên tập tin trong tiêu đề cửa sổ. – Cascabel

+0

Cũng thấy: [Làm thế nào tôi có thể hiển thị vĩnh viễn đường dẫn của tệp hiện tại trong Vim?] (Http://stackoverflow.com/questions/10488717/how-can-i-permanently-display-the-path-of-the -current-file-in-vim) – User

+1

Liên quan: [Làm cách nào tôi có thể xem đường dẫn đầy đủ của tệp hiện tại?] (http://vi.stackexchange.com/q/104/467) tại Vim SE – kenorb

Trả lời

137

:f (:file) sẽ làm giống như <C-G>. :f! sẽ đưa ra một phiên bản không được rút gọn, nếu có.

+2

Rất đẹp, nhưng có thể hiển thị nó ở thanh trên cùng của thiết bị đầu cuối? (hoặc terminator) hoặc một nơi nào đó mà không cần gõ lệnh. – eMarine

+13

'' ': f!' '' Không phải lúc nào cũng hoạt động, nhấn 1, sau đó nhấn Ctrl-G để xem đường dẫn đầy đủ. – ives

+0

Làm thế nào về một con đường đầy đủ? Khi tôi bắt đầu vim từ '~/dev/file.py' và thực hiện': f' trong vim, tôi nhận 'file.py' làm đầu ra thay vì' ~/dev/file.py'. – gxyd

12

đặt dòng trạng thái. thông tin thêm với :help statusline

Các lệnh này có thể đi trong tệp .vimrc của bạn hoặc bạn có thể nhập chúng dưới dạng lệnh bằng vim bằng cách nhập ':' ở chế độ lệnh.

Thứ nhất, sửa status cuối cùng để 2 sử dụng như sau:

set laststatus=2

Sau đó thiết lập dòng trạng thái để% f cho tên tập tin ngắn.

set statusline=%f

Để xem đường dẫn đầy đủ, hãy sử dụng% F.

+0

E518: Không xác định Tùy chọn:% f – Isius

+0

Tôi đã cập nhật câu trả lời, Isius. Hy vọng rằng làm cho nó rõ ràng hơn. –

50

ctrl + g sẽ làm điều đó.

Ngoài ra, tôi muốn có:

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

nào sản xuất:

 
foo.c [C] [0x23]<code/foo.c 1, 1 2% of 50 

Ngoài ra, như một ai đó đề cập (nhưng bây giờ đã bị xóa) % sẽ được thay thế bằng tên tập tin hiện hành. Ví dụ:

 
:!echo "current file: %" 
current file: foo.c 
Press ENTER or type command to continue 
+0

Các phần '[C]' và '[0x23]' có nghĩa là gì? – LangeHaare

3

Để hiển thị đường dẫn đầy đủ cho bất kỳ tệp nào, kể cả các liên kết tượng trưng đã giải quyết, hãy sử dụng như sau.

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

này có thể được bổ sung vào statusbar của bạn bằng cách thêm dòng dưới đây để bạn ~./vimrc

set statusline +=%{resolve(expand('%:p'))}\ %* 
Các vấn đề liên quan