Command-Line

Ubuntu 18 Tmux 2.6-3 複製粘貼功能與 xclip 無功能

  • January 2, 2019

我最近安裝了全新的 Ubuntu 18,並從我之前的 Ubuntu 16 設置中複製了我的主目錄。但是,這似乎破壞了我之前使用 xclip(安裝了 0.12)的複制粘貼功能。

我之前的 tmux.conf 方法:

setw -g mode-keys vi
bind -t vi-copy y copy-pipe "xclip -sel clip -i"

我在這裡查看了其他類似的問題,但不幸的是,它們都不符合我的確切情況。

從 tmux 2.6 開始,bind-key不再需要模式表選項 ( -t)。相反,每種模式都有一個鍵表 ( -T)。

此外,不能在複製模式綁定中直接使用命令。它們必須與send-keys -X.

對 tmux 問題 754 的評論

  1. 替換-t-T
  2. 替換vi-<name><name>-mode-vi
  3. 在命令前加上send-keys -X

此外,從 2.4 版開始,新命令copy-pipe-and-cancel會離開複製模式,同時copy-pipe保持其活動狀態。

所以你的那一行tmux.conf變成:

bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -sel clip -i"

垃圾列印到螢幕上

根據您的終端仿真器,在使用此綁定後,您可能還會看到一些字元轉儲到螢幕上。這取決於set-clipboard功能

如果terminfo(5) 描述中有Ms條目,請嘗試使用 xterm(1) 轉義序列設置終端剪貼板內容(請參閱 TERMINFO EXTENSIONS 部分)。

似乎某些終端(例如 LXTerminal)會將 TERM 設置為xterm(支持此擴展),但實際上並不辨識該序列。 copy-pipe並將copy-pipe-and-cancel“有用地”嘗試使用此功能,終端僅顯示生成的字元。您看到的是轉義序列,然後是所選文本的 base64 編碼。

如果您的終端錯誤地處理了這個轉義序列,您可以使用以下命令禁用它

set-option -g set-clipboard off

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