trzsz-ssh icon indicating copy to clipboard operation
trzsz-ssh copied to clipboard

vim, neovim剪切板集成

Open BrightXiaoHan opened this issue 1 year ago • 7 comments

一个想法,不知道能不能实现,或者适不适合通过tssh实现。 需求描述: tssh登录到远程服务器后,vim,neovim的剪切板往往不能与PC机共享,有没有可能通过tssh,在vim上复制某段文本后,通过tssh发送到PC机剪切板上实现剪切板共享呢? 更进一步,能否通过某些api,与某个vim插件集成,在vim中的文件管理器中(如nvim-tree)通过某个快捷键直接触发tsz传输某个文件到PC机上。

BrightXiaoHan avatar Jan 29 '24 07:01 BrightXiaoHan

1、暂时没想到什么好的实现办法。

2、你可以在 vim / nvim 中自定义个快捷键,这个快捷键的动作是临时打开一个新窗口并执行 tsz xxx,参数你可以在定义快捷键时传过去。

lonnywong avatar Jan 29 '24 07:01 lonnywong

  • https://rumpelsepp.org/blog/nvim-clipboard-through-ssh/
  • https://github.com/rumpelsepp/oscclip 我不太懂go语言,不知道这个能不能参考?

BrightXiaoHan avatar Feb 04 '24 02:02 BrightXiaoHan

  • https://rumpelsepp.org/blog/nvim-clipboard-through-ssh/
  • https://github.com/rumpelsepp/oscclip 我不太懂go语言,不知道这个能不能参考?

感谢应该可以直接用?ssh 支持的话,tssh 按理说也是支持的。

lonnywong avatar Feb 04 '24 05:02 lonnywong

為了要讓不支援的 terminal app 使用 trzsz , 所以也使用了 tssh

osc 52 要支持的前提是 本地的终端需要支持 OSC 就像是 trzsz 也需要 本地的终端機需要支援 , 但我的理解是後來只要 local terminal app 可以開啟 local shell , 就可以使用 tssh 來達到 , 所以是否 tssh 也可以支援 OSC 52 , 這樣就可以讓不支援 OSC 52 的 terminal app 也可以支援 copy text to os clipboard

https://sspai.com/post/71018

petersonchen avatar Feb 07 '24 08:02 petersonchen

看来是可以解释 osc 52 ,并写到 clipboard 中去。

lonnywong avatar Feb 07 '24 09:02 lonnywong

已支持剪贴板集成。

v0.1.22 发布前,可以这样安装 go install github.com/trzsz/trzsz-ssh/cmd/tssh@main,安装的路径在 ~/go/bin/,Windows 是 C:\Users\your_name\go\bin\

启用剪贴板集成功能,可以如下配置:

Host *
    EnableOSC52 Yes

如果本地电脑是 Linux ,需要在本地 Linux 电脑上安装 xclipxsel( 远程 Linux 服务器不用安装 )。

可以找一个支持 OSC52 的 vim 或 nvim 插件,配合一起使用。

lonnywong avatar Jul 14 '24 14:07 lonnywong

nvim < 0.10.0 可以使用这个插件:https://github.com/ojroques/nvim-osc52 nvim >= 0.10.0 已经内置osc52 Note: As of Neovim 10.0 (specifically since https://github.com/neovim/neovim/pull/25872), native support for OSC52 has been added and therefore this plugin is now obsolete. Check :h clipboard-osc52 for more details.

BrightXiaoHan avatar Jul 15 '24 02:07 BrightXiaoHan