Как вы отображаете имя файла, над которым вы работаете в vim?
Как вы отображаете имя файла, над которым вы работаете в vim?
Ответы:
:f( :file) будет делать так же, как <C-G>. :f!даст не усеченную версию, если применимо.
:f!не всегда работает, нажмите 1, затем Ctrl-G для полного пути.
~/dev/file.pyи выполняю :fв vim, я получаю file.pyвывод вместо ~/dev/file.py.
ctrl-gчтобы вернуть путь + файл. :fвернет имя файла без пути, как может ctrl-g. A 1before ctrl-gпокажет путь и имя (хотя и не обязательно расширенное). т.е. он покажет ~/dev/file.pyвместо file.py. 2после чего ctrl-gбудет включать в себя какой буфер: buf 1: "~/dev/file.py".
ctrl+ gсделаю это.
Также мне нравится иметь:
set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"
Который производит:
foo.c [C] [0x23] <code / foo.c 1, 1 2% из 50
Также, как кто-то упомянул (но теперь удалил), %будет заменено текущее имя файла. Например:
:! echo "текущий файл:%" текущий файл: foo.c Нажмите клавишу ВВОД или введите команду, чтобы продолжить
[C]и [0x23]части?
'statusline'является строкой, но вы не включаете кавычки в набор: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ linesтакже нужны экранированные пробелы
установить строку состояния. больше информации с:help statusline
Эти команды могут находиться в вашем файле .vimrc, или вы можете вводить их как команды в vim, введя «:» в командном режиме.
Сначала установите последний статус 2, используя следующее:
set laststatus=2
Затем установите строку состояния в% f для короткого имени файла.
set statusline=%f
Для полного пути к файлу используйте% F.
Чтобы показать полный путь к любому файлу, включая разрешенные символические ссылки, используйте следующее.
:echo resolve(expand('%:p'))
Это может быть добавлено к вашей строке состояния, добавив строку ниже к вашему ~./vimrc
set statusline +=%{resolve(expand('%:p'))}\ %*
Одно из приведенных выше предложений должно быть изменено на
set statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
чтобы это заработало. Также
set laststatus=2
использовался.
Я использую удивительный vimrcот amix: https://github.com/amix/vimrc
Он использует lightline.vimвставку и отображает имя файла в строке состояния.
Самое замечательное в использовании этого amix/vimrc- то, что этот плагин заботится о большей части настроек, он очень стабилен и был протестирован тысячами людей, что вы можете проверить, посмотрев на количество звездочек github ... и редких проблем.
Его также обновляется довольно часто.
PS: не автор ни одного из плагинов .. просто фанат :)
Мне также нужно было поместить это в мой файл .vimrc:
set noruler
set laststatus=2
Затем я мог бы поместить что-то вроде set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"в мой файл .vimrc и после перезапуска моего терминала строка состояния отображается правильно.
'statusline'является строкой, но вы не включаете кавычки в набор: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ linesтакже нужны экранированные пробелы