Frequently Asked Questions
These are the most common questions users ask about ViEmu for Xcode, hopefully yours is answered below. If it isn't, don't hesitate to ask us by e-mail.Xcode doesn't support plug-ins, how does ViEmu work? How future-proof is it?
We were able to reverse-engineer Xcode's workings thanks to the great inspectability of applications based on the Objetive C language. We will keep doing this with future versions. We have plenty of experience in maintaining ViEmu for other host environments for the past 9 years: Visual Studio provides a great and supported extensibility model, so ViEmu/VS can offer a great experience. Microsoft Word and Outlook provide a supported, documented extensibility model, but it is very poor, so this limits how good the experience is. SQL Server doesn't have a supported extensibility model, but what it actually provides under the hood is actually very powerful, thus we can get a similar quality to ViEmu/VS. The Xcode version is quite close to this case, and we can provide a great end-user experience.
Xcode is free, why does ViEmu cost money?
Developing and maintaining a vi/vim emulator is a huge undertaking. Deep interception of the host app which is not designed to allow such modifications, high-quality emulation with a custom vim-compatible regular expression engine, troubleshooting weird interactions with code completion, etc... in order to provide a great experience, we need to dedicate a large amount of hours of a really experienced developer. It would be just impossible to offer the quality experience we provide if we didn't charge for it, which allows us to put in the necessary time and effort. And in the grand scheme of things, less than a hundred dollars for a tool that will make you more productive for over 40 hours a week is well worth it, as our thousands of customers worldwide confirm.
I tried [insert favorite vi/vim feature] and it doesn't work!
Please, tell us so that it can be taken into account in new versions. ViEmu is getting better every week thanks to suggestions from users. Alpha/beta versions are usually made available to customers and users who are evaluating the product (check the forums for the latest builds), with a much shorter turnaround than waiting for the next official release. Thus, if the feature you are asking for is an oversight which is simple to implement, chances are you may have it available in a short lapse of time.
Why such a product? Getting back to 70's text editing?
I guess you're not a vi/vim diehard. Granted, it's not for everyone, but for many people, once past the initial 2-3 weeks learning curve, which is steep, it becomes much more powerful and quicker than regular "arrows" style text editing. After months, your brain actually gets hardwired and it takes effort to not use it. This product is for such people (which, you can guess, includes myself). Read this if you want to know how and why I got started with vi-vim myself less than two years ago, and hopefully it will make some sense.