What is a vim "runtime directory"?

I'm trying to get started with things like FuzzyFinder, but I am stuck at the point where it says:

INSTALLATION

Put all files into your runtime directory. If you have the zip file, extract it to your runtime directory.

You should place the files as follows:

your_runtime_directory/plugin/fuf.vim

...

What is a "runtime directory"? What goes in there? Where is mine?


Solution 1:

Assuming that you're using some flavor of Unix, your personal runtime directory is ~/.vim. This is where you should put any plugin used only by you. If you want other users to be able to access the plugin, put it in the second directory of the 'runtimepath' option, which is usually $VIM/vimfiles. You should not install any plugins into the $VIMRUNTIME directory. That directory is intended for plugins distributed with Vim. If you put other plugins in that directory, or modify files in that directory, you will likely lose those changes when you update your Vim installation.

See

:help 'rtp'
:help $VIMRUNTIME

for more about this.

Solution 2:

There are actually multiple “runtime directories”. Use :set runtimepath? inside Vim to see the directories involved.

Any of them should work, but probably the easiest place to use would be the per-user directory ~/.vim/, which should be first in your Vim's runtimepath.

mkdir ~/.vim; (cd ~/.vim && unzip /path/to/vim-fuzzyfinder.zip)

If you want to install it for all users on the system, then try one of the later directories in the list (one of which is the version specific value that is also in Vim's $VIMRUNTIME variable).

Solution 3:

Enter :!echo $VIMRUNTIME inside vim to find out.

Solution 4:

Late to the game here ... according to the docs

echo VIMRUNTIME=`vim -e -T dumb --cmd 'exe "set t_cm=\<C-M>"|echo $VIMRUNTIME|quit' | tr -d '\015' `