Xなしでサーバー上のターミナルアプリケーションのクリップボードを同期する方法は?

Xなしでサーバー上のターミナルアプリケーションのクリップボードを同期する方法は?

Xサーバーを搭載したコンピュータでは、selectionクリップボードを使用してGUIとターミナルプログラム間のコピー/貼り付けを同期します。これで、Xなしのサーバーがあり、同じ端末アプリケーション間でコピー/貼り付けを同期したいと思いますzsh。後で、このクリップボードをLinuxサーバーにSSHに接続するために使用するMacのシステムクリップボードとさらに同期したいと思います。vimtmux

この設定は可能ですか?具体的には、

  • X11を実行せずにターミナルアプリケーション全体でLinux共有クリップボードからコピー/貼り付けを同期できますか?

  • 同様のツールがxselありますかxclip

  • より良い点は、Xサーバーが実行されているかどうかに関係なく機能し、どちらの場合も同じ構成/ドットファイルを使用できるツールはありますか?

  • 最後に、これが別の質問であることを認めます。このクリップボードはSSHクライアントのクリップボードとどのように同期されますか?

ベストアンサー1

ターミナルアプリケーションには汎用クリップボードはありません。 tmux、zsh、およびvimにはすべて独自のクリップボードがあります。

tmuxには、エスケープシーケンス(オプション)を使用してコピーされたテキストを外部端末に送信し、set-clipboardクリップボード()を読み取るメカニズムがありますrefresh-client -l。この機能は、すべての端末ではなく、X端末でのみサポートされます。

set-clipboardtmuxは、tmuxに設定されているときにtmux内のアプリケーションが最新の貼り付けバッファを読み取ることができるように、同じエスケープシーケンス(OSC 52)もサポートしますon。しかし、私が知っている限り、これを使用するアプリケーションはほとんどありません。

tmuxでは、コマンドを使用して貼り付けバッファをファイルまたは標準出力に保存し、コマンドを使用してsave-bufferロードすることもできますload-buffer。 OSC 52よりも使いやすくなります。

私はzshとvimがこれらの関数の1つを使ってクリップボードを設定して検索できるスクリプトを書くのが好きです。

はい。 tmux内ですべてを実行し、tmuxを使用してクリップボードを保存し、vim、zshなどからインポートして設定するスクリプトを書くことで、何かを一緒に投げることができます。しかし、私の考えには自分でやるべきだと思います。既存のソリューションはありません。

おすすめ記事