我最近进行了全新的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
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句