I always strive to increase my productivity when developing applications and in the span of the last few years, I can say that I have made good steps towards increasing that productivity, but I still find I need more tools or methods. I need to edit faster and learn touch typing (currently in the process) and therefore I find a need to move to Vim. It has been now over one year I have trashed Windows and moved to Linux (Ubuntu to be more precise) and I am using the IDE Zend Studio combined with Aptana Studio for developing OO PHP5.3 websites. Although the IDE does everything I would need from an IDE (which I will enumerate shortly), it lacks the editing mode Vim would give.
So my question is: how would I have all the same following 'killer features' I already have within this IDE in Vim?
Here is the extensive list of features I need to keep the productivity at an high level for me:
Code completion for PHP5.3, not just PHP5 and not just the PHP functions, but any libraries that are added to the buildpath, such as Zend Framework and my own library.
Code formatting, I don't use it much, except for XML files, but that is something I would need soon as I will start to lead more people within my company and formatters will help to keep the code coherence.
I use Oxygen XML editor within Zend Studio (eclipse) for editing Docbook XML technical documentation. It has already proven of great quality to me and I would like to keep it.
Syntax validation for any file extensions that can be used on the Web, mostly for me would be PHP5.3 syntax, html syntax (not that important), CSS, Javascript (that's why I have Aptana Studio integrated with Zend Studio, their javascript editor is great with JQuery support)
Maybe a git integration just like EGit (eclipse plugin)? Not required but a nice addon.
Debugging features (already using it through the ZendDebugger)
Powerful searching within files
I know that is a lot, but I am already having all this within my IDE and as I said, I feel the need to move to mode based editors like Vim to be more productive when typing and I feel the learning curve and time invested in setting up all of this will be well worth the effort.
I know that there is Eclim, which integrates eclipse to its daemon and I am thinking of using just that, if anyone has feedback on Eclim used with Zend Studio that would be appreciated.
Along with Eclim, if I need more vim plugins to achieve my needs, I would gladly appreciate it if someone could direct me to them.