![xst 终端:在 tmux 中时禁用正常剪贴板](https://linux22.com/image/144185/xst%20%E7%BB%88%E7%AB%AF%EF%BC%9A%E5%9C%A8%20tmux%20%E4%B8%AD%E6%97%B6%E7%A6%81%E7%94%A8%E6%AD%A3%E5%B8%B8%E5%89%AA%E8%B4%B4%E6%9D%BF.png)
当不在 tmux 中使用 xst 时,剪贴板以某种方式与 system/os/or-whatever-idk 共享相同的内容,但我可以复制firefox/chrome
并粘贴到 xst 中。
但是使用 tmux 我不能这样做,tmux 只允许使用自己的缓冲区,如何让 tmux 使用system buffer
与其他程序共享的缓冲区?
答案1
如果您使用 Linux,则云添加:
bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -i -f -selection primary | xclip -i -selection clipboard"
如果在 OSX 上使用:
bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "pbcopy"
取自这里
答案2
xsel
tmux 需要(或另一个 X 剪贴板管理器)的帮助。
我使用xsel
并将其添加到我的~/.tmux.conf
,这将允许 CTRL+B CTRL+C (复制)和 CTRL+B CTRL+X (粘贴)到/从 X(主)剪贴板到 tmux 选择缓冲区(反之亦然)。
# turn on clipboard
set -g set-clipboard on
# copy tmux's selection buffer into the X clipboard selection
bind-key C-c run-shell "tmux show-buffer | xsel -b -i" \; \
display-message "Clipboard buffer copied to xsel ..."
# copy X clipboard selection into tmux's selection buffer
bind-key C-x run-shell "xsel -b -o | tmux load-buffer -" \; \
display-message "Clipboard buffer copied from xsel ..."