As tags exuberantes são a maneira mais simples de conseguir isso. No GNU / Linux (por exemplo, Ubuntu ou Debian), você deve ser capaz de fazer
sudo apt-get install exuberant-ctags
(Para OSX, "$ brew install ctags" deve ser suficiente; para Windows, visite http://ctags.sourceforge.net/ e faça o download do executável independente)
Em seguida, navegue até a pasta raiz do seu projeto e execute
ctags -R --exclude=.git .
Isso varrerá todo o seu projeto e criará um arquivo ./tags que o vim usará automaticamente para fornecer a capacidade de ir para as funções pressionando uma tecla. Nomeadamente:
Ctrl + ]
com o cursor colocado na função para a qual você deseja ver a implementação. Existem outras combinações e muitas funções no modo de comando que permitem que você navegue pelo código também com ctags (por exemplo, Ctrl+ tpara pular para a entrada mais antiga da pilha de tags). Veja :help 29.1
para uma visão geral.
Observe que você deve executar novamente as ctags para cada alteração significativa no código e permitir que ele re-indexe seu projeto. Você pode fazer isso manualmente ou ensinar o vim a fazê-lo na tecla de atalho ou na gravação.
Dica: se você fizer uso extensivo de ctags, talvez o plug-in vim-taglist ( http://vim-taglist.sourceforge.net ) também valha uma olhada. Ele fornece um esboço no estilo IDE com uma lista de todas as funções para essa classe / arquivo.