" Set options and add mapping such that Vim behaves a lot like MS-Windows " " Maintainer: Bram Moolenaar " Last change: 2005 Dec 28 " bail out if this isn't wanted (mrsvim.vim uses this). if exists("g:skip_loading_mswin") && g:skip_loading_mswin finish endif " set the 'cpoptions' to its Vim default if 1 " only do this when compiled with expression evaluation let s:save_cpo = &cpoptions endif set cpo&vim " set 'selection', 'selectmode', 'mousemodel' and 'keymodel' for MS-Windows behave mswin " backspace and cursor keys wrap to previous/next line set backspace=indent,eol,start whichwrap+=<,>,[,] " backspace in Visual mode deletes selection vnoremap d " CTRL-X and SHIFT-Del are Cut vnoremap "+x vnoremap "+x " CTRL-C and CTRL-Insert are Copy vnoremap "+y vnoremap "+y " CTRL-V and SHIFT-Insert are Paste map "+gP map "+gP cmap + cmap + " Pasting blockwise and linewise selections is not possible in Insert and " Visual mode without the +virtualedit feature. They are pasted as if they " were characterwise instead. " Note: the same stuff appears in menu.vim. if has("virtualedit") nnoremap Paste :call Paste() func! Paste() let ove = &ve set ve=all normal `^ if @+ != '' normal "+gP endif let c = col(".") normal i if col(".") < c " compensate for i moving the cursor left " Avoid a beep when the text ends at the window edge. let vb_save = &vb let t_vb_save = &t_vb set vb t_vb= normal l let &vb = vb_save let &t_vb = t_vb_save endif let &ve = ove endfunc inoremap