sponsor Vim development Vim logo Vim Book Ad

project.tar.gz : Organize/Navigate projects of files (like IDE/buffer explorer)

 script karma  Rating 3387/1033, Downloaded by 90252  Comments, bugs, improvements  Vim wiki

created by
Aric Blumer
script type
You can use this plugin's basic functionality to set up a list of
frequently-accessed files for easy navigation. The list of files
will be displayed in a window on the left side of the Vim
window, and you can press <Return> or double-click on
filenames in the list to open the files. This is similar to how
some IDEs I've used work. I find this easier to use than
having to navigate a directory hierarchy with the file-explorer.
It also obviates the need for a buffer explorer because you
have your list of files on the left of the Vim Window.

But there's much, much more . . . .

You can also instruct the Plugin to change to a directory and
to run scripts when you select a file. These scripts can, for
example, modify the environment to include compilers in
$PATH. This makes it very easy to use quickfix with multiple
projects that use different environments. I give examples in
the documentation.

Other features include:
o Loading/Unloading all the files in a Project (\l, \L, \w, and \W)
o Grepping all the files in a Project (\g and \G)
o Running a user-specified script on a file (can be used
  to launch an external program on the file) (\1 through \9)
o Running a user-specified script on all the files in a Project
  (\f1-\f9 and \F1-\F9)
o Also works with the netrw plugin using directory
  names like ftp://remotehost
             (Good for webpage maintenance.)
o Support for custom mappings for version control
  integration (example of perforce in the documentation).
o I also give an example in the documentation on how to
  set up a custom launcher based on extension. The
  example launches *.jpg files in a viewer. I have also set
  up viewers for PDF (acroread) and HTML files (mozilla)
  for my own use.

This plugin is known to work on Linux, Solaris, and Windows.
I cannot test it on Windows, though, so please let me know if
you run into any problems. If you use it on other platforms,
let me know.

(Let me know if you need a .zip file)
install details
Decompress and untar in your ~/.vim directory (or
equivalent).  Inside Vim, enter this:
   :helptags ~/.vim/doc
(or equivalent directory)
(Enter ":help add-global-plugin" to determine the directory to
untar it into.)

Then enter
  :help project
for information

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
project-1.4.1.tar.gz 1.4.1 2006-10-13 7.0 Aric Blumer - Bug fixes
- Optional use of vimgrep instead of grep
- Line numbers in the project window
- Window not bound to left side (experimental)
project-1.4.tar.gz 1.4 2006-04-24 7.0 Aric Blumer After about 2.5 years here is a slightly updated version.

-Updated to support 7.0.  The previous version works in 7.0, but there was an annoying redraw when you move into/out of the project window.
-Also, 7.0 treats modelines a little bit differently than 6.x. Version 7.0 re-evaluates window-local modelines if you hide and show the project window, and this messes up folds if you have a foldlevel in your project file's modelines.  Modelines are now turned off after the project file is first loaded.
-Added \S (Split-load all files at the cursor level) contributed by A. Harrison.
-Bug fix with misuse of winnr() when winbufnr() should have been used.
project-1.3.tar.gz 1.3 2002-10-25 6.0 Aric Blumer -Bug Fixes (thanks Xiangjiang Ma)
-Completed suite of % expansions in proj_run
-Added mapping to toggle Project Window open/closed.
-Added <F5> mapping equivalent to \R
project-1.2.1.tar.gz 1.2.1 2002-10-01 6.0 Aric Blumer --Identical to 1.2 but fixed functionality with netrw
project-1.2.tar.gz 1.2 2002-09-30 6.0 Aric Blumer -Environment variables now expanded in paths.
-Added 'b' flag to use the browse() function. (Off for Windows--it can't browse for directories.)
-Added keep pragma to keep lines when refreshing.
-Small tweaks.
-Doc: example of using perforce with the plugin.
-Doc: example of adding custom launchers.
-Can't test on Windows, please let me know of problems.
project-1.1.tar.gz 1.1 2002-04-01 6.0 Aric Blumer Now accepts spaces in directories. Some bug fixes, too. Added Project_GetFname() for user scripts.
project.tar.gz 1.0 2001-11-30 6.0 Aric Blumer Some Bugfixes, improvements in performance. Added recursive create, explore, filenames with spaces, etc.
project.tar.gz 1.0pre4 2001-10-18 6.0 Aric Blumer Last pre before 1.0, so please test!
- Added project grep, project load, project wipe
- Can run commands on all files in a project.
- Now supports netrw plugin
project.tar.gz 1.0pre3 2001-10-09 6.0 Aric Blumer Added flags for sorting of filenames.
Added mappings to run external program or Vim script on a file.
Fixed a small bug ("internal error").
project.tar.gz 1.0pre2 2001-10-05 6.0 Aric Blumer Fixed absolute path detection for Win32. (Thanks Lawrence!) Fixed small documentation error.
project.tar.gz 1.0pre1 2001-10-03 6.0 Aric Blumer Several new features, most notably: Paths can now be relative in subprojects. Subprojects inherit parameters from parent. New in= and out= directives to run Vim scripts to modify the environment. Added T flag. Added per-fold flags. CTRL-W_o keeps Project Window visible. etc.
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.