web-dev-qa-db-ja.com

リモートvimからローカルvimにテキストをコピーして貼り付けるにはどうすればよいですか?

Sshを介してリモートマシン上のvimでファイルを編集していて、リモートファイルからテキストをコピーして、ローカルマシンで実行されているvimインスタンスに貼り付けたいと思います。これを行う簡単な方法はありますか?ターミナルエミュレータの選択機能を使用して、現在画面に表示されているテキストを選択できますが、選択範囲が画面に収まらない場合は、運が悪いです。

12
davidscolgan

リモートファイルを開くinローカルvimセッション:

  :e scp://user@Host/relative/path/from/home.txt
23
nperson325681

リモートマシンに十分な権限がある場合は、追加できます

AcceptEnv WINDOWID

/ etc/ssh/sshd_configに移動し、sshdを再起動します。

Sudo /etc/init.d/ssh restart

次に、ローカルマシンに追加します

ForwardX11 yes
SendEnv WINDOWID

〜/ .ssh/configファイルに

次に、リモートマシンでX対応のvimを実行することで(例:gvim -v)、Xクリップボードとの間でコピーアンドペーストできます。テキストを視覚的に選択し(たとえば、Vを使用)、それを*レジスタにヤンクします。

編集

〜/ .ssh/configにSendEnv WINDOWIDの設定に関する部分を含めるのを忘れたので、それを追加して、X転送の有効化をコマンドライン(ssh -Xオプション)から〜/に移動しました。 .ssh/configファイル(ForwardX11 yes)。

9
garyjohn