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

[{'answer_id': 21732, 'author': 'wilhelmtell', 'author_id': 456, 'author_profile': 'https://Stackoverflow.com/users/456', 'pm_score': 6, 'selected': False, 'text': '<p><a href="http://www.tpope.net/" rel="noreferrer">Tim Pope</a> has some kickass plugins.  I love his <a href="http://github.com/tpope/vim-surround" rel="noreferrer">surround</a> plugin.</p>\n'}, {'answer_id': 21765, 'author': 'cschol', 'author_id': 2386, 'author_profile': 'https://Stackoverflow.com/users/2386', 'pm_score': 5, 'selected': False, 'text': '<p>A very nice grep replacement for GVim is <a href="http://petdance.com/ack/" rel="noreferrer">Ack</a>. 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\'. <a href="http://blog.ant0ine.com/2007/03/ack_and_vim_integration.html" rel="noreferrer">This</a> blog shows a way to integrate Ack with vim.</p>\n'}, {'answer_id': 26083, 'author': 'WMR', 'author_id': 2844, 'author_profile': 'https://Stackoverflow.com/users/2844', 'pm_score': 4, 'selected': False, 'text': '<p>I really like the <a href="http://www.vim.org/scripts/script.php?script_id=1643" rel="noreferrer">SuperTab</a> plugin, it allows you to use the tab key to do all your insert completions.</p>\n'}, {'answer_id': 26092, 'author': 'Konrad Rudolph', 'author_id': 1968, 'author_profile': 'https://Stackoverflow.com/users/1968', 'pm_score': 4, 'selected': False, 'text': '<p>Not a plugin, but I advise any Mac user to switch to the <a href="http://code.google.com/p/macvim/" rel="noreferrer">MacVim</a> distribution which is vastly superior to the official port.</p>\n\n<p>As for plugins, I used <a href="http://vim-latex.sourceforge.net/" rel="noreferrer">VIM-LaTeX</a> for my thesis and was very satisfied with the usability boost. I also like the <a href="http://vim-taglist.sourceforge.net/" rel="noreferrer">Taglist</a> plugin which makes use of the <code>ctags</code> library.</p>\n'}, {'answer_id': 26674, 'author': 'Peter Stuifzand', 'author_id': 1633, 'author_profile': 'https://Stackoverflow.com/users/1633', 'pm_score': 2, 'selected': False, 'text': '<p>I use the following two plugins all the time:</p>\n\n<ul>\n<li>project</li>\n<li>vimoutliner</li>\n</ul>\n'}, {'answer_id': 26683, 'author': 'Greg Hewgill', 'author_id': 893, 'author_profile': 'https://Stackoverflow.com/users/893', 'pm_score': 4, 'selected': False, 'text': '<p>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: <a href="http://github.com/ghewgill/vim-scmdiff" rel="noreferrer">http://github.com/ghewgill/vim-scmdiff</a>. Patches welcome!</p>\n'}, {'answer_id': 30699, 'author': 'Naseer', 'author_id': 907, 'author_profile': 'https://Stackoverflow.com/users/907', 'pm_score': 8, 'selected': True, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=1658" rel="noreferrer">Nerdtree</a></p>\n\n<p>The NERD tree allows you to explore your filesystem and to open files and\ndirectories. It presents the filesystem to you in the form of a tree which you\nmanipulate with the keyboard and/or mouse. It also allows you to perform\nsimple filesystem operations. </p>\n\n<p>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.</p>\n\n<p>Edit: Added synopsis</p>\n'}, {'answer_id': 33943, 'author': 'Peter Hoffmann', 'author_id': 720, 'author_profile': 'https://Stackoverflow.com/users/720', 'pm_score': 2, 'selected': False, 'text': '<p>I really love the <a href="http://www.vim.org/scripts/script.php?script_id=1318" rel="nofollow noreferrer">snippetsEmu</a> Plugin. It emulates some of the behaviour of Snippets from the OS X editor TextMate, in particular the variable bouncing and replacement behaviour. </p>\n'}, {'answer_id': 56209, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': 2, 'selected': False, 'text': '<p><a href="http://slinky.imukuppi.org/zenburnpage/" rel="nofollow noreferrer">Zenburn</a> color scheme and good fonts - [Droid Sans Mono](<a href="http://en.wikipedia.org/wiki/Droid_(font))" rel="nofollow noreferrer">http://en.wikipedia.org/wiki/Droid_(font))</a> on Linux, <a href="http://en.wikipedia.org/wiki/Consolas" rel="nofollow noreferrer">Consolas</a> on Windows.</p>\n'}, {'answer_id': 58846, 'author': 'Dominic Dos Santos', 'author_id': 5379, 'author_profile': 'https://Stackoverflow.com/users/5379', 'pm_score': 5, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=31" rel="noreferrer">A.vim</a> is a great little plugin. It allows you to quickly switch between header and source files with a single command. The default is <code>:A</code>, but I remapped it to <code>F2</code> reduce keystrokes.</p>\n'}, {'answer_id': 58861, 'author': 'David Mohundro', 'author_id': 4570, 'author_profile': 'https://Stackoverflow.com/users/4570', 'pm_score': 3, 'selected': False, 'text': '<p><a href="http://www.winterdom.com/weblog/default.aspx" rel="nofollow noreferrer">Tomas Restrepo</a> posted on some <a href="http://www.winterdom.com/weblog/2008/05/01/VimScripts.aspx" rel="nofollow noreferrer">great Vim scripts/plugins</a>. He has also pointed out some nice color themes on his blog, too. Check out his <a href="http://www.winterdom.com/weblog/CategoryView,category,Vim.aspx" rel="nofollow noreferrer">Vim category</a>.</p>\n'}, {'answer_id': 66786, 'author': 'JPaget', 'author_id': 9802, 'author_profile': 'https://Stackoverflow.com/users/9802', 'pm_score': 5, 'selected': False, 'text': '<p><a href="http://vim-taglist.sourceforge.net/" rel="noreferrer">Taglist</a>, a source code browser plugin for Vim, is currently the top rated plugin at the <a href="http://www.vim.org" rel="noreferrer" title="Vim website">Vim website</a> and is my favorite plugin.</p>\n'}, {'answer_id': 767330, 'author': 'Auguste', 'author_id': 85596, 'author_profile': 'https://Stackoverflow.com/users/85596', 'pm_score': 3, 'selected': False, 'text': '<p><a href="http://vim.sourceforge.net/scripts/script.php?script_id=1189" rel="noreferrer">Matrix Mode</a>.</p>\n'}, {'answer_id': 767791, 'author': 'Mykola Golubyev', 'author_id': 54684, 'author_profile': 'https://Stackoverflow.com/users/54684', 'pm_score': 0, 'selected': False, 'text': '<p>During maintenance of a very big and old C++ project I\'ve created two plugins and these are the only ones I use:</p>\n\n<ul>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=1638" rel="nofollow noreferrer">SourceCodeObedience</a> </li>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=2507" rel="nofollow noreferrer">0scan</a></li>\n</ul>\n\n<p>0scan substitute for me taglist, buflist, files explorers, and other things like quick convenience file search.</p>\n\n<p>SourceCodeObedience is very convenient cscope and ctags code surfing with stored history of all your searches with \'Filter\' feature.</p>\n\n<p>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.</p>\n'}, {'answer_id': 1086073, 'author': 'Naga Kiran', 'author_id': 65670, 'author_profile': 'https://Stackoverflow.com/users/65670', 'pm_score': 3, 'selected': False, 'text': '<p>The <strong><a href="http://www.vim.org/scripts/script.php?script_id=90" rel="nofollow noreferrer">vcscommand</a></strong> plugin provides global ex commands for manipulating version-controlled source files and it supports CVS,SVN and some other repositories.</p>\n\n<p>You can do almost all repository related tasks from with in vim:<br/>\n  * Taking the diff of current buffer with repository copy<br/>\n  * Adding new files<br/>\n  * Reverting the current buffer to the repository copy by nullifying the local changes....</p>\n'}, {'answer_id': 1134710, 'author': 'Johan Kotlinski', 'author_id': 63832, 'author_profile': 'https://Stackoverflow.com/users/63832', 'pm_score': 1, 'selected': False, 'text': '<p>I take <a href="http://www.vim.org/scripts/script.php?script_id=1664" rel="nofollow noreferrer">buftabs.vim</a> and <a href="http://www.vim.org/scripts/script.php?script_id=1408" rel="nofollow noreferrer">localvimrc.vim</a> with me whereever I go!</p>\n<blockquote>\n<p>buftabs : Minimalistic buffer tabs saving screen space</p>\n<p>Local configuration : Use different settings for different directories.</p>\n</blockquote>\n'}, {'answer_id': 1208940, 'author': 'Greg Bowyer', 'author_id': 142458, 'author_profile': 'https://Stackoverflow.com/users/142458', 'pm_score': 3, 'selected': False, 'text': '<p>No one said matchit yet ? Makes HTML / XML soup much nicer\n<a href="http://www.vim.org/scripts/script.php?script_id=39" rel="noreferrer">http://www.vim.org/scripts/script.php?script_id=39</a></p>\n'}, {'answer_id': 1336603, 'author': 'chiggsy', 'author_id': 13202, 'author_profile': 'https://Stackoverflow.com/users/13202', 'pm_score': 2, 'selected': False, 'text': '<p>For vim I like a little <a href="http://www.vim.org/scripts/script.php?script_id=1879" rel="nofollow noreferrer">help</a> with completions. Vim has tons of completion modes, but really, I just want vim to complete anything it can, whenver it can. </p>\n\n<p>I <em>hate</em> typing ending quotes, but fortunately <a href="http://www.vim.org/scripts/script.php?script_id=1849" rel="nofollow noreferrer">this plugin</a> obviates the need for such misery. </p>\n\n<p>Those two are my heavy hitters. </p>\n\n<p><a href="http://www.vim.org/scripts/script.php?script_id=2620" rel="nofollow noreferrer">This one</a> may step up to roam my code like an unquiet shade, but I\'ve yet to try it.</p>\n'}, {'answer_id': 1747537, 'author': '1passenger', 'author_id': 198010, 'author_profile': 'https://Stackoverflow.com/users/198010', 'pm_score': 5, 'selected': False, 'text': '<p>I love <a href="http://www.vim.org/scripts/script.php?script_id=2540" rel="noreferrer">snipMate</a>. It\'s simular to snippetsEmu, but has a much better syntax to read (like Textmate).</p>\n'}, {'answer_id': 1747908, 'author': 'Ory Band', 'author_id': 207894, 'author_profile': 'https://Stackoverflow.com/users/207894', 'pm_score': 4, 'selected': False, 'text': '<ol>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=159" rel="nofollow noreferrer">Elegant (mini) buffer explorer</a> - 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. </li>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=273" rel="nofollow noreferrer">TagList</a> - 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 <a href="https://stackoverflow.com/questions/21725/favorite-gvim-plugins-scripts/66786#66786">previous</a> <a href="https://stackoverflow.com/questions/21725/favorite-gvim-plugins-scripts/26092#26092">commenters</a> to your questions.</li>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=1643" rel="nofollow noreferrer">SuperTab</a> - Already noted by <a href="https://stackoverflow.com/questions/21725/favorite-gvim-plugins-scripts/26083#26083">WMR</a> in this post, looks very promising. It\'s an auto-completion replacement key for Ctrl-P.</li>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=1243" rel="nofollow noreferrer">Desert256</a> color Scheme - Readable, dark one.</li>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=1464" rel="nofollow noreferrer">Moria</a> color scheme - Another good, dark one. Note that it\'s gVim only.</li>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=790" rel="nofollow noreferrer">Enahcned Python syntax</a> - 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.</li>\n<li><p><a href="http://www.vim.org/scripts/script.php?script_id=1491" rel="nofollow noreferrer">Enhanced JavaScript syntax</a> - Same like the above.</p></li>\n<li><p><strong>EDIT:</strong> <a href="http://www.vim.org/scripts/script.php?script_id=1528" rel="nofollow noreferrer">Comments</a> - Great little plugin to [un]comment chunks of text. Language recognition included ("#", "/", "/* .. */", etc.) .</p></li>\n</ol>\n'}, {'answer_id': 1771002, 'author': 'Sirupsen', 'author_id': 149274, 'author_profile': 'https://Stackoverflow.com/users/149274', 'pm_score': 3, 'selected': False, 'text': '<p>Just gonna name a few I didn\'t see here, but which I still find extremely helpful:</p>\n\n<ul>\n<li><a href="http://www.vim.org/scripts/script.php?script_id=2423" rel="noreferrer">Gist plugin</a> - Github Gists (Kind\nof Githubs answer to Pastebin,\nintegrated with Git for awesomeness!)</li>\n<li>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)</li>\n</ul>\n'}, {'answer_id': 1888063, 'author': 'Brett Stahlman', 'author_id': 224480, 'author_profile': 'https://Stackoverflow.com/users/224480', 'pm_score': 2, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=2208" rel="nofollow noreferrer">Txtfmt (The Vim Highlighter)</a>\n<a href="http://txtfmt.webs.com/" rel="nofollow noreferrer">Screenshots</a></p>\n\n<p>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.</p>\n\n<p>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".</p>\n'}, {'answer_id': 2284807, 'author': 'tfmoraes', 'author_id': 115612, 'author_profile': 'https://Stackoverflow.com/users/115612', 'pm_score': 0, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=2620" rel="nofollow noreferrer">neocomplcache</a>, the it behave a few like scribes autocompletion.</p>\n'}, {'answer_id': 2294650, 'author': 'james', 'author_id': 276761, 'author_profile': 'https://Stackoverflow.com/users/276761', 'pm_score': 2, 'selected': False, 'text': '<p>I like taglist and fuzzyfinder, those are very cool plugin</p>\n'}, {'answer_id': 2397539, 'author': 'Aman Jain', 'author_id': 29405, 'author_profile': 'https://Stackoverflow.com/users/29405', 'pm_score': 1, 'selected': False, 'text': '<p>Try <a href="http://www.vim.org/scripts/script.php?script_id=2347" rel="nofollow noreferrer">trinity</a></p>\n\n<p>It has :</p>\n\n<p>1) NerdTree</p>\n\n<p>2) SourceExplorer</p>\n\n<p>3) TagList</p>\n'}, {'answer_id': 3092872, 'author': 'julienXX', 'author_id': 310059, 'author_profile': 'https://Stackoverflow.com/users/310059', 'pm_score': 2, 'selected': False, 'text': '<p>If you\'re on a Mac, you got to use <a href="http://peepcode.com/products/peepopen" rel="nofollow noreferrer">peepopen</a>, fuzzyfinder on steroids. </p>\n'}, {'answer_id': 3100001, 'author': 'Benjamin', 'author_id': 252047, 'author_profile': 'https://Stackoverflow.com/users/252047', 'pm_score': 1, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=1238" rel="nofollow noreferrer">Mark</a></p>\n\n<ul>\n<li>It supports Multiple Highliting.</li>\n</ul>\n'}, {'answer_id': 3487250, 'author': 'JAVH', 'author_id': 420934, 'author_profile': 'https://Stackoverflow.com/users/420934', 'pm_score': 2, 'selected': False, 'text': '<p><strong><a href="http://www.vim.org/scripts/script.php?script_id=2607" rel="nofollow noreferrer">TaskList</a></strong></p>\n\n<p>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\'</p>\n'}, {'answer_id': 4280479, 'author': 'Yariv', 'author_id': 506690, 'author_profile': 'https://Stackoverflow.com/users/506690', 'pm_score': 4, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=3302" rel="noreferrer">clang complete</a> - 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.</p>\n'}, {'answer_id': 4280649, 'author': 'ThiefMaster', 'author_id': 298479, 'author_profile': 'https://Stackoverflow.com/users/298479', 'pm_score': 0, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=1040" rel="nofollow">vimtabs</a> in gvim. Awesome and quick way to switch between buffers without wasting any space.</p>\n'}, {'answer_id': 4405436, 'author': 'Paul', 'author_id': 271554, 'author_profile': 'https://Stackoverflow.com/users/271554', 'pm_score': 2, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=1173" rel="nofollow">tcomment</a></p>\n\n<p>"I map the "Command + /" keys so i can just comment stuff out while in insert mode\nimap  :i</p>\n'}, {'answer_id': 4412402, 'author': 'wilhelmtell', 'author_id': 456, 'author_profile': 'https://Stackoverflow.com/users/456', 'pm_score': 3, 'selected': False, 'text': '<p>My latest favourite is <a href="https://wincent.com/products/command-t" rel="noreferrer">Command-T</a>. 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!</p>\n'}, {'answer_id': 5312014, 'author': 'f3lix', 'author_id': 60617, 'author_profile': 'https://Stackoverflow.com/users/60617', 'pm_score': 3, 'selected': False, 'text': '<p><strong>Conque Shell : Run interactive commands inside a Vim buffer</strong></p>\n\n<p>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. </p>\n\n<p><a href="http://code.google.com/p/conque/">http://code.google.com/p/conque/</a></p>\n\n<p><a href="http://www.vim.org/scripts/script.php?script_id=2771">http://www.vim.org/scripts/script.php?script_id=2771</a></p>\n'}, {'answer_id': 5314076, 'author': 'SergioAraujo', 'author_id': 2571881, 'author_profile': 'https://Stackoverflow.com/users/2571881', 'pm_score': 5, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=2332" rel="noreferrer">Pathogen plugin</a> and more things commented by <a href="http://stevelosh.com/blog/2010/09/coming-home-to-vim/" rel="noreferrer">Steve Losh</a></p>\n'}, {'answer_id': 5416236, 'author': 'Paul', 'author_id': 271554, 'author_profile': 'https://Stackoverflow.com/users/271554', 'pm_score': 1, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=2611" rel="nofollow">xptemplate</a></p>\n\n<p>intelligent snippet management:</p>\n\n<p><a href="http://www.vimeo.com/7614329" rel="nofollow">http://www.vimeo.com/7614329</a></p>\n'}, {'answer_id': 5476859, 'author': 'HaskellElephant', 'author_id': 283240, 'author_profile': 'https://Stackoverflow.com/users/283240', 'pm_score': 3, 'selected': False, 'text': '<p>With version 7.3, undo branches was added to vim. A very powerful feature, but hard to use, until <a href="http://stevelosh.com/" rel="noreferrer">Steve Losh</a> made <a href="http://sjl.bitbucket.org/gundo.vim/" rel="noreferrer">Gundo</a> which makes this feature possible to use with a ascii \nrepresentation of the tree and a diff of the change. A must for using undo branches.</p>\n'}, {'answer_id': 7747362, 'author': 'lang2', 'author_id': 172265, 'author_profile': 'https://Stackoverflow.com/users/172265', 'pm_score': 0, 'selected': False, 'text': '<p><a href="http://www.vim.org/scripts/script.php?script_id=102" rel="nofollow">DirDiff</a></p>\n\n<p>Vim\'s very own directory differ.</p>\n'}, {'answer_id': 8606806, 'author': 'thestoneage', 'author_id': 77653, 'author_profile': 'https://Stackoverflow.com/users/77653', 'pm_score': 3, 'selected': False, 'text': '<p>One Plugin that is missing in the answers is <a href="https://github.com/scrooloose/nerdcommenter" rel="nofollow">NERDCommenter</a>, which let\'s you do almost anything with comments. For example {add, toggle, remove} comments. And more. See <a href="http://segfault.in/2010/01/vim-plugins-nerd-commenter/" rel="nofollow">this blog entry</a> for some examples.</p>\n'}]
['https://Stackoverflow.com/questions/21725', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/2386/']