Vim: Busca de arquivo difusa comparável a Sublime Text 2's?

3

Eu tentei o FuzzyFinder, + T e Ctrl + P (que é meu localizador de escolha agora), mas nenhum segure uma vela para o Sublime Text 2. Por exemplo, eu quero digitar:

Head.php

e descubra, entre outros:

app/code/core/Mage/Page/Block/Html/Head.php

Atualmente em Ctrl + P , que me serviu melhor que + T , procurando por Head.php me dá estas informações primeiro:

downloader/lib/Mage/Connect/Command/Config_Header.php
app/code/local/Namespace/Modals/Helper/Reader.php
app/code/core/Mage/XMLConnect/Helper/Ipad.php

Meu arquivo está longe de ser encontrado (e eu nunca abri nenhum dos arquivos acima), então eu tenho que digitar isso:

pagehtmlhead.php

Existe algum utilitário que faça uma pontuação / correspondência mais inteligente?

    
por Jed 02.11.2012 / 03:56

1 resposta

1

Você está usando a "pesquisa de caminho completo". Os caracteres que você digita são comparados com todos os itens em todo o caminho.

Digitando isso:

amuse

corresponderia:

[a]pp/[m]odels/[use]rmanager.php

O que você precisa é de "pesquisa de nome de arquivo", que corresponde apenas à última parte do caminho: o "nome do arquivo".

Digitando isso:

use (or maybe even us or u, depending on your usage patterns)

corresponderia:

app/models/[use]rmanager.php

Ambos os métodos se ajustam a diferentes padrões de uso. "Caminho completo" pode ser útil em situações em que você realmente não conhece o layout do projeto (ou o contrário: quando você tem um mapa mental preciso) porque ele permite que você faça uma pesquisa detalhada:

[a]pp/*[a]pp/[m]odels/*[a]pp/[m]odels/[use]*

"Filename" pode ser mais rápido quando você não quer pensar muito sobre a estrutura do seu projeto ou quando ele é tão pequeno que você pode ter certeza de que existe apenas um usermanager.php .

Para alternar o método de pesquisa no prompt, clique em <C-d> : o prompt se parece com >>> em "pesquisa de caminho completo" e >d> id "pesquisa de nome de arquivo".

Para usar "pesquisa de nome de arquivo" por padrão, basta adicionar essa linha ao seu ~/.vimrc :

let g:ctrlp_by_filename = 1

Além disso, você digita demais: da minha experiência, he ou talvez hea provavelmente seria o suficiente.

Se o arquivo não aparecer, talvez você queira acessar <F5> para atualizar o cache.

Em geral, é de seu interesse ler a documentação dos plug-ins instalados.

    
por 02.11.2012 / 08:07