鉴于我已通过 SSH 连接到服务器并且 tmux 正在运行,有没有什么简单的方法可以将其拉入 vim 中的寄存器并:
- 该文本是否可以在我的 tmux 剪贴板中使用?
- 我的 osx 剪贴板中有该文本吗?
我知道如何在 tmux 中复制/粘贴,iterm2 似乎可以将其传递到我的 osx 剪贴板上。但是有时我想在 vim 分屏中拉出文本,而 tmux 复制/粘贴不起作用。有人解决了这个问题吗?
非常感谢!
答案1
一种方法是创建一个 vim 函数,使用redir
或writefile
将提取的寄存器转储到文件中,使用tmux load-buffer
将其放入 tmux 剪贴板,然后删除该文件。
为了将远程 tmux 剪贴板放入 OS X 剪贴板,我使用ssh HOST tmux show-buffer | pbcopy
。
这两种情况都有点烦人,但我不知道还有什么更好的方法可以解决这个问题。
答案2
答案的一部分是在通过 SSH 退出之前在 Mac 上本地运行 tmux。然后,您就可以使用本地 tmux 进行复制/粘贴。同样,如果您需要在远程 vim 会话中抓取比当前屏幕更大的更多代码行,那么这不是非常理想的选择,但它适用于大多数场景。