cygwinでclipboardlistenerを動作させる

スポンサード リンク

SSH先のVimのyankやScreenのpaste bufferを,ローカルマシンのクリップボードへ書き込む方法には,

  1. ncで適当なポートへ送信し,ホスト側で待ち受ける(clipboard_text_listener.pl)
  2. 端末のクリップボード制御コード(OSC52)を使う
  3. ファイルへ保存し,sshコマンドでとってくる

方法があるようだ。一番楽なのは, clipboard_text_listener.pl を使わせていただく方法。 Cygwinで動作させる方法をメモしておく。

インストール

まず作者サイトを見て clipboard_text_listener.pl を保存。リモート先の設定をしておく。

ssh先screenのペーストバッファをクリップボードに貼り付ける - Keep It Simple, Stupid

最近のCygiwnでは putclip コマンドが使えない。 (2016-06-12追記: apt-cyg install cygutils-extra で putclipやgetclipが使えるようになる) 以下のシェルスクリプトを putclip という名前でpathの通ったディレクトリにおいておく。

#!/bin/bash
cat - > /dev/clipboard

あとは実行するだけ。ちゃんと動作するか確かめる。

perl /path/to/clipboard_text_listener.pl -encoding utf8

Windows起動時自動実行

なお,Windowsのスタートアップに登録しておくなら,まずclipboardlistener.batを以下の内容で作成して,

C:
CD C:\cygwin64\bin
bash  --login -i -c "perl /path/to/clipboard_text_listener.pl -encoding utf8"%

同じディレクトリに clipboardlistener.vbs を以下の内容で作成する。 スタートアップフォルダには, clipboardlistener.vbs へのショートカットを作成する。

Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c clipboardlistener.bat", vbhide

Comments !

social