Maneira rápida de abrir um arquivo distante no vim na linha de comando

4

Suponha que eu tenha dois arquivos com os seguintes caminhos de arquivo:

~/another/project/file1.txt
~/this/is/some/very/deep/project/file2.txt

Como você pode ver, file1.txt e file2.txt estão localizados "longe" um do outro no sistema de arquivos.

Agora, suponha que eu esteja editando file1.txt e quero abrir file2.txt em uma janela vsplit . O método mais rápido que eu escolhi para abrir file2.txt é

:vsplit ~/this/is/some/very/deep/project/file2.txt

que obviamente não é eficiente, mesmo com conclusão difusa.

Existe uma maneira de rapidamente "marcar" ou "pular para um diretório" para alcançar file2.txt rapidamente?

Meus pensamentos iniciais seriam executar um comando a partir do shell (dentro do modo de comando, usando ! ) para de alguma forma facilitar o salto. Usar algo como salto pode ajudar, mas não sei como.

    
por hlin117 08.01.2015 / 00:55

3 respostas

3

Você pode tentar usar uma marca global, conforme descrito na resposta a esta pergunta:

link

Se você fizer uma marca com uma letra maiúscula como mA , poderá retornar a esse arquivo indo até essa marca com 'A .

Isso funcionará nas sessões se seu .viminfo estiver salvando as coisas corretamente.

    
por 08.01.2015 / 03:27
0

Se você estiver usando os mesmos arquivos regularmente, poderá usar um link simbólico.

Crie uma pasta para manter seus links.

mkdir ~/links/

vincule seus arquivos.

ln ~/another/project/file1.txt ~/links/file1.txt
ln ~/this/is/some/very/deep/project/file2.txt ~/links/file2.txt

Você também pode nomear seu link de maneira diferente. Se o seu arquivo é somereallylongname.txt você pode vinculá-lo a shname.txt

ln ~/this/is/some/very/deep/project/somereallylongname.txt ~/links/shname.txt
    
por 08.01.2015 / 02:31
0

Outra resposta que me foi apresentada por um amigo foi usar o plugin ctrlp . O plugin ctrlp facilita a busca de um arquivo através de vários diretórios ao mesmo tempo.

EDIT: As configurações padrão para ctrlp realmente começam a pesquisar a partir da raiz do projeto; tecnicamente, seria necessário definir o nó raiz de forma diferente para que funcionasse corretamente.

    
por 08.01.2015 / 03:59

Tags