Favorite (G)Vim plugins/scripts?

VimEditor

Vim Problem Overview


What are your favorite (G)Vim plugins/scripts?

Vim Solutions


Solution 1 - Vim

Nerdtree

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

Tim Pope has some kickass plugins. I love his surround plugin.

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

  1. 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.

  2. 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.

  3. SuperTab - Already noted by WMR in this post, looks very promising. It's an auto-completion replacement key for Ctrl-P.

  4. Desert256 color Scheme - Readable, dark one.

  5. Moria color scheme - Another good, dark one. Note that it's gVim only.

  6. 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.

  7. Enhanced JavaScript syntax - Same like the above.

  8. 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.

http://code.google.com/p/conque/

http://www.vim.org/scripts/script.php?script_id=2771

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

TaskList

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

tcomment

"I map the "Command + /" keys so i can just comment stuff out while in insert mode imap >>:i

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

Try trinity

It has :

  1. NerdTree

  2. SourceExplorer

  3. TagList

Solution 33 - Vim

Mark

  • It supports Multiple Highliting.

Solution 34 - Vim

xptemplate

intelligent snippet management:

http://www.vimeo.com/7614329

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

DirDiff

Vim's very own directory differ.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestioncscholView Question on Stackoverflow
Solution 1 - VimNaseerView Answer on Stackoverflow
Solution 2 - VimwilhelmtellView Answer on Stackoverflow
Solution 3 - VimSergioAraujoView Answer on Stackoverflow
Solution 4 - VimJPagetView Answer on Stackoverflow
Solution 5 - Vim1passengerView Answer on Stackoverflow
Solution 6 - VimcscholView Answer on Stackoverflow
Solution 7 - VimDominic Dos SantosView Answer on Stackoverflow
Solution 8 - VimWMRView Answer on Stackoverflow
Solution 9 - VimGreg HewgillView Answer on Stackoverflow
Solution 10 - VimOry BandView Answer on Stackoverflow
Solution 11 - VimKonrad RudolphView Answer on Stackoverflow
Solution 12 - VimYarivView Answer on Stackoverflow
Solution 13 - VimDavid MohundroView Answer on Stackoverflow
Solution 14 - VimGreg BowyerView Answer on Stackoverflow
Solution 15 - VimHaskellElephantView Answer on Stackoverflow
Solution 16 - VimAugusteView Answer on Stackoverflow
Solution 17 - VimwilhelmtellView Answer on Stackoverflow
Solution 18 - Vimf3lixView Answer on Stackoverflow
Solution 19 - VimNaga KiranView Answer on Stackoverflow
Solution 20 - VimSirupsenView Answer on Stackoverflow
Solution 21 - VimthestoneageView Answer on Stackoverflow
Solution 22 - VimjamesView Answer on Stackoverflow
Solution 23 - VimJAVHView Answer on Stackoverflow
Solution 24 - VimPeter HoffmannView Answer on Stackoverflow
Solution 25 - VimAnonView Answer on Stackoverflow
Solution 26 - VimjulienXXView Answer on Stackoverflow
Solution 27 - VimPeter StuifzandView Answer on Stackoverflow
Solution 28 - VimchiggsyView Answer on Stackoverflow
Solution 29 - VimBrett StahlmanView Answer on Stackoverflow
Solution 30 - VimPaulView Answer on Stackoverflow
Solution 31 - VimJohan KotlinskiView Answer on Stackoverflow
Solution 32 - VimAman JainView Answer on Stackoverflow
Solution 33 - VimBenjaminView Answer on Stackoverflow
Solution 34 - VimPaulView Answer on Stackoverflow
Solution 35 - VimMykola GolubyevView Answer on Stackoverflow
Solution 36 - VimtfmoraesView Answer on Stackoverflow
Solution 37 - VimThiefMasterView Answer on Stackoverflow
Solution 38 - Vimlang2View Answer on Stackoverflow