Как вы отображаете имя файла, над которым вы работаете в 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 1
before 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
также нужны экранированные пробелы