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


8

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に同されているnetrwプラグインによって有効になります。


0

MacOSでは、マシンAからマシンBにSSHで接続し、マシンBでvimを使用する場合、これをマシンBの.vimrcに追加します。

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

+ clipboardと*レジスターでVimを正しく設定したと仮定すると、通常モードで、vim @ machine_BがマシンAのローカルクリップボードにコピーされた場合、*レジスターの内容

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.