1. 移动指针:

上下左右:

  k

h    l

  j

 

横向移动:

0: 行首第一个字符

^: 行第一个非空字符

g0: 屏幕行首第一个字符,不过这里的行指的是屏幕显示的行,如果行太长自动化换行的还,那么会移动到屏幕显示的行的第一个字符,而不是真正行的第一个字符;

^0: 屏幕行第一个非字符;

g$: 屏幕行最后一个字符;

gm:屏幕行中间字符;

gM:真正行中间字符;

| + N: 到第N列;

f + {char}: 移动到右侧最近字符char;

F + {char}: 移动到左侧最近字符char;

t + {char}: 移动到左侧第一个char之左的一个字符;

T + {char}: 移动到右侧第一个char之右的一个字符;

;:重复fFtT命令;

,:重复fFtp相反的命令;

 

上下移动:

-: 向上移动一行,并且移动到行首非空字符;

+:向下移动到第一个,并且移动到行首非空字符;

_: 移动n-1行;

G: 移动到最后一行,或者指定行数;

gg: 移动到第一行;

%: 按百分比移动行数,必须给出数值才能用;

gk: 向上移动屏幕行;

gj:向下移动屏幕行;

 

按词单位移动:

w:下一个词首;

W:下一个词首,按空格判断词;

e: 下一个词尾;

E: 下一个词尾,按空格判断词;

b: 上一个词首;

B: 上一个词首,按空格判断词;

ge: 下一个词首;

gE:  下一个词首,按空格判断词;

): 往后移动一句;

(: 往前移动一句;

{:往前移动一段;

}: 往后移动一段;

]#: 往后找if else未封口;

[#: 往前找if else未封口;

 

造就自己