91

システム クリップボードにコピーするには、Shiftキーを使用して tmux ウィンドウでマウス テキストを選択する必要があります。そして、次のコマンドを実行する必要があります。

tmux save-buffer - | reattach-to-user-namespace pbcopy

システムのクリップボードに簡単に保存できる可能性はありますか? Shiftキーを離した後、キーバインドまたはそれを自動的に行うことをお勧めします。

私の tmux 設定: https://gist.github.com/3641580

4

15 に答える 15

29

ここで回答された同様の質問があります: https://unix.stackexchange.com/questions/15715/getting-tmux-to-copy-a-buffer-to-the-clipboard

そこに解決策が見つかりました:

# move x clipboard into tmux paste buffer
bind C-p run "tmux set-buffer \"$(xclip -o)\"; tmux paste-buffer"
# move tmux copy buffer into x clipboard
bind C-y run "tmux show-buffer | xclip -i"

こちらもチェックしてください: http://awhan.wordpress.com/2012/04/18/tmux-copy-paste-with-mouse/

次のオプションを設定した場合:

マウス選択ペイン

マウス選択ウィンドウ

テキストをまったく選択できないことに気付くでしょう。

解決策は、シフト キーを使用することです。

hold down the shift key and then left click and drag across the target text. you must also hold down the shift key and then middle click in order to paste the text.
于 2012-09-20T19:13:19.340 に答える
22

tmux バージョン 2.2 以降を使用する OSX では、次を tmux.conf ファイルに追加します。

bind-key -t emacs-copy MouseDragEnd1Pane copy-pipe "pbcopy"
bind-key -t vi-copy MouseDragEnd1Pane copy-pipe "pbcopy"

tmux バージョン 2.4 では、コマンド構文を変更することを親切に決定したため、次を使用する必要があります。

bind-key -T copy-mode MouseDragEnd1Pane send -X copy-pipe-and-cancel "pbcopy"

reattach-to-user-namespace pbcopyplain の代わりに使用する必要があるかもしれないことに注意してくださいpbcopy

于 2016-05-02T19:38:25.633 に答える
11

これを ~/.tmux.conf ファイルに入れるとうまくいきます:

bind y run-shell "reattach-to-user-namespace -l zsh -c 'tmux show-buffer | pbcopy'"

私が見つけた他のすべての潜在的な解決策は、ある種の空のコンテンツを OSX クリップボードにコピーすることでした。

唯一の問題は、貼り付けたコンテンツの最後にキャリッジ リターンが挿入されているように見えることです。

于 2012-09-28T05:47:53.853 に答える
6

シフトキーを押してマウスクリック!! このリンクを確認してください。 http://awhan.wordpress.com/2012/04/18/tmux-copy-paste-with-mouse/

于 2013-11-23T00:27:04.863 に答える
2

mosh + tmux + vim + ネストされたセッションの任意の組み合わせで動作する堅牢なソリューション

これに取り組むために何日も費やした後、私が発見した最も堅牢なソリューションは、Suraj N. Kurapati の投稿されたソリューションです。このソリューションは、コピー モード キーと単純なマウス選択の両方を使用して、tmux v3.2 および/または vim を使用して (または使用せずに) ローカルで、およびtmuxおよび/またはvimを使用して (使用せずに) リモートで動作します。

Mike Gulick の (現在開いている)プル リクエストと組み合わせると、これらの組み合わせはすべてmoshでも機能します。

Mike のソリューションが mosh にマージされるまでは、次を使用して彼の変更をプルし、ローカルでビルドできます。

Ubuntu:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0 \
&& sudo apt-add-repository https://cli.github.com/packages \
&& sudo apt update \
&& sudo apt install -y gh autoconf automake perl protobuf-compiler libprotobuf-dev libncurses-dev zlib1g-dev libutempter-dev libssl-dev pkg-config \
&& mkdir -p ~/tmp/mosh \
&& git clone https://github.com/mobile-shell/mosh ~/tmp/mosh \
&& cd ~/tmp/mosh \
&& gh pr checkout 1104 \
&& ./autogen.sh \
&& ./configure \
&& make \
&& sudo make install

マックOS:

最初に Apple の Xcode/Developer Command Line Tools をインストールする必要があると思います (これは、IIRC を実行gccして終了するだけで実行できるようになりました)。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" \
&& brew install gh autoconf automake
&& mkdir -p ~/tmp/mosh \
&& git clone https://github.com/mobile-shell/mosh ~/tmp/mosh \
&& cd ~/tmp/mosh \
&& gh pr checkout 1104 \
&& ./autogen.sh \
&& ./configure \
&& make \
&& sudo make install

これらのアップデートにより、クリップボードの聖杯がついに達成されました!

ただし、これは非常に新しい情報であるため、私のこの投稿はかなり不安定です。したがって:

次の場合は、私の投稿を親切に修正してください。

  1. 依存関係などが不足している、または
  2. mosh にマージされたため、Mike の変更を実行するgh pr checkout 1104必要がなくなった、または
  3. マージされた変更が brew/apt/etc パッケージ マネージャーにプッシュされたため、ソースからのビルドは不要になりました。
于 2020-10-19T20:36:30.160 に答える