我想在我的 tmux 会话中复制/粘贴,就像我在 El Capitan 中所做的那样。我刚刚安装了 MacOS Sierra,不再有这个功能。直到昨天我失去了这个功能,我才意识到我使用这个功能的频率有多高。
- MacOS Sierra Beta 5
- Tmux 2.2
- iterm2 构建 3.0.7
- 重新附加到用户命名空间 v2.5
我做过的事
- 我尝试了原始的 tmux 配置设置本文使用重新附加到用户命名空间。
- 我已卸载 reattach-to-user-namespace 并使用 brew 重新安装。
- 我知道从 El Capitan 开始,使用 pbcopy/pbpaste 不再需要上述包装器。
.tmux.conf
随着 El Capitan 的发布,它已从我的文件中删除。
这是我在这台 MacBook 上安装 Sierra 后需要修复的最后一个问题。我不知道如何调试它以找出哪里出了问题。任何方面的帮助,无论是调试帮助还是解决方案,都将不胜感激。
答案1
可恶,我发现了一个设置项2我错过了。我注意到的是 pbpaste 确实按预期工作,我只是无法在 tmux 会话中选择文本并让 pbcopy 按预期工作。
这让我认真审视我的项2首选项。启用此设置有效,Applications in terminal may access clipboard
。
我还将有关 pbcopy/pbpaste 的 .tmux.conf 部分供其他人使用,因为没有关于此主题的最新资源:
# copy-paste integration
set-option -g default-command "login-shell"
# use vim key bindings in copy mode
setw -g mode-keys vi
# use 'v' to begin selection like in vim
bind-key -t vi-copy v begin-selection
bind-key -t vi-copy y copy-pipe "pbcopy"
# update default bindings of `Enter` to also use copy-pipe
unbind -t vi-copy Enter
bind-key -t vi-copy Enter copy-pipe "pbcopy"
# bind ']' to use pbpaste
bind ] run "pbpaste | tmux load-buffer - && tmux paste-buffer"
注意我使用 login-shell,请确保您的首选 shell 已存在/etc/shells
并且您已将其设置为默认 shell。
chsh -s /usr/local/bin/bash
答案2
对我来说,选中该框并没有起到作用 - 我不得不再次添加 tmux-MacOSX-pasteboard,如下所示: