是否有任何方法复制所有行从打开的文件到VI编辑器剪贴板。我试过yG,但它没有使用剪贴板来存储这些行。

那么这可能吗?


当前回答

我在我的.vimrc中添加了以下一行

nnoremap <F5> :%y+<CR>

这允许我通过按F5(在命令模式下)将Vim中的所有文本复制到剪贴板。

其他回答

剪贴板为buffer +。要复制到剪贴板,请执行“+y和[移动]”。

gg"+yG会复制整个文件。

类似地,要从剪贴板粘贴,“+p

我已经创建了一个函数来执行这个操作,把它放在~/.vimrc上。

fun! CopyBufferToClipboard()
    %y+
endfun
nnoremap <Leader>y :call CopyBufferToClipboard()<CR>
command! -nargs=0 CopyFile :call CopyBufferToClipboard()

OBS:如果你正在使用neovim,你还需要一些剪贴板管理器,比如xclip。有关更多信息,请在neovim中键入:h checkhealth

同样重要的是要提到的是,并不总是简单的y会复制到剪贴板,为了使每次复制feed + wich是“剪贴板寄存器”尝试set::set clipboard=无名,无名加。更多信息见::h未命名。

这里有更多关于vim wikia的信息。

单击鼠标左键,拖过要复制和释放的部分。代码自动复制到剪贴板。

非常简单的办法:

如果你在Windows中,想要将整个文本复制到本地剪贴板,而不是你正在使用的远程服务器缓冲区,不需要任何额外的工具,只需:

放大,在屏幕上看到整个文件文本 用鼠标选择它们,然后右击复制到您的本地剪贴板

注1:现在在许多终端(如窗口终端)上,你可以用ctrl++/ctrl+-放大/缩小,用ctrl+0重置缩放大小

注2:如果你的vim是编号文件行,你可以:设置nonnumber

我在PowerShell中使用Vim,当我需要将一小段代码复制到windows剪贴板时;

我使用:set nonnumber来删除行号,然后用游标和右键单击在视觉上选择代码。然后我用Ctrl + V将它粘贴到任何我想要的地方。