首页 文章

如何使用X11转发从vim复制到本地计算机

提问于
浏览
-1

我发誓,我已阅读过每一篇文章,但尚未找到适用于我的全面解决方案 . 这是我到目前为止所做的:

  • 配置vim以复制到系统的剪贴板 . 设置clipboard = unnamedplus

  • 在我的远程计算机上启用了X11转发 .

  • 已安装xclip(https://defuse.ca/blog/clipboard-over-ssh-with-vim.html

  • 在我正在使用的本地mac上安装了XQuartz

  • 我正在进入远程Linux服务器:ssh -X user @ machine(XQuarz弹出)

  • 我在vim中打开一个文件 . 猛拉 . CmndV进入我的本地浏览器 . 什么都没发生 .

救命?

2 回答

  • 1

    来自this gist

    在Mac上

    • 安装或更新XQuartz.app并启动它 .

    • 在“首选项”窗口中,激活剪贴板同步 .

    • 退出XQuartz.app .

    • 在iTerm.app或Terminal.app中,使用以下命令连接到远程计算机:

    $ ssh -X username@host
    

    并在Dock中看到XQuartz.app图标弹出窗口 .

    从现在开始,当您使用 -X 标志时,XQuartz.app将在后台自动启动,为您处理剪贴板同步 .

    在远程计算机上

    • 如果您还没有,请安装GVim . 在基于Debian的系统上,使用:
    $ sudo apt-get install vim-gtk
    

    我们的想法不是使用Gvim,而是安装它可以获得让剪贴板共享工作所需的一切:

    • 一个最小的X.

    • 使用剪贴板支持构建的Vim

    • 在Vim中,通过将此行添加到 ~/.vimrc 来同步未命名和剪贴板寄存器:

    set clipboard^=unnamed
    
  • 1

    如果你仍然遇到麻烦(并添加到romainl的答案,因为这是让我困扰了一段时间的东西,很高兴看到它记录在一个更容易找到的地方),偶尔XQuartz剪贴板转发似乎停止工作对于OS X上的一些用户来说意外,甚至在El Capitan . 如果您遇到这种情况,可以通过切换“启用同步”设置重新启用剪贴板同步:

    • 打开XQuartz.app

    • 在“首选项”>“粘贴板”中,取消选中"enable syncing"

    • 关闭首选项,再次打开它,然后重新检查"enable syncing"

    我完全不知道为什么这会解决这个问题,但是在freedesktop以及这个旧的xquartz issue ticket上也有记录 .

相关问题