Xなしでvimにコピー/貼り付け

Xなしでvimにコピー/貼り付け

vimでは"+pシステムクリップボードから貼り付けます。ただし、GUI以外のシステムでSSHを介してリモートで作業している場合、この機能は使用できません。

この環境でコピー/貼り付けが可能ですか?

端末からテキストをコピーするだけでは、ファイルの範囲を超えてコンテンツもコピーするため、十分ではありません(たとえば、tmuxを使用するとすべてがプレーンテキストであるため、フルスクリーンがコピーされます)。

答え1

1つの回避策は、(リモートアクセス)一時ファイルを使用してテキストを転送することです。

自分のシステムにSSH経由で再接続できる場合は、インポートした:split scp://hostname/path/to/fileテキストをそこに入れてから:write

SSHを介してのみシステムがサーバーに接続できる場合は、Vimをローカルで開き、サーバーの一時ファイルにアクセスしてください(vim scp://server/path/to/fileまたは直接使用scp)。

これはすべて次のように行われますネットワークVimに付属のプラグイン。

答え2

MacOSでは、コンピュータAからコンピュータBに移動し、コンピュータBでvimを使用すると、コンピュータBの.vimrcに次のものが追加されます。

nmap yr :call system("ssh $machineA_IP pbcopy", @*)<CR>

これにより、通常モードでvim @ machine_Bの*レジスタの内容がコンピュータAのローカルクリップボードにコピーされ、+clipboardと*レジスタを使用してVimが正しく設定されたと想定されます。

関連情報