diff --git a/plugin/delimitMate.vim b/plugin/delimitMate.vim index aa007f1..81d42ac 100644 --- a/plugin/delimitMate.vim +++ b/plugin/delimitMate.vim @@ -301,7 +301,8 @@ function! s:NoAutoClose() "{{{ if delim == '|' let delim = '' endif - exec 'silent! inoremap ' . delim . ' =delimitMate#SkipDelim("' . escape(delim,'"') . '")' + exec 'inoremap delimitMate' . delim . ' =delimitMate#SkipDelim("' . escape(delim,'"') . '")' + exec 'silent! imap '.delim.' delimitMate'.delim endfor endfunction "}}} @@ -312,13 +313,15 @@ function! s:AutoClose() "{{{ while i < len(b:_l_delimitMate_matchpairs_list) let ld = b:_l_delimitMate_left_delims[i] == '|' ? '' : b:_l_delimitMate_left_delims[i] let rd = b:_l_delimitMate_right_delims[i] == '|' ? '' : b:_l_delimitMate_right_delims[i] - exec 'silent! inoremap ' . ld . ' ' . ld . '=delimitMate#ParenDelim("' . escape(rd, '|') . '")' + exec 'inoremap delimitMate' . ld . ' ' . ld . '=delimitMate#ParenDelim("' . escape(rd, '|') . '")' + exec 'silent! imap '.ld.' delimitMate'.ld let i += 1 endwhile " Exit from inside the matching pair: for delim in b:_l_delimitMate_right_delims - exec 'silent! inoremap ' . delim . ' =delimitMate#JumpOut("\' . delim . '")' + exec 'inoremap delimitMate' . delim . ' =delimitMate#JumpOut("\' . delim . '")' + exec 'silent! imap ' . delim . ' delimitMate'. delim endfor " Add matching quote and jump to the midle, or exit if inside a pair of matching quotes: @@ -327,13 +330,15 @@ function! s:AutoClose() "{{{ if delim == '|' let delim = '' endif - exec 'silent! inoremap ' . delim . ' =delimitMate#QuoteDelim("\' . delim . '")' + exec 'inoremap delimitMate' . delim . ' =delimitMate#QuoteDelim("\' . delim . '")' + exec 'silent! imap ' . delim . ' delimitMate' . delim endfor " Try to fix the use of apostrophes (kept for backward compatibility): " inoremap n't n't for map in b:_l_delimitMate_apostrophes_list - exec "silent! inoremap " . map . " " . map + exec "inoremap " . map . " " . map + exec 'silent! imap ' . map . ' delimitMate' . map endfor endfunction "}}} @@ -342,7 +347,8 @@ function! s:VisualMaps() " {{{ let vleader = b:_l_delimitMate_visual_leader " Wrap the selection with matching pairs, but do nothing if blockwise visual mode is active: for del in b:_l_delimitMate_right_delims + b:_l_delimitMate_left_delims + b:_l_delimitMate_quotes_list - exec "silent! vnoremap " . vleader . del . ' delimitMate#Visual("' . escape(del, '")|') . '")' + exec "vnoremap delimitMateVisual" . del . ' delimitMate#Visual("' . escape(del, '")|') . '")' + exec 'silent! vmap ' . vleader . del . ' delimitMateVisual' . del endfor endfunction "}}}