From 2a47d76e47119095e523b9946df423575793acd1 Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Sat, 24 May 2014 20:58:15 -0400 Subject: Add tpope's paste helper from unimpaired.vim Copy of Tim Pope's paste helper. I didn't want the full unimpaired.vim but this functionality is really useful, so including it here in a separate plugin. --- plugin/unimpaired_paste.vim | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 plugin/unimpaired_paste.vim (limited to 'plugin') diff --git a/plugin/unimpaired_paste.vim b/plugin/unimpaired_paste.vim new file mode 100644 index 0000000..5a1a3ef --- /dev/null +++ b/plugin/unimpaired_paste.vim @@ -0,0 +1,35 @@ +" Unimpaired Paste +" Paste helper copied from Tim Pope's unimpaired.vim +" Copied directly from " +" https://github.com/tpope/vim-unimpaired/blob/235be4ce59d3392b7f476814bb0d39de6c91bf2c/plugin/unimpaired.vim#L233-L254 +" +" I didn't want the full Unimpaired plugin, so just copying this part for now +" because it's something I've wanted for a while. +" +" Note that this file should not be considered to have the same license as the +" rest of the repo. As the code was copied wholesale from unimpaired.vim, this +" file retains the license from the plugin as of 2014.05.24, namely the Vim +" license. + +function! s:setup_paste() abort + let s:paste = &paste + let s:mouse = &mouse + set paste + set mouse= +endfunction + +nnoremap unimpairedPaste :call setup_paste() + +nnoremap yo :call setup_paste()o +nnoremap yO :call setup_paste()O + +augroup unimpaired_paste + autocmd! + autocmd InsertLeave * + \ if exists('s:paste') | + \ let &paste = s:paste | + \ let &mouse = s:mouse | + \ unlet s:paste | + \ unlet s:mouse | + \ endif +augroup END -- cgit v1.2.3