My friend asking me, 'Why you still using VIM?"

I answered simply "because I like it".

"So why you like it?"

"Make me more productive."

"How come? You cannot even direct click to the code to go to method declaration. You should search it manually, then you go."

And my answer is...

function! SearchDeclarationInCurrentCursor()
    let searchTerm = 'def ' . expand("<cword>")
    cexpr system('Ag -w ' . shellescape(searchTerm))

Now, let's map it into our <Leader> command.  

map <Leader>f :call SearchDeclarationInCurrentCursor()<CR>

VIOLA! Your VIM now is like VS Code, Sublime, Atom, etc. You can even go to method directly from your current cursor. Let's be more productive!

* This for ruby, modify to your own needs
* you can change Ag with ag. It depends on your searching plugin.