sponsor Vim development Vim logo Vim Book Ad

repeat.vim : Use the repeat command (.) with supported plugins

 script karma  Rating 290/106, Downloaded by 10718  Comments, bugs, improvements  Vim wiki

created by
Tim Pope
script type
If you've ever tried using the "." command after a plugin map, you were likely disappointed to discover it only repeated the last native command inside that map, rather than the map as a whole.  That disappointment ends today.  Repeat.vim remaps "." in a way that plugins can tap into it.

Support is already present in the following plugins:

surround.vim (vimscript #1697)
speeddating.vim (vimscript #2120)
abolish.vim (vimscript #1545)
unimpaired.vim (vimscript #1590)
commentary.vim (vimscript #3695)

Adding support to a plugin is generally as simple as the following command at the end of your map functions.

  silent! call repeat#set("\<Plug>MyWonderfulMap",v:count)

Details are at the top of the file.  Let me know if you add support to a script on vim.org and I will link it here.

install details
Install in ~/.vim/autoload/repeat.vim (~\vim\autoload\repeat.vim on Windows).

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
repeat.zip 1.2 2018-01-31 7.0 Tim Pope Provide <Plug> mappings.
Enable repeating operators with custom motions.
Assorted bug fixes.
repeat.zip 1.1 2013-01-01 7.0 Tim Pope Fix adding trailing spaces when 've' is not empty.
Don't increment b:changedtick, offer invalidate instead.
Support repetition with original register.
Don't clobber existing U map.
Respect 'foldopen' on undo.
Allow customizing all mappings.
repeat.vim 1.0 2008-01-31 7.0 Tim Pope Initial upload
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.