4
在tmux和剪贴板之间复制/粘贴文本选择
我正在运行最新版本的tmux(来自git存储库)和xclip(0.12),并且我希望能够使用类似Emacs的键盘绑定在中的文本周围移动copy-mode,将(M-w)选择复制到剪贴板,以及粘贴(C-y从/)复制到复制缓冲区到剪贴板。 到目前为止,我已经能够使用粘贴文本C-y,并copy-mode使用类似Emacs的键盘绑定来移动文本,但是我仍然无法从tmux缓冲区复制文本(例如copy-mode) 我发现此线程可将整个缓冲区复制到剪贴板(反之亦然),但似乎不适用于我。 另外,在tmux-users邮件列表中,我被告知,最新版本的tmux(仅在git repo中)提供了一个名为的命令copy-pipe。手册页说明了有关此命令的以下内容: 中的一个命令接受一个参数copy-pipe,它复制选择并将其通过管道传递给命令。例如,以下将绑定“ C-q”以将选择内容复制到/ tmp以及粘贴缓冲区中: bind-key -temacs-copy C-q copy-pipe "cat >/tmp/out" 看起来copy-pipe应该部分地用于将选择传递给另一个命令。在此说明和命令中似乎也有一些错别字(什么是temacs-copy?) 无论哪种方式,我想做的是: 复制中: 进入复印模式 移动到我想要使用Emacs导航命令(即复制的文本C-f,C-b,M-f,M-b,C-a,C-e等来移动光标)。没有任何前缀。 选定的文本复制到与剪贴板:M-w(无前缀要么) 贴上: 我希望能够键入C-y(而不必输入copy-mode)以将文本粘贴到终端中(也没有前缀) 我尝试了以下方法来运气不佳: bind-key -n M-w run "tmux save-buffer - | xclip -i -selection clipboard" 但是,粘贴效果很好: bind-key -n C-y run "xclip -o | tmux load-buffer - ; tmux paste-buffer" 奇怪的是,我知道xclip …