Windows ←→ VMware間でvimのヤンクとwindowsのクリップボードを共有する。

vimでヤンクしたものをwindowsクリップボードにバッファできたら便利なのになーと思ってたら
set clipboard=unnameとやれば無問題だYO!!
と先輩に言われて、実際にやってみるとほんまやーーーー!!便利♪便利♪と思ってたら
この設定windows版のvimでしか有効にならないでやんの。。orz

基本的にvmware上で作業してるオイラとしては、
Windows ←→ VMware間で自動的に共有してほしかったりするわけです。
うーん、と思ってると
こんな記事が。。。
vimでvmwareとWindowsのクリップボードを同期する
ばっちり!!これこれ。。
でも、このままだとyyした後に,cとやらなきゃいけないのはちとめんどいので(非同期はイヤ!!) ちょこっとだけMカスタムする。
.vimrcに下のように書いとけば、yyしたときにクリップボードにもコピーされる。

if has('win32')
  " ヤンクしたときにもクリップボードへもヤンク
  set clipborad=unnamed
  " ヴィジュアルモードでヤンクしたときにも同様
  set guioptions+=a
else
  function! SyncClipboard()
    let cliptext = substitute(getreg(), "'", "'\"'\"'", 'g')
    let cmd = "echo '" . cliptext . "' | vmw copy"
    call system(cmd)
  endfunction
  nmap ,c :call SyncClipboard()<CR>
  nmap yy yy,c
endif

パーペキです!!