vim学习3-查找替换
一、字符的替换及撤销(Undo操作)
1.替换和撤销(Undo)命令
替换和Undo命令都是针对普通模式下的操作
命令 | 说明 |
---|---|
r +<待替换字母> |
将游标所在字母替换为指定字母 |
R |
连续替换,直到按下Esc |
cc |
替换整行,即删除游标所在行,并进入插入模式 |
cw |
替换一个单词,即删除一个单词,并进入插入模式 |
C (大写) |
替换游标以后至行末 |
~ |
反转游标所在字母大小写 |
u {n} |
撤销一次或n次操作 |
U (大写) |
撤销当前行的所有修改 |
Ctrl+r |
redo,即撤销undo的操作 |
打开文件进行编辑:
$ vim practice_2
# 输入以下文本
www.shiyanlou.com
然后依次进行如下操作
- 输入
11G
,跳转到11行 - 输入fa跳转到第一个
a
字符 - 输入
r
,并且输入b,a字符被b字符替换(实用) - 输入
R
替换字符,输入新字符串,输入完按ESC回到普通模式(实用) - 输入
cc
替换整行字符,输入新字符串,输入完按ESC回到普通模式 - 输入
cw
替换一个英文字(word),输入完按ESC回到普通模式(实用) - 输入
~
,翻转游标所在字符的大小写 - 输入
C
替换至行尾,即游标所在处以后的字都会被替换,输入完按ESC回到普通模式 - 输入
u
撤销上一次的操作
二、快速缩进
1.使用命令进行快速调整缩进操作
这一小节学习如何在vim中进行快速缩进,缩进操作均在普通模式下有效
打开文件进行编辑
$ vim protocols
- 普通模式下输入
15G
,跳转到15行 - 普通模式下输入
>>
整行将向右缩进(使用,用于格式化代码超爽) - 普通模式下输入
<<
整行向左回退 - 普通模式下输入
:
进入命令行模式下对shiftwidth
值进行设置可以控制缩进和回退的字符数
2.shiftwidth命令
shiftwidth
命令是指上一节>>
命令产生的缩进(可以简写成sw
) 普通模式下输入:
进入命令行模式下对shiftwidth
值进行设置可以控制缩进和回退的字符数 获取目前的设定值
:set shiftwidth?
设置缩进为10个字符
:set shiftwidth=10
输入ESC
回到普通模式,再次尝试>>
看缩进量是否变化
3.调整文本位置
命令行模式下输入:ce
(center)命令使本行内容居中
:ce
命令行模式下输入:ri
(right)命令使本行文本靠右
:ri
命令行模式下输入:le
(left)命令使本行内容靠左
:le
三、查找
1.快速查找
普通模式下输入/
然后键入需要查找的字符串 按回车后就会进行查找。 ?
与/
功能相同,只不过?
是向上而/
是向下查找。 进入查找之后,输入n
和N
可以继续查找 n
表示继续查找,N
反向查找
2.快速查找练习
使用vim打开文件进行编辑
$ vim protocols
- 普通模式下输入
/icmp
查找字符串icmp - 普通模式下输入
n
查找下一个icmp - 普通模式下输入
?tcp
向上查找字符串tcp - 普通模式下输入
N
查找上一个出现的tcp
3.高级查找
- 普通模式下输入
\*
寻找游标所在处的单词 - 普通模式下输入
\#
同上,但\*
是向前(上)找,\#
则是向后(下)找 - 普通模式下输入
g\*
同\*
,但部分符合该单词即可 - 普通模式下输入
g\#
同\#
,但部分符合该单词即可
以上查找n
,N
的继续查找命令依然可以用
vim学习3-查找替换的更多相关文章
- 如何在Vim中的查找替换
“%s/最/第二/g” 用vim的人都知道,这是把所有“最”替换成“第二”的意思.其实vim的查找替换功能非常强大,用的好可以极大提升效率. vim的查找替换命令如下所示: :{作用范围}s/{ ...
- vi、vim 查找替换
vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询. :s/vivian/sky/ 替换当前行第一个 vivian ...
- vim查找/替换字符串
1.:s 命令来替换字符串. :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n,$s/vivia ...
- Vi/Vim查找替换使用方法
vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询. :s/vivian/sky/ 替换当前行第一个 vivian 为 s ...
- [转]Vi/Vim查找替换使用方法
vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询. :s/vivian/sky/ 替换当前行第一个 vivian ...
- 【不积跬步,无以致千里】VIM查找替换归纳总结zz
http://spaces.msn.com/dingy/blog/cns!2F24B9E66A542581!327.entry VIM中常用的替换模式总结. 1,简单替换表达式 替换命令可以在全文中用 ...
- vim查找/替换字符串 及一些高级用法
例: 32 ./run 0_39.pkt 0_39.jpg 33 ./run 0_3.pkt 0_3.jpg 34 ./run 0_40.pkt 0_40.jpg 35 ./run 0_41.pkt ...
- 关于在vim中的查找和替换
1,查找 在normal模式下按下/即可进入查找模式,输入要查找的字符串并按下回车. Vim会跳转到第一个匹配.按下n查找下一个,按下N查找上一个. Vim查找支持正则表达式,例如/vim$匹配行尾的 ...
- 【转】关于在vim中的查找和替换
1,查找 在normal模式下按下/即可进入查找模式,输入要查找的字符串并按下回车. Vim会跳转到第一个匹配.按下n查找下一个,按下N查找上一个. Vim查找支持正则表达式,例如/vim$匹配行尾的 ...
随机推荐
- sqlserver 触发器实例代码
定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序.触发器是一个特殊的存储过程. 常见的触发器有三种:分别应用于Insert , Update ...
- 把ANSI格式的TXT文件批量转换成UTF-8文件类型
把ANSI格式的TXT文件批量转换成UTF-8文件类型 Posted on 2010-08-05 10:38 moss_tan_jun 阅读(3635) 评论(0) 编辑 收藏 #region 把AN ...
- [SCOI 2010] 连续攻击游戏
[题目链接] https://www.luogu.org/problemnew/show/P1640 [算法] 二分图匹配 实现时需要常数优化和特判 [代码] //code by byf and lm ...
- 腾讯云SSL证书管理
2018050608010400y5mbx15awnpwxfhdmd7zqet1i9dzaqkvb6lxzosi4qq5ezbr
- 机器学习——Day 3 多元线性回归
写在开头 由于某些原因开始了机器学习,为了更好的理解和深入的思考(记录)所以开始写博客. 学习教程来源于github的Avik-Jain的100-Days-Of-MLCode 英文版:https:// ...
- Vue.js经典开源项目汇总-前端参考资源
Vue.js经典开源项目汇总 原文链接:http://www.cnblogs.com/huyong/p/6517949.html Vue是什么? Vue.js(读音 /vjuː/, 类似于 view) ...
- 【Leetcode 3】Longest Substring Without Repeating Characters0
Description: Given a string, find the length of the longest substring without repeating characters. ...
- java基础之吃货联盟
因为用的是普通数组,所以编写的代码可能比较长,而且有的功能还比较不健全,代码如下: 0.定义数组(因为用static修饰可以不用New,比较方便,但可能比较损耗性能) //订餐人名字 static S ...
- hibernate annotation 之 一对多、多对一双向外键关联
假设,一个农场产出多种植物,具体的某一植物产于某一农场. 3 import java.io.Serializable; 4 import java.util.Set; 5 import javax.p ...
- CSS基础知识(定位、浮动)
12.浮动 特点:将当前元素脱离文档流 float: left 即左浮动 float: right 即右浮动 注:*父与子元素,设置子元素浮动不能超出父元素的范围 *多个元素均设置为浮动时,将 ...