Jak wyświetlić nazwę pliku, nad którym pracujesz w vimie?
Jak wyświetlić nazwę pliku, nad którym pracujesz w vimie?
Odpowiedzi:
:f( :file) zrobi to samo, co <C-G>. :f!w stosownych przypadkach poda nieopracowaną wersję.
:f!nie zawsze działa, naciśnij 1, a następnie Ctrl-G, aby uzyskać pełną ścieżkę.
~/dev/file.pyi wykonuję :fw nim, otrzymuję file.pyjako wyjście zamiast ~/dev/file.py.
ctrl-gaby zwrócić ścieżkę + plik. :fzwróci nazwę pliku bez ścieżki, tak jak może ctrl-g. 1Zanim ctrl-gpokaże ścieżkę i nazwę (choć niekoniecznie rozszerzony). tzn. ~/dev/file.pyzamiast file.py. 2następnie ctrl-gobejmą który bufor: buf 1: "~/dev/file.py".
ctrl+ gzrobi to.
Lubię też:
set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"
Który produkuje:
foo.c [C] [0x23] <kod / foo.c 1, 1 2% z 50
Ponadto, jak ktoś wspomniał (ale teraz usunięty), %zostanie zastąpiony aktualną nazwą pliku. Na przykład:
:! echo "bieżący plik:%" aktualny plik: foo.c Naciśnij klawisz ENTER lub wpisz polecenie, aby kontynuować
[C]i [0x23]części?
'statusline'jest ciągiem znaków, ale nie zawiera cudzysłowów w zestawie: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lineswymaga również spacji ze
ustawić wiersz statusu. więcej informacji z:help statusline
Te polecenia mogą znajdować się w twoim pliku .vimrc lub możesz je wprowadzać jako polecenia w vimie, wpisując ':' w trybie poleceń.
Najpierw ustaw ostatni status na 2, używając następujących poleceń:
set laststatus=2
Następnie ustaw wiersz statusu na% f dla krótkiej nazwy pliku.
set statusline=%f
Aby uzyskać pełną ścieżkę do pliku, użyj% F.
Aby wyświetlić pełną ścieżkę do dowolnego pliku, w tym rozwiązane dowiązania symboliczne, użyj następującego.
:echo resolve(expand('%:p'))
Można to dodać do paska stanu, dodając poniższy wiersz do swojego ~./vimrc
set statusline +=%{resolve(expand('%:p'))}\ %*
Jedna z powyższych sugestii musiała zostać zmieniona na
set statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
żeby to działało. Również
set laststatus=2
użyto.
Używam niesamowitego vimrcz amix: https://github.com/amix/vimrc
Używa lightline.vimwtyczki i wyświetla nazwę pliku na pasku stanu.
Wspaniałą rzeczą w korzystaniu z amix/vimrcwtyczki jest to, że ta wtyczka zajmuje się większością dostosowań, jest bardzo stabilna i została przetestowana przez tysiące ludzi, co możesz sprawdzić, patrząc na liczbę gwiazdek github ... i rzadkie problemy.
Jest również dość często aktualizowany.
PS: nie jestem autorem żadnej z wtyczek ... tylko fanem :)
Musiałem również umieścić to w moim pliku .vimrc:
set noruler
set laststatus=2
Następnie mogłem umieścić coś takiego set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"w moim pliku .vimrc i po ponownym uruchomieniu terminala linia statusu wyświetlała się poprawnie.
'statusline'jest ciągiem znaków, ale nie zawierają cytaty W zestawie set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ linesrównież wymaga uciekły przestrzenie