What is the most useful plugin for the Vim Text Editor [1]?
NERDTree [1]
[1] http://www.vim.org/scripts/script.php?script%5Fid=1658The 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.
If you are doing any kind of programming, the taglist plugin [1] is essential.
You'll get a list of all functions/methods in your current buffer or all your buffers or your complete project.
[1] http://vim-taglist.sourceforge.net/snipMate.vim aims to be an unobtrusive, concise vim script that implements some of TextMate's snippets features in Vim. A snippet is a piece of often-typed text that you can insert into your document using a trigger word followed by a <tab>.[1] http://www.vim.org/scripts/script.php?script%5Fid=2540
The version control system plugin -- vcscommand [1]
[1] http://www.vim.org/scripts/script.php?script_id=90for manipulating files controlled by CVS, SVN, SVK and git within VIM, including committing changes and performing diffs using the vimdiff system
Command-T [1].
The Command-T plug-in for VIM provides an extremely fast, intuitive mechanism for opening files with a minimal number of keystrokes. It's named "Command-T" because it is inspired by the "Go to File" window bound to Command-T in TextMate.
It's very similar to FuzzyFinder, with the following advantages over FuzzyFinder:
Another really useful one is the surround plugin [1]:
[1] http://www.vim.org/scripts/script.php?script%5Fid=1697Surround.vim is all about "surroundings": parentheses, brackets, quotes, XML tags, and more. The plugin provides mappings to easily delete, change and add such surroundings in pairs.
FuzzyFinder [1] is a file searching plugin for Vim. It allows the user to type in any part of a file or buffer name and switch to it quickly.
[1] http://www.vim.org/scripts/script.php?script_id=1984vimrails [1] hands down, but keep in mind I'm really biased, most of the time I spend in Vim is working on Ruby on Rails applications.
[1] http://github.com/tpope/vim-rails/tree/masterI just started using it recently but I really really dig arpeggio [1]. It allows a new mapping mechanism where ANY two simultaneous key presses causes the right hand side to be executed. I think it will probably change the way I use VIM.
A close runner up is conque [2] which allows you to run a shell inside of vim. I have wanted this for over a decade and someone finally came out with it. It works fairly well.
[1] http://www.vim.org/scripts/script.php?script_id=2425minibufexplorer [1]
I cant believe no one has mentioned minibufexplorer yet. This plugin is very simple; it displays what buffers are opened, provides some navigation commands, and displays some very useful information about the state of the buffers by color coding their names.
Almost everyone I have met who use vim use it. I couldn't imagine working with multiple buffers without it.
[1] http://www.vim.org/scripts/script.php?script_id=159The Vim config I use is available on GitHub [1]. It integrates plugins mentioned above:
And many more (like git, ruby). See the README. You can download a tarball [3] or zipfile [4], too.
As an IRC user and (obviously) a GitHub user, I use GitHub's " Gist [5]" service for pasting code and log output for helping people, or for getting help. I already upvoted other plugins above that I'm using, but this one deserves mention as "highly useful" (to me, at least).
Gist.vim [6]
It's also on GitHub [7].
[1] http://github.com/jtimberman/dotvim/tree/masterI use:
I have used the DrawIt plug-in (http://www.vim.org/scripts/script.php?script%5Fid=40) in gVim and it works well for small diagrams. I have mostly made network topology diagrams with this. I also used vertical block copy-paste heavily with this plug-in to adjust the components in the diagrams.
Lusty Explorer [1]
Official Description:
[1] http://www.vim.org/scripts/script.php?script%5Fid=1890LustyExplorer is a fast and responsive way to manage files and buffers in Vim. It includes both a filesystem explorer (for opening new files) and a buffer explorer (for switching between currently open files) through a mostly common interface.
VimWiki [1]
[1] http://www.vim.org/scripts/script.php?script_id=2226Vimwiki is a personal wiki for Vim -- a number of linked text files that have their own syntax highlighting.
With vimwiki you can
- organize notes and ideas
- manage todo-lists
- write documentation
UltiSnips [1]
This is the initial release of UltiSnips. It is the Ultimate solution for snippets under Vim. Snippets are intelligent text that spares you a lot of typing. Like many snippets solutions, this one ins heavily inspired by TextMates Snippet Syntax and offers all features that TextMate offers. But in Vim.
I like it over Snipmate because it supports nested placeholders!
[1] http://www.vim.org/scripts/script.php?script_id=2715Project [1] plugin
[1] http://www.vim.org/scripts/script.php?script%5Fid=69You 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 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.
Session Manager [1]
[1] http://www.vim.org/scripts/script.php?script%5Fid=2010Vim provides a ':mksession' command to save the current editing session. This plug-in helps to work with Vim sessions by keeping them in the dedicated location and by providing commands to list all sessions, open session, open last session, close session, save session and show last session. From a list of sessions you can open session, delete session, edit session and edit extra session script. Please note that session name can contain spaces and does not have to have a .vim extension.