一。光标移动
^ 到该行第一个非空格字符处。
+ 到下一行的第一个非空格字符处
- 到上一行的第一个非空格字符处
`. 到上次修改点
m{a-z} 标记i一个位置,`{a-z} 回到标记的位置
`` 到光标上一个标记处
:n+enter 到第n行(等于nG), n+enter 到下面第n行
gd 到函数定义处(暂时未用)
w 后一个词的开头,W 后一个词的开头(忽略标点)
w 后一个词的结尾,W 后一个词的结尾(忽略标点)
b 前一个词的开头,B 前一个词的开头(忽略标点)
fx 到本行第一次出现x的位置
nfx 到本行第n次出现x的位置
二。屏幕定位
zz 当前行作为屏幕中央
zt 当前行作为屏幕顶行
zb 当前行作为屏幕底行
(以上三条命令前加数字,意思是“第n行”)
三。缩进
>> 向后缩进,<< 向前缩进
== 自动对齐
四。多窗口
五。 替换
(1):s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
(2):n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
(3):%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
(4)可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
手机扫一扫
移动阅读更方便
你可能感兴趣的文章