vim与复制,删除,粘贴,块操作以及快速替换功能
来源:互联网 发布:mac微信接收的文件 编辑:程序博客网 时间:2024/05/01 04:48
对于VIM而言,复制,删除,粘贴的操作应该是非常多的。这次也做一个总结,关于处理VIM下的复制,删除,粘贴等操作。
学会使用帮助文件,命令的帮助入口,就是”:help 命令名“。例如,对于”j“命令,查看它的帮助,使用”:help j“
先谈一下基于块的复制,删除,粘贴操作
对于vim几乎提到的都是以行为单位的操作。那么如果我想要搞定的是一个区块范围呢(我特别喜欢像使用windows下的文本编辑器一样去使用块的选择
区块选择的按键意义 【不使用鼠标,来选择块】
批量替换列块
原始状态:
将光标指到第一行V处,然后ctrl-v选择,如下
选择完成后,接着按c键,输入你要替换后的文字,最后ESC,看看成果如下,
以行或者是以单词为单位的删除操作
x, X 在一行字当中,x 为向后删除一个字符 (相当亍 [del] 按键),X 为向前删除一个字符(相当亍 [backspace] 亦即是退格键) (常用)
对行操作:
移动到行首:gg
移动到行尾 :字符$
小注:命令”G“前可以加上数字,在这里,数字的含义并不是倍数,而是你打算跳转的行号。例如,你想跳转到文件的第1234行,只需输入”1234G“。
字符0:第一个非空字符前
字符^:第一个非空字符上
上下左右:h, j, k, l
小注:如同许多vim命令一样,可以在这些键前加一个数字,表示移动的倍数。例如,”10j“表示向下移动10行;”10l“表示向右移动10列。
翻页:
小注:通常使用CTRL-B和CTRL-F来进行翻页,它们的功能等同于PageUp和PageDown。CTRL-B和CTRL-F前也可以加上数字,来表示向上或向下翻多少页
小注: 在文件中移动,你可能会迷失自己的位置,这时使用”CTRL-G“命令,查看一下自己位置。这个命令会显示出光标的位置及其它信息。为了避免迷失,你可以打开行号显示;使用”:set number“命令后,会在每一行前显示出行号,可以更方便的定位的跳转(:help ‘number’)
移动到指定字符: 使用f, t, F, T命令。
小注:“f“命令移动到光标右边的指定字符上,例如,”fx“,会把移动到光标右边的第一个’x'字符上。”F“命令则反方向查找,也就是移动到光标左边的指定字符上。
“t“命令和”f“命令的区别在于,它移动到光标右边的指定字符之前。例如,”tx“会移动到光标右边第一个’x'字符的前面。”T“命令是”t“命令的反向版本,它移动到光标右边的指定字符之后。
这四个命令只在当前行中移动光标,光标不会跨越回车换行符。
可以在命令前面使用数字,表示倍数。例如,”3fx“表示移动到光标右边的第3个’x'字符上。
“;“命令重复前一次输入的f, t, F, T命令,而”,“命令会反方向重复前一次输入的f, t, F, T命令。这两个命令前也可以使用数字来表示倍数。
复原以及重做操作
替换模式
关键是 “R “ 取代模式,它可以快速的替换以及插入数据(类似于 word中的 即点即输)的功能。
命令功能h光标左移l(或空格键)光标右移k(或[Ctrl+p])光标上移j(或[Ctrl+n])光标下移[Ctrl+f]向前翻页[Ctrl+b]向后翻页[Ctrl+d]向前翻半页[Ctrl+u]向后翻半页1G跳到文件首40G跳到第40行G跳到文件尾[Ctrl+g]显示当前行号及文件的百分比:set number显示所有带行号的行在一行内移动光标
B、E和W命令的作用与b、e和w的作用一样,只是后者忽略了标点符号。
命令功能b向后移动到单词首e向前移动到单词尾w向前移动到单词首0或|移动到行首30|移动到第30列^移动到本行的第一个单词的首字符$移动到行尾插入文本
命令功能i在光标的左侧插入字符20i-[Esc]插入20个连字符I在行首插入字符[Ctrl+v][Ctrl+b]插入[Ctrl+b]字符[Ctrl+v][Esc]插入[Esc]字符a在光标的右侧添加文本A在行尾添加文本o在当前行下面插入一空行O在当前行上面插入一空行:set showmode当vi处在输入模式下时显示提示信息:set sm即时显示配对的)或}:set ts=n把制表符设置为n(默认为8):set ai下一行从前一行的缩进位置开始删除和移动文本
命令功能x删除光标所在的字符6x删除光标位置的字符以及右侧的5个字符X删除前一个字符dd删除当前行4dd删除4行64dd删除64行dw删除一个单词d0删除到行首d$删除到行尾d删除一个区域(只用于vim)p把被剪切的文本粘贴到下面(整行)或右侧(部分行)P把被剪切的文本粘贴到上面(整行)或左侧(部分行)"add把当前行粘贴到缓冲区a里"ap把缓冲区a里的内容粘贴到当前位置J把当前行于下一行合并为一行xp调换两个字符的位置修改文本
命令功能rch把光标位置的字符替换为chR替换光标右边的文本s把光标所在的字符替换为任意个字符S替换整行内容cw修改一个单词c修改区域里的文本(vim)~改变所扫描的或区域里的字母的大小写!tr'[a-z]''[A-Z]'把区域里的字母转换为大写(vim)!tr'[A-Z]''[a-z]'把区域里的字母转换为小写(vim)复制文本
命令功能yy复制当前行6yy复制六行yw复制单词y复制区域(vim)p把复制的文本粘贴到右边或下面P把复制的文本粘贴到左边或上面
还有一个博客,总结的比较详细,推荐一下
http://www.cnblogs.com/tzhangofseu/archive/2011/12/17/2290955.html
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim与复制,删除,粘贴,块操作以及快速替换功能
- vim寄存器与复制粘贴的功能
- vim复制粘贴删除
- vim 快速选中并复制粘贴替换一个单词
- vim 快速选中并复制粘贴替换一个单词
- vim复制,粘贴,删除,撤销,替换,光标移动等用法
- vim复制,粘贴,删除,撤销,替换,光标移动等用法
- vim复制,粘贴,删除,撤销,替换,光标移动等用法
- vim复制,粘贴,删除,撤销,替换,光标移动等用法
- JAVA泛型
- Error running example: This version of Android Studio is incompatible with the Gradle Plugin used.解决
- VS2008 WorkFlow使用CodeActivity添加工作流逻辑
- clock()函数
- Java控制语句 标签的用法
- vim与复制,删除,粘贴,块操作以及快速替换功能
- Linux下如何查看tomcat是否启动
- workflow标准活动
- Android JUnit Test for Eclipse使用入门
- 江西SEO:其实豆瓣推广可以这样做
- Activity基础回顾
- Android开发-selector-setSelected-AndroidStudio
- uva10340 (字符串模拟)
- 任务1:搭建Java开发环境