TmuxでXクリップボードにテキストをコピーするために、私が現在行っていることは次のとおりです。
mode-keys vi
btwを使用)(bind C-c run "tmux show-buffer | xclip -selection clipboard -i"
としてマッピングがあります
選択モードのマッピングを作成することにより、これらの手順の一部を排除しようとしています。私が試してみました:
bind-key -t vi-copy C-c run "tmux show-buffer | xclip -selection clipboard -i"
これは私とエラーを与えます:
.. usage: bind-key [-cnr] [-t key-table] key command [arguments]
(エラーをコピーできませんでした)
どうすれば修正できますか?
編集:通常の選択と同じようにマウスを使用してtmuxバッファー(最初の3ステップ)を選択してコピーできることを認識しています(強調表示は持続しませんが、テキストは選択されます)。 xクリップボードにコピーする次のバインド:
bind-key -n C-c run "tmux show-buffer | xclip -selection clipboard -i"
(私はこの方法を使用してこのテキストをコピーし、それは簡単でした;)
-n
は「接頭辞なし」を示すため、エスケープする必要はありません。消えるハイライトに混乱しない場合、これは通常の(一般的なユーザーインターフェイス)コピーに似ています。
これは私がこれまでに思いついた中で最高です。
EDIT2:判明 ctrl+c プロセスの割り込みとオーバーラップしているので、 ctrl+alt+c 今のところ。 (あまり好きではなかった)
EDIT3: tmux 1.8のように、コピーモードでキーバインドを追加するためのサポートが追加されたので、次のようなものを使用して最初の元の意図が可能になりました。
bind-key -tvi-copy y copy-pipe "xclip -selection clipboard -i"
bind-key -tvi-copy enter copy-pipe "xclip -selection clipboard -i"
これらの2つのバインディングにより、使用時にテキストをクリップボードにコピーできます。 enter または y コピーを終了します。
マウスでコピーして後でtmuxバッファーの内容をクリップボードに取り込むことにした場合に備えて、この行を保持します。
bind-key y run "tmux show-buffer | xclip -selection clipboard -i"
この返信は、ショートカットの作成に関する質問には直接回答しません。しかし、これが私がすることです。
保持することで、キー/マウスイベントのtmuxへの受け渡しを一時的に停止できます。 shift。そのため、Shiftキーを押したまま、ターミナル/ Xの通常のショートカットを使用してコピーを実行できます。私の場合、ターミネーターを使用して、 shift、好きなようにマウスでハイライトし、コピーして Ctrl+Shift+C
また、ペインが分割されている場合は、ズーム切り替えキーを使用して現在のペインをズームできます Prefix + z、コピー操作を実行します。 (tmux v1.8でテスト済み)
これはあなたの質問に直接答えるものではありませんが、- tmux-yank を参照してください tmuxでvi-copyモードでシステムクリップボードを使用する および tmuxにバッファをクリップボードにコピーさせる 。インストール後、
prefix + y
-コマンドラインからクリップボードにテキストをコピーします。コピーモードバインディング:
y
-選択範囲をシステムのクリップボードにコピー