Xcode: Vimpocalypse Now

This has appeared at the bottom of Xcode’s Text Editing > Editing settings, sure to make many vi users very happy indeeed:

The change is heralded in the Release Notes:

Using the new vim features is super easy. When the Vim keybindings are enabled, the bottom of your source editor gets this, showing current state, plus a few reminders for those whose muscle memory isn’t quite current. It’s up to you to know your hjkluybn stuff.

You can tell if you’re navigating or editing by the shape of the cursor. The cursor is a large block when you’re navigating or using any of the commands listed here. It is a vertical pipe when directly entering text.

You can tap i to insert text, switching to text entry mode and then ESC to return to navigate. Using a colon : doesn’t do anything here, so no :wq, which is not a huge surprise as neither w nor q makes a ton of sense in Xcode.

Anyway, if your a vimficianado, congratulations and enjoy the new toy.


  • Love it. Vim support is one of the main reasons I stick with JetBrains AppCode over Xcode. But since I use a non-standard layout, I can’t really use Xcode’s Vim support until they add remapping support.

  • Oh happy day!

  • So now we know who won the vi versus emacs war. It’s vi – there’s no tic box for enacs bindings

    • Because emacs bindings are already system wide 🙂

  • Once I switched to Vim mode, I started to automatically finish my edits with :w which didn’t so anything of course but muscle memory is hard to overcome.

  • Is there a way to subscribe to new posts other than of adding a comment to an existing post (perhaps asking a question such as this) and checking “Notify me of new posts by email”?