Ubuntu

tmux xclip 副本不再工作

  • March 30, 2017

在 mu Ubuntu 12.04 設置上,我的 tmux 剪貼板複製和粘貼命令設置如下:

set -g prefix M-a
unbind C-b
bind C-c run "tmux save-buffer - | xclip -i -sel clipboard"
bind C-v run "tmux set-buffer \"$(xclip -o -sel clipboard)\"; tmux paste-buffer"

直到大約一個月前,這在最長的時間內都非常有效,當時我懷疑進行了一些配置更改或包更改,從而破壞了上述內容。在 GNOME 終端中,粘貼仍然適用於prefix+ctrl-vctrl-shift-v.

但是,xclip無論我做什麼,複製命令都不再起作用,並且我嘗試刪除上面的自定義前綴綁定,使用-select而不是-sel,不使用clipboard等。對於像我這樣的 GVim 使用者來說,這幾乎是一個顯示停止器,因為我沒有甚至有ctrl-shift-ctmux 接管外殼的 GNOME 終端解決方法。我進入複製模式,用space+選擇文本movement,當我執行prefix+時,ctrl-c絕對沒有任何反應。在此之前,tmux 會在底部的通知部分顯示一條確認消息。

有人對如何調試這個有建議嗎?這是一個相當大的生產力打擊。我現在可能可以使用臨時文件變通辦法,但很高興知道發生了什麼xclip

xsel實用程序類似於xclip,但實現方式略有不同。通常我希望它們的行為方式相同,但它們不會進行完全相同的 X 庫呼叫,因此在某些極端情況下xsel可能會起作用但不會起作用xclip,反之亦然。嘗試:

bind C-c run "tmux save-buffer - | xsel -ib"
bind C-v run "tmux set-buffer \"$(xsel -ob)\"; tmux paste-buffer"

添加-brun-shell(或run)命令解決了這個問題。用-bshell 命令在後台執行。

bind C-c run-shell -b "tmux save-buffer - | xclip -i -sel clipboard"

引用自:https://unix.stackexchange.com/questions/77355