This is a mirror of http://www.vim.org/scripts/script.php?script_id=1697 Surround.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. While it works under Vim 6, much of the functionality requires Vim 7. Examples follow. It is difficult to provide good examples in the variable width font of this site; check the documentation for more. Press cs"' (that's c, s, double quote, single quote) inside "Hello world!" to change it to 'Hello world!' Now press cs' to change it to Hello world! To go full circle, press cst" to get "Hello world!" To remove the delimiters entirely, press ds" . Hello world! Now with the cursor on "Hello", press ysiw] (iw is a text object). [Hello] world! Let's make that braces and add some space (use "}" instead of "{" for no space): cs]{ { Hello } world! Now wrap the entire line in parentheses with yssb or yss) . ({ Hello } world!) Revert to the original text: ds{ds) Hello world! Emphasize hello: ysiw Hello world! Finally, let's try out visual mode. Press a capital V (for linewise visual mode) followed by S. Hello world! This plugin is very powerful for HTML and XML editing, a niche which currently seems underfilled in Vim land. (As opposed to HTML/XML *inserting*, for which many plugins are available). Adding, changing, and removing pairs of tags simultaneously is a breeze. The "." command will work with ds, cs, and yss if you install repeat.vim, vimscript #2136. All feedback appreciated. http://github.com/tpope/vim-surround