当我在 TMUX 的 CLI 上复制某些内容时,它会将其添加到缓冲区,而不是覆盖它

当我在 TMUX 的 CLI 上复制某些内容时,它会将其添加到缓冲区,而不是覆盖它

不确定我这里遗漏了什么。当我使用快捷方式或鼠标复制某些内容时,它会将复制的内容添加到那里已准备好的内容中。

例如。我复制“应用程序”,然后会出现“应用程序”的粘贴。当我复制“桌面”并粘贴时,它会显示“应用程序桌面”。

相关的 tmux.conf 和 tmux 版本 3.0a

setw -g mode-keys vi
# more settings to make copy-mode more vim-like
unbind [
bind Escape copy-mode
unbind p
bind p paste-buffer
bind -T copy-mode-vi v send-keys -X begin-selection
bind -T copy-mode-vi y send-keys -X copy-selection

# Buffers to/from Mac clipboard, yay tmux book from pragprog
bind C-c run "tmux save-buffer - | reattach-to-user-namespace pbcopy"
bind C-v run "tmux set-buffer $(reattach-to-user-namespace pbpaste); tmux paste-buffer"

答案1

我的猜测是 1) 由于您没有关闭set-clipboard,tmux 正在使用 OSC 52 设置剪贴板 2) 您正在使用 Kitty 终端,该终端存在一个错误,它会附加到剪贴板而不是覆盖它。您应该:

  • 关闭set-clipboard以便只pbcopy设置剪贴板:
set -g set-clipboard off
  • 不要使用pbcopy而只是使用set-clipboard,而是更改为可以正确处理它的终端。

相关内容