OSXでcopy-pipe
を使用して、システムクリップボードをTmux1.8と共有します。
unbind -t vi-copy Enter
bind -t vi-copy Enter copy-pipe "reattach-to-user-namespace pbcopy"
これは、選択モードに入ってテキストをコピーするときに機能します(テキストを選択してから、 Enter)。ただし、マウスでテキストを選択する場合はそうではありません。 copy-pipe
を押した後に実行するように、マウスを選択した後に実行するコマンドを設定することは可能ですか? Enter?つまり選択が残ったら、reattach-to-user-namespace pbcopy
を実行する必要があります。
マウスによって開始された選択を終了する「マウスアップ」動作をカスタマイズする組み込みの方法はありません。詳細については、 _reset_mode
_ label of window_copy_mouse()
in _window-copy.c
_ (リンクはtmux1.8);のソースへ具体的には、このコードにはウィンドウ、セッション、またはサーバーオプションへの参照はありません。
回避策はありますが、おそらくエッジケースのビットです。
copy-pipe
_バインディングをアクティブにします(たとえば、Enterキーを押します)。copy-pipe
_の通常の動作)。ただし、小さな副作用があります。
input_mouse()
は、新しいコピーモードを開始する前に、マウスイベントが「ボタンアップ」イベントであることを確認しません)。ただし、ほとんどの場合無害です(2番目のコピーモードインスタンスを終了する必要があるという不便さを除けば)。Tmux 2.2以降の場合:
bind-key -t emacs-copy MouseDragEnd1Pane copy-pipe "pbcopy"
bind-key -t vi-copy MouseDragEnd1Pane copy-pipe "pbcopy"