The widely used and extremely powerful vim text editor, adapted for Mac.
Ranked in these QuestionsQuestion Ranking
Pro OS X input methods
MacVim supports OSX's native shortcuts making the adoption of Vim easier.
Pro Extremely customizable
MacVim is Vim, it has all of vim's customizability and power.
Pro Extensive community support
MacVim, like Vim itself has a large community backing it.
Pro Lots of plugins
Every plugin available for Vim is available for MacVim too.
Pro Multi-byte support
Allows writing characters that don't fit in one byte. Most notably logograms (for writing in languages such as Japanese, Chinese and Korean) and Unicode characters.
Pro Enables effective keyboard-driven editing due to its modal nature
Interaction with Vim is centered around several modes. Each mode has a different purpose and switching between them changes behaviour and keybindings. There are 12 modes in total (6 basic modes and 6 variations on basic modes) and 4 of them are used commonly.
Insert mode is for entering text. This mode most resembles traditional text entry in most editors.
Normal mode (the default) is entered by hitting ESC and converts all keybindings to center around movement within the file, search, pane selection, etc.
Command mode is entered by hitting ":" in Normal mode and allows you to execute vim commands and scripts similar in fashion to a shell.
Visual mode is for selecting lines, blocks, and characters of code.
Modes allow separating concerns between various tasks and reusing keys for different kinds of functionality. As a result, the workflow becomes more efficient.
Pro Everything is a mnemonic
Vim associates keys with words. For example,
d is for "delete",
w for "word". To perform an action you string together letters. Thus, to delete a word, press dw.
This way it's possible to abstract a large amount of functionality that Vim provides in an intuitive way.
Pro Vimtutor teaches the basics Vim in 30 minutes
Vimtutor is an excellent interactive tutorial for people with no prior experience in Vim. It's bundled with Vim andtakes about 30 minutes to complete.
Pro Automatic font substitution
In cases of a selected font missing certain characters, MacVim will find a font that has that character.
Con Steep learning curve
MacVim, after all is still Vim, and with that comes the complexity that Vim brings and the steep learning curve that needs to be overcome.
Con Slow when opening files with very long lines
A lot of very very long lines can make MacVim take up to a minute, where a few other editors take only seconds to load the same file.