Command-Line
Ubuntu 18 Tmux 2.6-3 複製粘貼功能與 xclip 無功能
我最近安裝了全新的 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
.
- 替換
-t
為-T
- 替換
vi-<name>
為<name>-mode-vi
- 在命令前加上
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