是否有任何方法复制所有行从打开的文件到VI编辑器剪贴板。我试过yG,但它没有使用剪贴板来存储这些行。
那么这可能吗?
是否有任何方法复制所有行从打开的文件到VI编辑器剪贴板。我试过yG,但它没有使用剪贴板来存储这些行。
那么这可能吗?
当前回答
非常简单的办法:
如果你在Windows中,想要将整个文本复制到本地剪贴板,而不是你正在使用的远程服务器缓冲区,不需要任何额外的工具,只需:
放大,在屏幕上看到整个文件文本 用鼠标选择它们,然后右击复制到您的本地剪贴板
注1:现在在许多终端(如窗口终端)上,你可以用ctrl++/ctrl+-放大/缩小,用ctrl+0重置缩放大小
注2:如果你的vim是编号文件行,你可以:设置nonnumber
其他回答
如果您的手指默认使用CTRL-A CTRL-C,那么尝试从$VIMRUNTIME/mswin.vim映射。
" CTRL-C and CTRL-Insert are Copy
vnoremap <C-C> "+y
" CTRL-A is Select all
noremap <C-A> gggH<C-O>G
inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
cnoremap <C-A> <C-C>gggH<C-O>G
onoremap <C-A> <C-C>gggH<C-O>G
snoremap <C-A> <C-C>gggH<C-O>G
xnoremap <C-A> <C-C>ggVG
我将它们映射到<Leader><C-a>和<Leader><C-c>。
在Bill Joy的vi中没有“剪贴板”的概念,所以我不认为有内置的方法来做到这一点。
gVim的自动复制任何高亮显示到剪贴板的功能是最简单的或使用外部程序通过:!
对于Cygwin的vim,我使用
:%!putclip
u
也许Ubuntu有一个CLI应用程序,比如putclip??
我尝试了上面人们提到的一些命令。没有工作。 然后我找到了其中最简单的一个。
步骤1:vi <filename> 第二步:右键单击Putty窗口的标题栏 步骤3:选择“清除屏幕”(以避免复制SSH会话的其余部分) 第四步:再次右键单击并选择“复制所有到剪贴板”。
(回复@rshdev,并避免在OP的注释中使用@nelstrom +xterm_clipboard重新编译vim)
在Ubuntu 11上有一个叫xclip的程序,它的工作原理类似于putclip:
:%!xclip -sel clip
u
默认情况下不会安装。安装方法:
sudo apt-get install xclip
您可以使用“cat”命令打开文件,并使用鼠标复制