あるターミナルウィンドウのvimから別のターミナルウィンドウのvimに貼り付けることはできますが、vimの外部に貼り付けることはできません。私はこの主題に関する多くの投稿を読みましたが、私が見つけたものは何も役に立ちませんでした。 MacVimからのコピー/貼り付けは機能しますが、私はVIMを使用することを好みます。
MacPorts経由でインストールされたOSX10.7.5とVim7.4を使用しています。
vim --version
+ clipboard、+ x11、+ xterm_clipboardを示しています。
「+ y」、「* y」を視覚的選択と範囲選択の両方と組み合わせて試しました。
私の~/.vimrc
、 私が持っている
set clipboard=unnamedplus,unnamed,autoselect
編集:
解決策が見つかりました!これで、y、yyなどが完全に機能します。 Vimでヤンクしたものは何でも、外に貼り付けることができ、外でコマンドを実行したものは何でも、Vimでpできます。
解決策:FDinofの提案に従って、x11を使用せずにMacPorts経由で再インストールしました。
Sudo -v port install vim + huge
記録のために、私はまだ持っています
set clipboard = unnamedplus、unnamed、autoselect
私の〜/ .vimrcで
ご協力ありがとうございました!
macはx11を使用しないため、クリップボードへのコピーにはx11は必要ありません。 x11なしでvimを再コンパイルします。私の推測では、Mac側からアクセスする方法がわからないx11クリップボードにコピーしていると思います。
MacPortsでは、クリップボードのサポートを機能させるには、巨大なバリアントを使用するだけで十分です。
port install vim +huge
Vimのメモリから、他の外部コマンドと同じようにpbcopyとpbpasteを使用できます。現在の行をクリップボードタイプにコピーするには:
:.!pbcopy
1行目から50行目をコピーします
:1,50!pbcopy
クリップボードの内容を現在のvimbuferにコピーするには、次のようにします。
:r !pbpaste
http://vim.wikia.com/wiki/In_line_copy_and_paste_to_system_clipboard
以下の設定をvimrcに入れてください:
vnoremap \y y:call system("pbcopy", getreg("\""))<CR>
nnoremap \p :call setreg("\"", system("pbpaste"))<CR>p
noremap YY "+y<CR>
noremap P "+gP<CR>
noremap XX "+x<CR>
ビジュアルモードでデータをコピーし、通常モードでデータを貼り付けます。
クリップボードを使用するようにvimを構成するのに多くの問題があり、client-serverオプションなしでhomebrewを介して再インストールするまで、それを機能させることができませんでした。