注:以下操作都在普通模式下进行

光标的移动操作

gg
定位到代码的第一行
shift+g
定位到代码的最后一行
n+shift+g
定位到第n行
shift+6:
特定一行的开始
shift+4
特定一行的结尾
上下左右的移动光标
h: 向左移动光标
j: 向下移动光标
k: 向上移动光标
l: 向右移动光标

w 以单词为单位向右移动
b 以单词为单位向左移动

对行的操作

复制光标所在的行:yy
如果你想要复制5行(从光标所在行开始往下数) 你可以使用:5 yy
如果你想要复制n行 同理 你可以使用 n yy
粘贴:p
如果想粘贴10次就使用:10 p
如果想粘贴n次就使用: n p
撤销操作:u

如何删除光标所在的行:dd
其实dd 也相当于Windows的剪切功能,你使用dd之后可以再使用p命令,将删掉的内容粘贴到光标的位置

如果你想将9行内容剪切到其他地方的话你可以:9 dd 然后再在你想要移动到的位置p 一下
如果你想将 n 行内容 剪切到其他地方的话你可以:n dd 然后再目标位置p 一下;

对行内一部分的操作

大小写字母的转化
按住shift 不动, 在按~

替换掉行内你想替换替换的字母,比如,“hello world”
你想替换成“hello worlx”
你只需要光标定位到单词worldd 然后按r 接着就可以改成你想改的字符了,这里是改成x 所以你按了r 之后 在按 x 就行了
同理,如果你想将从光标开始往右数5个字符全换成x 你可以输入:5 r 然后按x
但是这样替换掉的字符都是一样的呀,比如这里全换成了x ,那如果我想替换的字母不一样那该怎么办,这样的话就要进入 == 替换模式 == 了 。使用:shift + r 进入替换模式。这样就可以替换了 。
比如:你想把hello world 改成 hello linux 就是把world 替换成linux
你要先在普通模式下将光标移动到单词world的位置 然后按:shift r 进入替换模式 ,接着就可以直接输入linux了,因为它会直接替换掉world

如何删除行内的部分字符?
比如:hello world 这串字符,我想把hello删掉,那该怎么办,肯定不能用dd呀,因为dd是把整行都删掉
我们这样:在普通模式下将光标放在要删除的字符的位置按x ,(x 是向后删除一个字符,如果你想删除从光标开始往后数4个字符你就按4 x 就行了)
所以我们只需要将光标放在hello这个单词的h的位置按5 x 就行了
如果你想往前删就用:shift + x

撤销操作

如果你想撤销某个操作你可以在普通模式下按下:u
但是如果撤销撤多了,本来只需撤销一次,但是你撤销了两次,那该怎么办?
我们可以按下:ctrl r 就是对 u 的撤销

如果你对 u 操作后悔了,你就用ctrl r
如果你对ctrl r 操作后悔了,你就用u

如果你只想要拷贝一部分单词该怎么办

y w 命令,
y y 是把一整行都复制过去。
y w 就是复制一个单词。
3 y w 就是连续复制3个单词,所以:n y w就是连续复制n个单词

在vim中对某个单词进行搜索

shift + #

vim如何批量注释代码

第一步:这个时候就要用到第5种模式,叫视图模式
在命名模式中按下ctrl v 就进入了视图模式
这个时候左下角显示了V-BLOCK 全称是VISUAL BLOCK这就是视图模式

第二步:进入视图模式之后用h,j,k,l这些方向键来选择你要注释的内容。
第三步:在选择好要注释的内容之后,按下:shift i 进入编辑模式,然后键入://
第四步:在键入//后,直接按Esc就行了。到此,注释完成

vim如何批量删除注释

第一步:
在命名模式中按下ctrl v 就进入了视图模式
这个时候左下角显示了VISUAL BLOCK这就是视图模式

第二步:进入视图模式之后用h,j,k,l这些方向键来选择你要删除注释的内容。
第三步:按下d进行删除即可

定为光标到我们想要的地方

举个列子:vim mycode.c +7 表示在用光标打开这个文件的时候用光标定位到第7