Favorite (G)Vim plugins/scripts?
VimEditorVim Problem Overview
What are your favorite (G)Vim plugins/scripts?
Vim Solutions
Solution 1 - Vim
The NERD tree allows you to explore your filesystem and to open files and directories. It presents the filesystem to you in the form of a tree which you manipulate with the keyboard and/or mouse. It also allows you to perform simple filesystem operations.
The tree can be toggled easily with :NERDTreeToggle which can be mapped to a more suitable key. The keyboard shortcuts in the NERD tree are also easy and intuitive.
Edit: Added synopsis
Solution 2 - Vim
Solution 3 - Vim
Pathogen plugin and more things commented by Steve Losh
Solution 4 - Vim
Taglist, a source code browser plugin for Vim, is currently the top rated plugin at the [Vim website][2] and is my favorite plugin.
[2]: http://www.vim.org "Vim website"
Solution 5 - Vim
I love snipMate. It's simular to snippetsEmu, but has a much better syntax to read (like Textmate).
Solution 6 - Vim
A very nice grep replacement for GVim is Ack. A search plugin written in Perl that beats Vim's internal grep implementation and externally invoked greps, too. It also by default skips any CVS directories in the project directory, e.g. '.svn'. This blog shows a way to integrate Ack with vim.
Solution 7 - Vim
A.vim is a great little plugin. It allows you to quickly switch between header and source files with a single command. The default is :A
, but I remapped it to F2
reduce keystrokes.
Solution 8 - Vim
I really like the SuperTab plugin, it allows you to use the tab key to do all your insert completions.
Solution 9 - Vim
I have recently started using a plugin that highlights differences in your buffer from a previous version in your RCS system (Subversion, git, whatever). You just need to press a key to toggle the diff display on/off. You can find it here: <http://github.com/ghewgill/vim-scmdiff>;. Patches welcome!
Solution 10 - Vim
-
Elegant (mini) buffer explorer - This is the multiple file/buffer manager I use. Takes very little screen space. It looks just like most IDEs where you have a top tab-bar with the files you've opened. I've tested some other similar plugins before, and this is my pick.
-
TagList - Small file explorer, without the "extra" stuff the other file explorers have. Just lets you browse directories and open files with the "enter" key. Note that this has already been noted by previous commenters to your questions.
-
SuperTab - Already noted by WMR in this post, looks very promising. It's an auto-completion replacement key for Ctrl-P.
-
Desert256 color Scheme - Readable, dark one.
-
Moria color scheme - Another good, dark one. Note that it's gVim only.
-
Enahcned Python syntax - If you're using Python, this is an enhanced syntax version. Works better than the original. I'm not sure, but this might be already included in the newest version. Nonetheless, it's worth adding to your syntax folder if you need it.
-
Enhanced JavaScript syntax - Same like the above.
-
EDIT: Comments - Great little plugin to [un]comment chunks of text. Language recognition included ("#", "/", "/* .. */", etc.) .
Solution 11 - Vim
Not a plugin, but I advise any Mac user to switch to the MacVim distribution which is vastly superior to the official port.
As for plugins, I used VIM-LaTeX for my thesis and was very satisfied with the usability boost. I also like the Taglist plugin which makes use of the ctags
library.
Solution 12 - Vim
clang complete - the best c++ code completion I have seen so far. By using an actual compiler (that would be clang) the plugin is able to complete complex expressions including STL and smart pointers.
Solution 13 - Vim
Tomas Restrepo posted on some great Vim scripts/plugins. He has also pointed out some nice color themes on his blog, too. Check out his Vim category.
Solution 14 - Vim
No one said matchit yet ? Makes HTML / XML soup much nicer http://www.vim.org/scripts/script.php?script_id=39
Solution 15 - Vim
With version 7.3, undo branches was added to vim. A very powerful feature, but hard to use, until Steve Losh made Gundo which makes this feature possible to use with a ascii representation of the tree and a diff of the change. A must for using undo branches.
Solution 16 - Vim
Solution 17 - Vim
My latest favourite is Command-T. Granted, to install it you need to have Ruby support and you'll need to compile a C extension for Vim. But oy-yoy-yoy does this plugin make a difference in opening files in Vim!
Solution 18 - Vim
Conque Shell : Run interactive commands inside a Vim buffer
Conque is a Vim plugin which allows you to run interactive programs, such as bash on linux or powershell.exe on Windows, inside a Vim buffer. In other words it is a terminal emulator which uses a Vim buffer to display the program output.
Solution 19 - Vim
The vcscommand plugin provides global ex commands for manipulating version-controlled source files and it supports CVS,SVN and some other repositories.
You can do almost all repository related tasks from with in vim:
- Taking the diff of current buffer with repository copy
- Adding new files
- Reverting the current buffer to the repository copy by nullifying the local changes....
Solution 20 - Vim
Just gonna name a few I didn't see here, but which I still find extremely helpful:
- Gist plugin - Github Gists (Kind of Githubs answer to Pastebin, integrated with Git for awesomeness!)
- Mustang color scheme (Can't link directly due to low reputation, Google it!) - Dark, and beautiful color scheme. Looks really good in the terminal, and even better in gVim! (Due to 256 color support)
Solution 21 - Vim
One Plugin that is missing in the answers is NERDCommenter, which let's you do almost anything with comments. For example {add, toggle, remove} comments. And more. See this blog entry for some examples.
Solution 22 - Vim
I like taglist and fuzzyfinder, those are very cool plugin
Solution 23 - Vim
This script is based on the eclipse Task List. It will search the file for FIXME, TODO, and XXX (or a custom list) and put them in a handy list for you to browse which at the same time will update the location in the document so you can see exactly where the tag is located. Something like an interactive 'cw'
Solution 24 - Vim
I really love the snippetsEmu Plugin. It emulates some of the behaviour of Snippets from the OS X editor TextMate, in particular the variable bouncing and replacement behaviour.
Solution 25 - Vim
Zenburn color scheme and good fonts - [Droid Sans Mono](http://en.wikipedia.org/wiki/Droid_(font\)) on Linux, Consolas on Windows.
Solution 26 - Vim
If you're on a Mac, you got to use peepopen, fuzzyfinder on steroids.
Solution 27 - Vim
I use the following two plugins all the time:
- project
- vimoutliner
Solution 28 - Vim
For vim I like a little help with completions. Vim has tons of completion modes, but really, I just want vim to complete anything it can, whenver it can.
I hate typing ending quotes, but fortunately this plugin obviates the need for such misery.
Those two are my heavy hitters.
This one may step up to roam my code like an unquiet shade, but I've yet to try it.
Solution 29 - Vim
Txtfmt (The Vim Highlighter) Screenshots
The Txtfmt plugin gives you a sort of "rich text" highlighting capability, similar to what is provided by RTF editors and word processors. You can use it to add colors (foreground and background) and formatting attributes (all combinations of bold, underline, italic, etc...) to your plain text documents in Vim.
The advantage of this plugin over something like Latex is that with Txtfmt, your highlighting changes are visible "in real time", and as with a word processor, the highlighting is WYSIWYG. Txtfmt embeds special tokens directly in the file to accomplish the highlighting, so the highlighting is unaffected when you move the file around, even from one computer to another. The special tokens are hidden by the syntax; each appears as a single space. For those who have applied Vince Negri's conceal/ownsyntax patch, the tokens can even be made "zero-width".
Solution 30 - Vim
"I map the "Command + /" keys so i can just comment stuff out while in insert mode
imap
Solution 31 - Vim
I take buftabs.vim and localvimrc.vim with me whereever I go!
> buftabs : Minimalistic buffer tabs saving screen space > > Local configuration : Use different settings for different directories.
Solution 32 - Vim
Solution 33 - Vim
- It supports Multiple Highliting.
Solution 34 - Vim
Solution 35 - Vim
During maintenance of a very big and old C++ project I've created two plugins and these are the only ones I use:
0scan substitute for me taglist, buflist, files explorers, and other things like quick convenience file search.
SourceCodeObedience is very convenient cscope and ctags code surfing with stored history of all your searches with 'Filter' feature.
I use them not because they are mine but because they do the complete job and helps me to maintain of ~1Gb unfamiliar code base.
Solution 36 - Vim
neocomplcache, the it behave a few like scribes autocompletion.
Solution 37 - Vim
vimtabs in gvim. Awesome and quick way to switch between buffers without wasting any space.
Solution 38 - Vim
Vim's very own directory differ.