我可以将tmux缓冲区传输到pbcopy吗?

问题描述 投票:2回答:4

我想在tmux save-buffer - | pbcopy或类似的save-buffer - | xclip -i -selection clipboard克隆中执行此操作,以便我可以将tmux剪贴板的内容传递到os-x剪贴板。问题是,当我从tmux命令行运行命令时,tmux总是给我一个语法提示,或者当通过keymap运行时它表示save-buffer - | pbcopy returned 1并没有任何用处。我看过linux xclip solution上的explainshell.com,但这没有用。 tmux手册页和错误消息也有点无用。有任何想法吗?

版本信息等:

  • tmux:1.9a
  • OS-X:10.9.4
  • ZSH:5.0.5
macos clipboard tmux
4个回答
1
投票

我发现了一个替代解决方案来实现相同的结果... https://unix.stackexchange.com/questions/15715/getting-tmux-to-copy-a-buffer-to-the-clipboard在linux和os-x上使用copy-pipe,我得到了我正在寻找的东西。 :)


1
投票

对不起necroposting。

作为一个令人讨厌的解决方案,我建议:

  1. 通过tmux复制文本
  2. 运行cat | pbcopy
  3. 从tmux粘贴
  4. 按Ctrl + d

干得好。没有args的cat只有输入直到EOF(由Ctd + D完成)


0
投票

我使用reattach-to-user-namespace程序和这个配置解决了这个问题:

〜/ .tmux.conf

# Define default shell
set -g default-command "reattach-to-user-namespace -l zsh"

# Copy tmux buffer content to OS clipboard
bind-key y run "tmux save-buffer - | reattach-to-user-namespace pbcopy"

现在我可以按<prefix>+y将文本从tmux缓冲区复制到OS剪贴板。


0
投票

我还希望能够选择要复制的缓冲区:

bind y choose-buffer "run-shell \"tmux show-buffer -b %% | pbcopy\" \; display-message \"Copied to system clipboard\""
© www.soinside.com 2019 - 2024. All rights reserved.