xref: /vim-8.2.3635/runtime/autoload/paste.vim (revision 314dd79c)
10fd9289dSBram Moolenaar" Vim support file to help with paste mappings and menus
20fd9289dSBram Moolenaar" Maintainer:	Bram Moolenaar <[email protected]>
3*314dd79cSBram Moolenaar" Last Change:	2019 Jan 27
40fd9289dSBram Moolenaar
50fd9289dSBram Moolenaar" Define the string to use for items that are present both in Edit, Popup and
60fd9289dSBram Moolenaar" Toolbar menu.  Also used in mswin.vim and macmap.vim.
70fd9289dSBram Moolenaar
80fd9289dSBram Moolenaarlet paste#paste_cmd = {'n': ":call paste#Paste()<CR>"}
90fd9289dSBram Moolenaarlet paste#paste_cmd['v'] = '"-c<Esc>' . paste#paste_cmd['n']
1037c64c78SBram Moolenaarlet paste#paste_cmd['i'] = "\<c-\>\<c-o>\"+gP"
110fd9289dSBram Moolenaar
120fd9289dSBram Moolenaarfunc! paste#Paste()
130fd9289dSBram Moolenaar  let ove = &ve
140fd9289dSBram Moolenaar  set ve=all
150fd9289dSBram Moolenaar  normal! `^
160fd9289dSBram Moolenaar  if @+ != ''
170fd9289dSBram Moolenaar    normal! "+gP
180fd9289dSBram Moolenaar  endif
190fd9289dSBram Moolenaar  let c = col(".")
200fd9289dSBram Moolenaar  normal! i
210fd9289dSBram Moolenaar  if col(".") < c	" compensate for i<ESC> moving the cursor left
220fd9289dSBram Moolenaar    normal! l
230fd9289dSBram Moolenaar  endif
240fd9289dSBram Moolenaar  let &ve = ove
250fd9289dSBram Moolenaarendfunc
26