目录
1.替换和撤销(Undo)命令
替换和 Undo 命令都是针对普通模式下的操作:
命令 | 说明 |
---|---|
r +<待替换字母> | 将游标所在字母替换为指定字母 |
R | 连续替换,直到按下 Esc |
cc | 替换整行,即删除游标所在行,并进入插入模式 |
cw | 替换一个单词,即删除一个单词,并进入插入模式 |
C (大写) | 替换游标以后至行末 |
~ | 反转游标所在字母大小写 |
{n}u | 撤销一次或 n 次操作 |
U (大写) | 撤销当前行的所有修改 |
Ctrl+r | redo,即撤销 undo 的操作 |
2.快速缩进
使用命令进行快速调整缩进操作
这一小节学习如何在 vim 中进行快速缩进,缩进操作均在普通模式下有效。
打开文件进行编辑:
vim protocols
- 普通模式下输入
15G
,跳转到 15 行 - 普通模式下输入
>>
整行将向右缩进(使用,用于格式化代码超爽) - 普通模式下输入
<<
整行向左回退 - 普通模式下输入
:
进入命令行模式下对shiftwidth
值进行设置可以控制缩进和回退的字符数
shiftwidth 命令
shiftwidth
命令是指上一节 >>
命令产生的缩进(可以简写成sw
),普通模式下输入 :
进入命令行模式下对 shiftwidth
值进行设置可以控制缩进和回退的字符数。
获取目前的设定值:
:set shiftwidth?
设置缩进为 10 个字符:
:set shiftwidth=10
输入 ESC
回到普通模式,再次尝试 >>
看缩进量是否变化。
调整文本位置
命令行模式下输入 :ce
(center)命令使本行内容居中:
:ce
命令行模式下输入 :ri
(right)命令使本行文本靠右:
:ri
命令行模式下输入 le
(left)命令使本行内容靠左:
:le
3.查找
普通模式下输入 /
然后键入需要查找的字符串,按回车后就会进行查找。?
与/
功能相同,只不过 ?
是向上而 /
是向下查找。
进入查找之后,输入 n
和 N
可以继续查找。n
是查找下一个内容,N
查找上一个内容。
快速查找练习
使用 vim 打开文件进行编辑(搜索高亮需要在配置文件 .vimrc
中设置 set hls
,实验环境中已经设置好了)。
vim protocols
- 普通模式下输入
/icmp
然后回车即可查找字符串icmp
- 普通模式下输入
n
查找下一个icmp
- 普通模式下输入
?tcp
向上查找字符串tcp
- 普通模式下输入
N
查找上一个出现的tcp
- 命令行模式下输入
noh
然后回车即可取消搜索
高级查找
- 普通模式下输入
\*
寻找游标所在处的单词 - 普通模式下输入
\#
同上,但\#
是向前(上)找,\*
则是向后(下)找 - 普通模式下输入
g\*
同\*
,但部分符合该单词即可 - 普通模式下输入
g\#
同\#
,但部分符合该单词即可
以上查找 n
,N
的继续查找命令依然可以用。