【转】vim复制与粘贴

用vim写代码时,经常遇到这样的场景,复制多行,然后粘贴。
 这样做:
1. 将光标移动到要复制的文本开始的地方,按v进入可视模式。
2. 将光标移动到要复制的文本的结束的地方,按y复制。此时vim会自动将光标定位到选中文本的开始的地方,并退出可视模式。
3. 我移动光标到文本结束的地方,按p粘贴。

一、多行

dd
删除一行
ndd
删除以当前行开始的n行
dw
删除以当前字符开始的一个字符
ndw
删除以当前字符开始的n个字符
d$、D
删除以当前字符开始的一行字符
d)
删除到下一句的开始
d}
删除到下一段的开始
d回车
删除2行

二、复制多行
任务:将第9行至第15行的数据,复制到第16行

方法1:(强烈推荐)

:9,15 copy 16  或 :9,15 co 16
由此可有:
:9,15 move 16  或 :9,15 m 16 将第9行到第15行的文本内容到第16行的后面

方法2:
光标移动到结束行,ma
光标移动到起始行,输入y‘a
光标移动到需要复制的行,输入p,行前复制则输入大写P

方法3:
把光标移到第9行 shift + v
再把光标移动到第15行  ctrl + c
再把光标死去到第16行  p mysql

方法4:
光标移动到起始行,输入ma
光标移动到结束行,输入mb
光标移动到粘贴行,输入mc
然后输入:‘a,‘b, co ‘c   把co换成m就是剪切
若要删除多行,则输入:‘a,‘b de

vi设置自动缩进:set smartindent
vi设置显示行号:set number 或 set nu

Vim中如何全选并复制

全部删除:按esc后,然后dG
全部复制:按esc后,然后ggyG

全选高亮显示:按esc后,然后ggvG或者ggVG


vim如何与剪贴板交互(将vim的内容复制出来)

习惯了在windows环境各个应用程序之间如UltraEdit,记事本,eclipse之间ctrl+c,ctrl+v进行复制粘贴的你,如何在vim与别的windows应用程序之间拷贝粘贴呢?
当然你可以在vim里选择用鼠标,选中一块文字然后右键复制,再到应用程序里ctrl+v粘贴,只不过这样效率就差多了。
更好的做法是,在vim中使用 "*y 使用进行复制,然后在应用程序中用ctrl+v粘贴。
从应用程序到vim则在应用程序中使用ctrl+c复制,在vim中使用shift+insert粘贴

如:

"*yy复制一行
"*y2w复制二个词
……

实现的原理是:
"   表示使用寄存器
"*   表示使用当前选择区

我个人推荐使用ctrl+insert复制,shift+insert粘贴。

vim有多个剪贴板,其中就包括了系统剪贴板。使用命令:reg可以看到各个剪贴板的内容。其中“”表示当前使用的剪贴板,“0-9是历史剪贴板,“#就是系统剪贴板了(你可以在系统里拷贝一些东西,看是不是会出现在“#剪贴板里)。在vim中使用y可以把内容拷贝到“”号剪贴板,继续y会把新的东西放入“”,而原来“”的东西就会被压入“0-9的各个历史剪贴板中。X11系统下还有一个“*的剪贴板对应中键拷贝粘贴,windows不知道有没有。

解决第一个问题:

“+y 把选中内容拷贝到”+号剪贴板,即系统剪贴板

“+p 把系统剪贴板的内容粘贴到vim,这一个用shift+insert也可完成

解决第二个问题:

“0p 可以把已经被挤到”0剪贴板的内容A重新粘贴出来

嫌长的做一个map,映射到某个功能键或组合就方便了。

【转自】https://www.cnblogs.com/MMLoveMeMM/articles/3707287.html

原文地址:https://www.cnblogs.com/lzping/p/11356356.html

时间: 2024-10-11 14:45:04

【转】vim复制与粘贴的相关文章

关于vim复制剪贴粘贴命令的总结-转

最近在使用vim,感觉很好很强大,但是在使用复制剪切粘贴命令是,碰到了一些小困惑,网上找了一些资料感觉很不全,讲的也不好,遂自己进行实践并总结了. 首先是剪切(删除): 剪切其实也就顺带删除了所选择的内容,所以既可以当剪切命令用,也可以当删除命令使用. 1 首先,可以在命令模式下输入v进入自由选取模式,选择需要剪切的文字后,按下d就可以进行剪切了. 2 其他命令模式下剪切命令: 3 dd:剪切当前行 4 ndd:n表示大于1的数字,剪切n行 5 dw:从光标处剪切至一个单子/单词的末尾,包括空格

vim复制,粘贴,剪切文本

vim编辑器 引用文本: ------------------------------------------------------------------------------------------------------------------ 时常自我反省,敏感的思想家 你对于自己及四周的环境能够比一般人控制得更好更彻底. 你讨厌表面化及肤浅的东西:你宁愿独自一人也不愿跟别人闲谈,但你跟朋友的关系却非常 深入,这令你的心境保持和谐安逸. 你不介意长时间独自一人,而且绝少会觉得沉闷.

vim 复制、粘贴命令

1. 选定文本块.使用v进入可视模式,移动光标键选定内容. 2.复制的命令是y,即yank(提起) ,常用的命令如下:     y      在使用v模式选定了某一块的时候,复制选定块到缓冲区用:     yy    复制整行(nyy或者yny ,复制n行,n为数字):     y^   复制当前到行头的内容:     y$    复制当前到行尾的内容:     yw   复制一个word (nyw或者ynw,复制n个word,n为数字):     yG    复制至档尾(nyG或者ynG,复制

vi & vim复制,粘贴,剪切文本

我经常用vi编辑器,但基本上还是windows的习惯,没有系统的学过其功能,今天遇到了文本的复制这没有办法了,查看一下解决如下: 引用文本: ------------------------------------------------------------------------------------------------------------------ 时常自我反省,敏感的思想家 你对于自己及四周的环境能够比一般人控制得更好更彻底. 你讨厌表面化及肤浅的东西:你宁愿独自一人也不愿

vim复制和粘贴内容

vi 编辑器可以在编辑模式和命令模式下复制文本.常用的复制文本的命令如表 1 所示. 表1:命令模式下常用的文本复制命令 文本复制命令 命令的意义 文本复制命令 命令的意义 yy 复制光标所在的整行 y{ 复制到上一段的开始 Y 或 y$ 复制从光标所在处开始到行尾的内容 y} 复制到下一段的开始 y0 复制从光标前一个字符开始到行首的内容 y<CR> 复制包括当前行在内的两行内容 y( 复制到上一句的开始 yw 复制一个单词 y) 复制到下一句的开始     yy 命令:复制光标所在的整行.

vim选中字符复制/剪切/粘贴

问题描述: vim 中选中指定字符,进行复制/剪切/粘贴 问题解决: 进入vim中visual模式,visual模式进入,可以有三种方式: (1)在普通模式(normal)下,直接按键 v  就可以进入默认visual模式,可以使用v+j/k/h/l 进行文本选择 注: 使用normal模式下的  v命令,进入visual模式,v+ j/k/h/l   进行文本选中 对于选中的文本进行如下按键: (1.1)d   ------ 剪切操作 (1.2)y   -------复制操作 (1.3)p  

vim复制,粘贴,删除,撤销,替换,光标移动等用法

我接触linux的时候,用的是nano这个文本编辑器,个人觉得他的最大优点就是方便,快速.打开文件,修改文件,到退出都十分的快速,简单.这一点上比vi,vim要强,但是nano不能显示彩色字,不能进行整行删除,编辑各种配置文件的时候,总感觉不是很方便.针对于nano的这些缺点,vim可以很好的解决,并且vim打开文件,里面的字是有颜色的,这一点根editplus,eclipse是一样的,对于做程序的来说,就比较爽了.下面的操作,都是命令状态下进行的,不要进入插入状态了,如果进入了插入状态,[Es

Ubuntu Vim 复制到系统粘贴板

/************************************************************************* * Ubuntu Vim 复制到系统粘贴板 * 说明: * 将Vim中的内容复制到别的应用程序,之前一般都是使用鼠标,现在还是换成 * 直接使用Vim自带功能,这样效率会高那么一点点. * * 2016-11-22 深圳 南山平山村 曾剑锋 ******************************************************

Vim 复制粘贴探秘

Vim作为最好用的文本编辑器之一,使用vim来编文档,写代码实在是很惬意的事情.每当学会了vim的一个新功能,就会很大地提高工作效率.有人使用vim几十年,还没有完全掌握vim的功能,这也说明了vim的强大.而这样何尝不是一件好事呢,只要有的学习,就有的提高. 最近使用Vim来写博客,发现在Vim中粘贴Python代码后,缩进就全乱了.仔细研究了以下,原来是自动缩进的缘故,于是做如下设置: :set noai nosi 取消了自动缩进和智能缩进,这样粘贴就不会错行了.但在有的vim中不行,还是排