【精选】vim拷贝粘贴总结(p、Shift+Insert、Shift+Ctrl+v) 您所在的位置:网站首页 linux的vim复制 【精选】vim拷贝粘贴总结(p、Shift+Insert、Shift+Ctrl+v)

【精选】vim拷贝粘贴总结(p、Shift+Insert、Shift+Ctrl+v)

2023-11-14 06:07| 来源: 网络整理| 查看: 265

文章目录 vim 拷贝粘贴的三个类别1 vim寄存器1.1 查看寄存器1.2 寄存器列表解释如下:1.3 使用方法: 2 系统选择缓冲区(X11 selection buffer)3 系统剪切板(clipboard)4 鼠标模式?5 参考自:

vim 拷贝粘贴的三个类别 vim寄存器(只在当前文件有效)。查看方法: :reg系统选择缓冲区(X11 selection buffer)。查看方法:xclip -out系统剪切板(clipboard)。查看方法:xclip -out -sel clipboard 1 vim寄存器

vim寄存器是在使用y、y?拷贝时,内容的存放位置

1.1 查看寄存器

在vim普通模式下输入:reg查看当前vim寄存器列表

:reg --- Registers --- "" Uncomment the foll "0 Uncomment the foll "1 smartcase "2 "^J"^J" "3 " 开启鼠标右键复制^Jif has( 'mouse' )^J set mouse-=a^Jendif^J "4 " 开启鼠标右键复制^J "5 ^J "6 if has( 'mouse' )^J set mouse-=a^Jendif^J "7 "insecure-registries": ["docker-repo:5000"]^J "8 # ^J# ^J# ^J# "9 ^J ^J ^J ^J "- smartcase ". cccccccccccccc^@ffffffff^@ "% /etc/vim/vimrc "/ users 1.2 寄存器列表解释如下:

"" 代表最近一次拷贝内容 "- 代表次最近一次拷贝内容,等于【"1】 "0 代表最近一次(第0次)拷贝内容 "数字 代表前几次拷贝内容 ". 代表最近输入的内容 "% 代表当前编辑的文件 "/ 代表 "* 代表系统选择缓冲区(xclip -out) — 一般没装vim-gnome,所以在vim中用不了 "+ 代表系统剪贴板(xclip -out -sel clipboard) — 一般没装vim-gnome,所以在vim中用不了 若vim寄存器列表里无【”*】或【“+】寄存器,则可能是由于没有安装vim的图形界面所致。Debian/Ubuntu下可以通过安装vim-gnome解决。

1.3 使用方法:

p 粘贴最后一次拷贝的内容 "-p 粘贴次最后一次拷贝的内容 "3p 粘贴第3次拷贝的内容 ".p 粘贴最近输入的内容 … "*p 粘贴选择缓冲区内容,一般没装vim-gnome,所以在vim中用不了,但是可以在插入模式下使用Shift+Insert粘贴 "+p 粘贴剪贴板内容,一般没装vim-gnome,所以在vim中用不了,但是可以在插入模式下使用Shift+Ctrl+v或鼠标右键粘贴

Vim中,若要复制当前行,普通模式下按 yy 即可,在要粘贴的地方按 p 。这是vim将复制内容保存到了自己的寄存器中的缘故。如果在其他地方执行yy,新的内容将覆盖掉原寄存器中内容。如果想保存原寄存器中内容而同时增加新的内容呢?这时就要在yy前增加标签了。标签以双引号开始,跟着的是标签名称,可以是数字0-9,也可以是26个字母,然后就是复制操作,这样就把复制内容保存到该标签寄存器里。

2 系统选择缓冲区(X11 selection buffer) 拷贝方法:当你用鼠标选择终端里、浏览器里、文档里的文字时(及Ctrl+Insert),他就自动拷贝到系统选择缓冲区了查看方法:xclip -out(需要安装sudo apt install xclip)粘贴方法:Shift+Insert(部分应用程序 Ctrl+Insert、Shift+Insert 命令调用的是系统剪贴板) 3 系统剪切板(clipboard) 拷贝方法:当你用鼠标选择文字,然后右键菜单点击复制时(或Ctrl+c、或Shift+Ctrl+c),他就拷贝到系统剪贴板了查看方法:xclip -out -sel clipboard(需要安装sudo apt install xclip)粘贴方法:使用方法鼠标右键点击粘贴(或Ctrl+v、或Shift+Ctrl+v), 注:部分情况下,比如在terminal中,不能直接使用Ctrl+c,Ctrl+v,这时就要用Shift+Ctrl+c,Shift+Ctrl+v代替。 4 鼠标模式?

以下验证有问题

:set mouse=a 在普通模式下可以直接使用鼠标选择区域复制到选择缓冲区。但这种情况下不能复制到剪切板。(有些应用程序的Shift+Insert调用的是剪贴板,并不是选择缓冲区,所以还得要使用mouse=v方式)

:set mouse=v 除了可以像上面一样直接使用鼠标选择区域复制到选择缓冲区以外,还可以在右键菜单中选择“复制”来保存到剪切板里。 另:mouse=v方式可能造成新问题,如果vim显示行号,选择时行号也会一并选择,如果不需要行号的话,在复制前需要先执行set nonu来取消行号显示。

5 参考自:

解决vim中鼠标右键无法复制的问题: https://www.cnblogs.com/pengdonglin137/p/3485062.html

待完成



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有