The same reason I don't use a Space Shuttle to travel to my granny that lives a 100km away.
I don't have to.
But it's got a lot to do with the fact that while IDE's are good for something like Java or C++ programming, they tend to become really crappy once you get into web development and have to regularly work with 5+ different languages at a time.
With most IDE's that would mean I'd have to have 5 of them open to work comfortably with every language.
That's because most IDEs don't have good support for web development. (I wonder what would happen if they are good for web development, would people's opinion change?)
I used Vim to modify CSS and JS but I struggled to navigate JS code because I cannot jump to the method implementation with some sort of magical shortcut key easily. This is pretty tough if I want to know why I don't get my intended result out of calling the method.
To add injury to that, I found out that I have to redo the implementation and call the method something else to describe the intent in full. I can't refactor that easily without going to the path of hell: grep, regex, sed.
Re: jumping to method definitions, have you tried running ctags on your project directory, then pressing Ctrl-] (go to tag) on the method name? It should work.
I don't have to.
But it's got a lot to do with the fact that while IDE's are good for something like Java or C++ programming, they tend to become really crappy once you get into web development and have to regularly work with 5+ different languages at a time.
With most IDE's that would mean I'd have to have 5 of them open to work comfortably with every language.