I am trying to setup my development environment using vim and some plugins.
My workspace root is a directory with very large number of sub-directories and files. I am going to be working on files from a very very small subset of this root directory.
For a simplified overview,
- My workspace root directory ($workspace) contains 1000+ different projects (sub-dirs with lot of sources files, tools and docs)
- I am working on max 4-5 "projects" inside this workspace at a time.
All version control, build and run commands are run at the $workspace root directory. Hence, I want to keep the vim open with its CWD as the workspace root.
I want to use plug-ins such as NerdTree and Ctrl-P, etc. These plugins usually work at a CWD level and try to index/cache contents of the entire $workspace. So, direct usage of them is causing my file navigation to be impossibly slow.
I want to set-up a white-listing system (a file called .project or something) at the $workspace root that lists all the directories that I am interested in. I need vim and its plugins to only index or parse the contents of these very few sub-directories.
I could not find a turn-key solution that achieves this. I am willing to write some code to make this work. Any ideas and suggestions are most welcome.