クリップボードからの貼り付け

*追記(2008.10.22)*
コメントでka-nachtさんより教えていただいた方法がすばらしいです。
以下はお勧めできません。

windowsだとgvim使っているのですが、クリップボードにコピーした文字列を貼り付けるときに
毎回:se pasteして:se nopasteするのは無駄ではないかと思いまして。
vimscriptがあるんだから使えばいいじゃないかと思いまして。
こんなの作ってみました。

" クリップボードからペースト
function! PasteTextFromClipboard()
  let oldpaste = &paste

  try
    set paste
    silent execute 'normal! "+gP'
  finally
    let &paste = oldpaste
  endtry
endfunction
nnoremap <silent> <M-v> :call PasteTextFromClipboard()<CR>
inoremap <silent> <M-v> <C-O>:call PasteTextFromClipboard()<CR>
vnoremap <silent> <M-v> "-c<C-O>:call PasteTextFromClipboard()<CR><ESC>l
cnoremap <silent> <M-v> <C-R>+
" クリップボードへコピー
vmap <M-c> "+y
" クリップボードへ切り取り
vmap <M-x> "+d

初vimscrip。