I'd use Homebrew to install Vim on macOS, with brew install vim, but the Homebrew Formula for Vim seems to install many additional features that I don't need. For example, while I do plan on using Vim to edit Ruby files, I don't plan on using the Ruby interface to Vim. (See :help ruby.)

So, when compiling Vim on macOS, what features should I include or leave out (that aren't already included or left out by default), and are there any other custom configuration options I should set?

Interestingly, many people seem to share the settings & plugins they use when running Vim, but not many seem to share the configurations & features they use when compiling Vim.

  • AFAIK, the reason people dont share compiled features is because vim is small (comparatively) even with all its features enabled. For most, it doesn’t make sense to.
    – D. Ben Knoble
    Sep 13, 2018 at 4:11
  • 1
    @D.BenKnoble, spot on. I downloaded Vim source to test a potential new feature, kicked off the build and, before I could get out of my seat to go get a coffee, it had finished :-) Guess I'd gotton used to behemoths like Python or Emacs (or my own software at work).
    – user579
    Sep 21, 2018 at 0:32

1 Answer 1


Compile Vim via MacPorts

Macports provides currently a more granular installation approach for vim than homebrew:

It offers the feature variants tiny, small, big, and huge. You can add specifically the interfaces for ruby, perl, lua, python.

For all variants see https://ports.macports.org/port/vim/summary

However, you can add this functionality to the homebrew formula as well (https://docs.brew.sh/Formula-Cookbook#specifying-other-formulae-as-dependencies). Others might appreciate it.

On the other hand as it has been mentioned: compiling with huge by default and adding all interfaces is not really a performance problem. Also you can notice later on that you miss something. You will not run into this situation for the current build and therefore works for everyone.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.