tmux 复制在 macOS 上速度很慢

tmux 复制在 macOS 上速度很慢

我遇到这个问题已经有大约两年了(自从我在 2018 年夏天开始使用 tmux 以来),我还没有找到这个问题的解决方案。任何帮助是极大的赞赏!

tmux 的复制功能很慢。很多时候,当我使用鼠标选择进行复制,然后粘贴到终端时,它几乎总是粘贴我之前认为是在剪贴板中的内容,它从未将当前鼠标悬停的选择复制到剪贴板中。我必须选择然后等待一段时间(通常是一秒钟左右)。

我已经习惯了从 Linux 和 macOS 上的 iTerm2 复制当前的鼠标选择,它们的速度非常快,我从来不需要考虑或等待复制选择。

这会导致问题,因为有时我的剪贴板有句子,当我将鼠标悬停在 dir 路径/文件名/git 提交哈希等上时,并粘贴到终端中,认为将粘贴 dir 路径/文件名/git 提交哈希,这里来了一连串的句子

我尝试了几种方法来解决这个问题,但没有一个令我满意。

  1. 复制完成后我尝试打印一条消息:

    bind -T copy-mode-vi Tab send -X copy-pipe "reattach-to-user-namespace pbcopy"\; display-message "copied to system clipboard"
    
  2. 我看到每次选择时调用 reattach-to-use-namespace 时犯的错误,因此,我只使用此程序启动 tmux 一次:

    set-option -g default-command "reattach-to-user-namespace -l bash"
    bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe "pbcopy" \; display-message "copied to system clipboard"
    
  3. 后来我改用tmux-插件/tmux-sensible它通过重新附加到用户命名空间来启动 tmux。

  4. 现在几周前,我禁用了所有绑定密钥复制配置并切换到tmux-插件/tmux-yank。与我所拥有的相比,我更喜欢 tmux-yank 配置。但是复制的缓慢或延迟仍然存在,我经常粘贴错误的信息,认为鼠标选择已复制到系统剪贴板中。

我也尽可能运行更新的软件,希望看到一些改进。问题是我不知道问题出在哪里,需要进一步调试。 tmux 或重新附加到用户命名空间、Alacritty 或 OS X 中的速度是否缓慢。

我尝试切换回 iTerm2,因为这个问题变得很烦人,但使用后阿拉克里蒂,iTerm2 缓慢且缓慢,因为我在终端中传输大量日志进行调试。不幸的是,Alacritty 目前不支持多窗口模式或选项卡。

macOS 上的 Alacritty+tmux 目前对我来说是完美的解决方案,除了曾经对复制速度缓慢感到烦恼的问题。

我在跑步:

我遇到了这个https://github.com/alacrtty/copypasta,我想尝试一下,看看这是否会改善情况。

为了写这个问题,我多次粘贴了错误的信息,不得不返回并等待副本正确完成。

答案1

reattach-to-user-namespace应该不再需要了,你可以尝试完全不使用它。

tmux 几乎无法使复制少量文本花费几秒钟,所以可能是这样pbcopy

如果您的终端支持 OSC 52(iTerm2 支持,我不确定 alacritty),您可以使用它而不是pbcopy- 请参阅https://github.com/tmux/tmux/wiki/Clipboard

如果您不使用 OSC 52,请确保关闭set-clipboard

相关内容