- neovimにはclipboard変数があり、その変数を設定することでデフォルトのyank/paste先をwin32yank.exeにできる
- vimにはデフォルト変更ができないので、yankのアクションにHookしてwin32yankにも書き込むよう設定する。
- Pasteは、
[p
にキーバインドする。- pにキーバインドしてもよいのだがwin32yankは最後に改行が入ってしまい通常のvimのyankと使用感が変わってしまうため別のキーに割り振りました。
if system('uname -a | grep microsoft')!=""if has('nvim')letg:clipboard={ \'name':'myClipboard', \'copy':{ \'+':'win32yank.exe -i', \'*':'win32yank.exe -i', \}, \'paste':{ \'+':'win32yank.exe -o', \'*':'win32yank.exe -o', \}, \'cache_enabled':1, \}else
augroup Yank
autocmd!
autocmd TextYankPost * :call system('win32yank.exe -i', @")
augroup END
nnoremap <silent>[p:r!win32yank.exe -o<CR>
vnoremap <silent>[p:r!win32yank.exe -o<CR>endifendif