【vim小记】vim的复制粘贴(包括系统剪贴板)
转自 http://blog.csdn.net/hk2291976/article/details/42196559
1、vim常用复制粘贴命令
Vim的复制粘贴命令无疑是y (yank),p(paster),加上yy,P
PS:
vim有个很有意思的约定(我觉得是一种约定),就是某个命令的大小写都是实现某种功能,只是方向不同,比如:
- w 跳转到下个word,W:跳转到上个word
- f 某行正向查找并跳转 F: 反向....
然后部分双写的字母有行操作:
- yy 复制一行
- dd 删除一行
所以,
- p就是在当前光标后粘贴,P就是在当前光标前粘贴
另外,说完p,其实还有几个命令有时也是很有用的
- gp,和p的功能基本一致,只是粘贴完,它会把光标移动至粘贴内容之后;gP同理
- :pu[t] ,注意,这个是在命令界面输入的pu/put,它的意思是把x寄存器的内容粘贴到下一行
2、vim的寄存器和系统剪贴板
寄存器简介
vim强大之处之一就是它自带一堆寄存器,每个寄存器独立使用,你可以在不同寄存器中存储不同数据,命令,你可以把这个想象成一个加强版的剪贴板,当然它的功能不止剪贴板这么简单。如果你想看vim的官方文档有关部分:
- :help registers
根据官方手册:vim有9种寄存器
There are nine types of registers: registers E354
1. The unnamed register ""
2. 10 numbered registers "0 to "9
3. The small delete register "-
4. 26 named registers "a to "z or "A to "Z
5. four read-only registers ":, "., "% and "#
6. the expression register "=
7. The selection and drop registers "*, "+ and "~
8. The black hole register "_
9. Last search pattern register "/
1.无名(unnamed)寄存器:"",缓存最后一次操作内容;
2.数字(numbered)寄存器:"0 ~"9,缓存最近操作内容,复制与删除有别, "0寄存器缓存最近一次复制的内容,"1-"9缓存最近9次删除内容
3.行内删除(small delete)寄存器:"-,缓存行内删除内容;
4.具名(named)寄存器:"a ~ "z或"A - "0Z,指定时可用;
5.只读(read-only)寄存器:":,".,"%,"#,分别缓存最近命令、最近插入文本、当前文件名、当前交替文件名;
6.表达式(expression)寄存器:"=,只读,用于执行表达式命令;
7.选择及拖拽(selection and drop)寄存器:"*,"+,"~,存取GUI选择文本,可用于与外部应用交互,使用前提为系统剪切板(clipboard)可用;
8.黑洞(black hole)寄存器:"_,不缓存操作内容(干净删除);
9.模式寄存器(last search pattern):"/,缓存最近的搜索模式。
至于每个寄存器更加具体的使用方法,我希望大家能查询手册,毕竟,这篇文章重点不在寄存器,可能哪天会写一篇小记讲讲寄存器吧
基本操作
聊聊寄存器的基本操作把
现在输入命令,你就可以查询一下目前寄存器的情况
- :reg
寄存器的使用方法也很简单:通过“ 加上 寄存器名,就可以访问特定的寄存器:
- "ap 粘贴字母a寄存器内容
- "1y 把选取内容复制到数字寄存器1
系统剪贴板
细心的人已经发现我重点标注的寄存器部分了,就是那个选择及拖拽寄存器,这就是系统的剪贴板,我们通常使用的ctrl+c ctrl+v 的内容就保存在这个寄存器中,所以你要把需要复制的内容放在+寄存器中,就可以在gui界面中用粘贴或ctrl+v粘贴了,同理,粘贴在vim中也一样
- "+y 复制到系统剪贴板
- "+p 粘贴
- "+gp 粘贴并且移动光标到粘贴内容后
但是光是输入命令"+p就已经让人觉得很麻烦了,这时候,vim的map功能就又可以大显神通了,我们只需要把“+y 和 ”+gp map到你喜欢的快捷键上即可:
首先打开vimrc(如果没有,请创建一个)
- vim ~/.vimrc
然后在其中输入:
- nmap <c-v> "+gp
- nmap <c-c> "+y
你现在就可以使用ctrl+c 和ctrl+v 了, 但是!我本人是不推荐用这个快捷键的,因为本身<c-v>是我很常用的块命令
所以,我一般修改成:
- nmap <leader>v "+gp
- nmap <leader>c "+y
至于<leader>是什么按键,就可以按照你的喜好来拉,我的是','
- let mapleader=","
ps.说一下,我用的是nmap,说明这个命令只有在normal情况下才生效,在insert模式下是不生效的,为什么要这样设置呢?因为有时候你确实需要输入<leader>c/v的内容,比如,c ,v ,而且,vim主要操作我觉得还是应该在normal模式下,这才是vim的高效的原因。
【vim小记】vim的复制粘贴(包括系统剪贴板)相关推荐
- 【vim小小记】vim的复制粘贴(包括系统剪贴板)
1.vim常用复制粘贴命令 Vim的复制粘贴命令无疑是y (yank),p(paster),加上yy,P PS: vim有个很有意思的约定(我觉得是一种约定),就是某个命令的大小写都是实现某种功能,只 ...
- vim如何与外界复制粘贴
导读 在使用 vim 的时候我们会遇到一个问题,在vim之外复制的内容使用p确不能粘贴到vim里面.那么,如何把vim外面复制的内容粘贴到vim里面呢? vim缓存区和系统剪贴板 vim 里面复制粘贴 ...
- vim可视模式下复制粘贴文本
[操作步骤] vim编辑器有两种操作模式:普通模式.插入模式.当打开要编辑的文件时,vim编辑器会进入普通模式.在普通模式下按 i 键进入插入模式,在插入模式下按 Esc 键返回普通模式. 在普通模式 ...
- vim选中多行复制粘贴
vim选中多行复制粘贴 1.按v进入可视模式,移动光标选中需要复制的行: 2.使用y复制选中块到缓冲区(剪切选中块使用d): 3.将光标移动到粘贴的位置,按p即可. 复制多行并粘贴到指定位置后,可能需 ...
- 解决vim与外界的复制粘贴(不用安装插件)
默认的vim不带系统剪切板与vim的交互的功能: 要完成vim中的内容复制到系统剪切板,需要vim支持 +clipboard: 在终端输入:vim --version | grep clipboard ...
- 【vim】系统剪切板、vim寄存器之间的复制粘贴操作命令?系统剪切板中的内容复制粘贴到命令行?vim文本中复制粘贴到命令行
一.系统剪切板和文本内容的复制粘贴 1.1 从系统剪切板复制粘贴到文本中 需要操作3次: 分别是英文双引号.一个加号或梅花号,最后是一个p 也即"+p 或者直接使用组合键[Shift + i ...
- java 复制剪贴板_java_swing复制粘贴、剪贴板
import java.awt.*; import java.awt.event.*; import java.awt.datatransfer.*; import javax.swing.*; // ...
- vim命令杂烩(复制粘贴、建文件、撤销等)
vim 有底线命令,插入,命令方式,在进行复制.撤销等操作时,文件应处于命令方式, 若处于编辑模式,可点击ESC,再进行操作 一.撤销 点击 u , 撤销上一步 二.粘贴 p 三.复制 yy复制游标所 ...
- VIM选择文本块/复制/粘贴
在正常模式下(按ESC进入)按键v进入可视化模式,然后按键盘左右键或h,l键即可实现文本的选择. 其它相关命令: v:按字符选择.经常使用的模式,所以亲自尝试一下它. V:按行选择.这在你想拷贝或者移 ...
最新文章
- Java 的序列化和反序列化,你该知道得更多
- 报告:AI技术正有效缩小亚洲医疗发展的差距
- Alpha fold: 人工智能在蛋白质结构预测上跑赢人类的启示
- linux之用 grep -r 关键字
- NMM3DViewer 设计
- Asp.net 2.0 发送邮件
- 模拟银行自动提款系统python
- python的合法语句_Python练习2
- 作者:杜军平(1963-),女,博士,北京邮电大学计算机学院教授、博士生导师...
- 加载图片时报错,请大虾帮忙看看!
- Rust : 闭包、move、复制与移动语义
- android系统修改开机动画效果,Android手机开机动画的修改
- Unity 与 UE4 双引擎版本四叉树的创建与可视化
- sai笔记3-钢笔图层
- Linux openssl 生成证书的详解
- python三维建模可视化_用Python三维可视化-一个神奇的函数
- Python 爬虫十六式 - 第七式:RE:用匹配来演绎编程的艺术
- 标准解读系列之四:智慧道路的分级标准是什么?
- java 字符转化为点阵,输入文字,输出点阵文字
- 下载中转站downloadTransport
热门文章
- 贪吃蛇程序不要白不要,一个赞就够了
- opencv_modules.hpp 头文件
- 使用Python实现一个简单的接口服务
- java文字旋转90度_菜鸟求助:在 JAVA APPLET 里如何旋转 90 度显示一个字符?
- discuz仿手游控游戏论坛商业版网站模板
- 海洋CMS仿7KB影视电影在线播放网站模板
- leadshop商城系统源码-前后端代码开源-v1.0.0
- 用手刻出计算机系统,一种计算机模拟手工雕刻制版的方法
- 电脑格式化后需要重装系统吗_重装系统后c盘文件丢失,电脑重装系统后c盘文件能恢复吗...
- 萝卜源码前后端源码+打包APP的教程