vim常用快捷键

2017/03/19 vim

移动光标

h:光标向左移动一个字符

j:光标向下移动一个字符

k:光标向上移动一个字符

l:光标向右移动一个字符

按下数字n,然后按上面h或j或k或l,可以分别向左,下,上,右移动n个字符

ctrl+f:屏幕向下移动一页(常用)

ctrl+b:屏幕向上移动一页(常用)

ctrl+d:屏幕向下移动半页

ctrl+u:屏幕向上移动半页

-:光标移动到非空格的上一行

+:光标移动到非空格的下一行

0:移动到这一行的最前面字符处(常用)

$:移动到这一行的最后面字符处(常用)

H:光标移动到这个屏幕的最上方那一行的第一个字符

M:光标移动到这个屏幕的中间那一行的第一个字符

L:光标移动到这个屏幕的最下方那一行的第一个字符

G:移动到这个文件的最后一行(常用)

nG:移动到这个文件的第n航

gg:移动到这个文件的第一行,相当于1G

查找与替换

/word:向下查找一个名称为word的字符串

?word:向上查找一个名称为word的字符串

n:重复前一个查找的操作

N:反向前一个查找操作

:n1,n2s/word1/word2/g:n1与n2为数字,在第n1与n2行之间寻找word1这个字符串,并将字符串替换为word2(常用)

:1,$s/word1/word2/g:从第一行到最后一行为数字,在第n1与n2行之间寻找word1这个字符串,并将字符串替换为word2(常用)

:1,$s/word1/word2/g:从第一行到最后一行为数字,在第n1与n2行之间寻找word1这个字符串,并将字符串替换为word2。且在替换前显示提示字符给用户确认是否需要替换(常用)

删除,复制与粘贴

x,X:在一行中,x为向后删除一个字符,X为向前删除一个字符

nx:n为数字,连续向后删除n个字符

dd:删除光标所在的那一行

ndd:删除光标所在的向下n行

d1G:删除光标所在到第一行的所有数据

dG:删除光标所在到最后一行的所有数据

d$:删除光标所在处到该行的最后一个字符

d0:删除光标所在处到该行的最前面一个字符

yy:复制光标所在处的那一行(常用)

nyy:n为数字,复制光标所在的向下n行(常用)

y1G:复制光标所在处到第一行的所有数据(常用)

yG:复制光标所在行到最后一行的所有数据(常用)

y0:复制光标所在的那个字符到该行行首的所有数据(常用)

y$:复制光标所在的那个字符到该行行尾的所有数据(常用)

p,P:p为将已复制的数据在光标下一行粘贴,P为将已复制的数据在光标上一行粘贴

J:将光标所在行与下一行的数据结合成同一行

c:重复删除多个数据,例如向下删除10行[10cj]

u:复原前一个操作(常用)

ctrl+r:重做上一个操作(常用)

. :重复前一个操作

进入插入或替换的编辑模式

i,I:进入插入模式:i为从目前光标所在处插入,I为目前所在行的第一个非空格处开始插入(常用)

a,A:进入插入模式:a为从目前光标所在的下一个字符处开始插入,A为从光标所在行的最后一个字符处开始插入(常用)

o,O:进入插入模式:o为从目前光标所在的下一行处插入新的一行,O为目前光标所处的上一行插入新的一行(常用)

r,R:进入插入模式:r只会替换光标所在的那个字符一次,R会一直替换光标所字的文字,直到按下ESC键为止(常用)

块选择

v:字符选择,会将光标经过的地方反白选择

V:行选择,会将光标经过的行反白选择

ctrl+v:块选择,可以用长方形的方式选择数据

y:将反白的地方复制起来

d:将反白的地方删除

刪除沒有內容的空行

:%g/^$/d

刪除包含有空格組成的空行

:%g/^\s*$/d

删除以空格或tab开头到結尾的空行

:%g/^[ \t]*$/d

欢迎关注我的微信公众号

闷骚的程序员

闷骚的程序员
评论/查看评论 (Show Comments)

Search

    Post Directory