Resumo das funções no arquivo atual?

8

Enquanto trabalho em vários arquivos de origem (C, Ruby, etc.), acho que estou sempre procurando funções. Existe uma maneira de ter um HUD gerado automaticamente que lista a estrutura do arquivo atual? Seria fantástico se vinculado a diferentes partes do arquivo, semelhante à forma como o NERDTree se vincula a arquivos diferentes. Ou, semelhante às guias laterais nas capturas de tela aqui: /programming/16895610/gen-file-missing-incomplete-in-eclipse

Supondo que isso não exista como um plug-in ou algo assim, como as pessoas geralmente navegam em arquivos como este?

Molho McBoss
fonte

Respostas:

9

Você pode tentar o TagList ou o TagBar, mas essa lista pode ser gerada conforme necessário (nenhuma ferramenta ou configuração de terceiros é necessária) com um simples:

:g/func/#

Veja :help :global.

Se você não se importa com a configuração por tipo de arquivo, o :dlistcomando pode ser usado para listar todas as funções no arquivo atual e os arquivos incluídos:

:dlist /

Veja :help definition-search, :help 'include', :help 'define', :help 'suffixesadd'.

romainl
fonte
Não é uma abordagem muito inteligente. Preferiria ter a tela dividida e leia a lista fucntion num projecto
milaniez
1
Aprendeu sobre o dlist hoje, obrigado
D. Ben Knoble
0

Em vez de escrever uma regex como @romainl parece sugerir, você pode instalar as listas de tags e adicionar o seguinte a .vimrc:

nnoremap <C-l> :TlistToggle<CR>

Agora, pressionando, Ctrl + lvocê mostra / oculta a lista de funções, estruturas e muito mais.

milaniez
fonte