É fácil fazer isso com :e file.name
ou :sp file.name
quando o arquivo.name está no diretório de trabalho do Vim .
Mas frequentemente você abre algum arquivo em um diretório muito distante com vim very/far/dir/some.file
e deseja abrir seu irmão no mesmo diretório. Você não pode fazer isso com :sp file.name
, :sp very/far/dir/file.name
ou :sp
, :E
e selecionar o arquivo manualmente.
Bo-oo-ring.
Existe uma solução! Esta dica do vim sugere três maneiras diferentes de fazer isso, aqui está a minha favorita:
cabbr <expr> %% expand('%:p:h')
Adicione isso ao seu .vimrc, reinicie o vim ou re-source .vimrc, e agora você pode fazer, por exemplo
:sp %%/file.name
e quando você entrar /
, %%
irá expandir para o caminho completo do arquivo aberto.
Bônus : Provavelmente, você não deseja que o caminho esteja completo porque pode ser muito longo? Se em relação ao diretório de trabalho for bom para você, apenas remova :p
parte de expand
:
cabbr <expr> %% expand('%:h')
Atualmente eu prefiro esta modificação, como você pode ver no meu vimrc