Como você exibe o nome do arquivo no qual está trabalhando no vim?
Como você exibe o nome do arquivo no qual está trabalhando no vim?
Respostas:
:f
( :file
) fará o mesmo que <C-G>
. :f!
fornecerá uma versão não truncada, se aplicável.
:f!
nem sempre funciona, pressione 1 e, em seguida, pressione Ctrl-G para obter o caminho completo.
~/dev/file.py
e execure :f
no vim, recebo file.py
como saída em vez de ~/dev/file.py
.
ctrl-g
para retornar o caminho + arquivo. :f
retornará o nome do arquivo sem o caminho, como pode ctrl-g
. Um 1
antes ctrl-g
mostrará o caminho e o nome (embora não necessariamente expandido). ou seja, será exibido em ~/dev/file.py
vez de file.py
. 2
seguido por ctrl-g
incluirá que tampão: buf 1: "~/dev/file.py"
.
ctrl+ gfará isso.
Além disso, eu gosto de ter:
set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"
Qual produz:
foo.c [C] [0x23] <código / foo.c 1, 1 2% de 50
Além disso, como alguém mencionado (mas agora excluído) %
será substituído pelo nome do arquivo atual. Por exemplo:
:! echo "arquivo atual:%" arquivo atual: foo.c Pressione ENTER ou digite o comando para continuar
[C]
e [0x23]
?
'statusline'
é uma cadeia, mas você não incluir aspas no set: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
espaços também precisa escaparam
defina a linha de status. mais informações com:help statusline
Esses comandos podem ir no seu arquivo .vimrc ou você pode inseri-los como comandos enquanto estiver no vim, digitando ':' no modo de comando.
Primeiro, defina o último status como 2 usando o seguinte:
set laststatus=2
Em seguida, defina a linha de status como% f para o nome curto do arquivo.
set statusline=%f
Para o caminho completo do arquivo, use% F.
Para mostrar o caminho completo de qualquer arquivo, incluindo links simbólicos resolvidos, use o seguinte.
:echo resolve(expand('%:p'))
Isso pode ser adicionado à sua barra de status adicionando a linha abaixo ao seu ~./vimrc
set statusline +=%{resolve(expand('%:p'))}\ %*
Uma das sugestões acima teve que ser alterada para
set statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
para fazê-lo funcionar. Além disso
set laststatus=2
foi usado.
Eu uso o incrível vimrc
da amix: https://github.com/amix/vimrc
Ele usa o lightline.vim
pluging e exibe o nome do arquivo na barra de status.
O melhor de usar o amix/vimrc
é que este plug-in cuida da maior parte da personalização, é muito estável e foi testado por milhares de pessoas, como você pode verificar olhando o número de estrelas do github .. e os problemas pouco frequentes.
Também é atualizado com bastante frequência.
PS: não é o autor de nenhum dos plugins .. apenas um fã :)
Eu também precisava colocar isso no meu arquivo .vimrc:
set noruler
set laststatus=2
Então eu poderia colocar algo como set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"
no meu arquivo .vimrc e depois de reiniciar o meu terminal, a linha de status é exibida corretamente.
'statusline'
é uma cadeia, mas você não incluir aspas no set: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
espaços também precisa escaparam