如何将vi中的代码复制到剪贴板

Jos*_*son 16 vi

我知道如何在VI中复制.但我没有把它复制到其他应用程序中.这意味着我没有将这些复制到剪贴板中.我怎样才能做到这一点?

PS为了更多精益求精.我还想问一下如何将内容从剪贴板复制到vi.

编辑:我正在使用MacOs.运行Vim.

似乎*yy在这里不起作用.还有其他方法吗?

Mat*_*eer 33

您需要使用剪贴板寄存器,这样就*可以将一行文本复制到剪贴板中:

"*yy
Run Code Online (Sandbox Code Playgroud)

要从剪贴板粘贴一行文本:

 "*p
Run Code Online (Sandbox Code Playgroud)

  • 对不起,我尝试了这种方法,当你的文件在你的系统中但是当你使用远程机器时它不起作用.你有什么想法比`scp`更容易吗? (2认同)

pfn*_*sel 18

"+y"*y仅在您的vim支持xterm_clipboard时才有效.Xterm是X11的终端仿真器.试着vim --version看看它是否受支持.如果你看到+xterm_clipboard它应该工作,如果你看到-xterm_clipboard它不会.现在有许多Linux版本仍然在其存储库中停用了xterm_clipboard支持.然后通过剪贴板Yanking是不可能的.请注意,您仍然具有良好的旧的unix样式的yank/paste,即选择要拖动的文本,然后在要粘贴的鼠标上单击鼠标中键.这应该始终有效,并且是vim中首选的yank/paste样式.确保处于插入模式并键入set paste是否拧紧了压痕.set nopaste离开粘贴模式.

要使用xterm_clipboard获取vim,只需下载源代码,./configure --with-x然后创建一个,然后再下载一个make.现在vim应该支持xterm_clipboard和yanking,并且粘贴也应该从剪贴板中完美地工作.

  • 大!这就是为什么它不适合我! (2认同)

Gle*_*lar 5

"+yy or "*yy to copy to clipboard
"+p or "*p to paste from clipboard
Run Code Online (Sandbox Code Playgroud)

"会放入+寄存器.

甚至超过你想知道的:http: //vim.wikia.com/wiki/Accessing_the_system_clipboard