Lately, it’s been common for me to add per-project VIM commands. It’s usually a simple thing, like adapting the
:make command to the project structure, e.g. when the makefile is in some subdirectory
nnoremap <leader>1 :make -C somedir
nnoremap <leader>3 yaru-build.sh
VIM remembers last commands when the session is closed, so re-setting this mapping every time is not much of a pain, but doing it again and again at last gets annoying.
The following is a very (I mean very) easy improvement of this use case.
I added at the end of my
init.vim, since I usually use neovim) the following command
exe 'source vimrc.local'
so that, if a project has a file called
vimrc.local it is sourced, extending normal VIM configuration, if not, it fails silently.
If the project is under versioning and it’s using GIT, you might want to add
vimrc.local to gitignore. I suggest to use the global gitignore, to avoid sharing your personal gitignore configuration with the project.