vim绝对常用命令
Posted 浦江之猿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim绝对常用命令相关的知识,希望对你有一定的参考价值。
vim绝对常用命令
熟练掌握vim命令会大大提高工作效率,为此本博客分享了我在工作中常用到的命令,还有很多不常用的命令并没有列出来。命令不用则忘,所以大家在学习这些命令时一定要多用,用多了你也会被小伙伴们当作神一样看待。
vim中有四种模式,四种模式的关系如下图所示,每种模式都有相应的命令。
普通模式
移动光标
鼠标处于某行中的任意位置时:
命令 | 功能 | 备注 |
---|---|---|
shift+right | 移动到下一行行首 | |
shift+down | 移动到最后一行行首 | 注意与shift+g(G)的区别,两者区别不大,依个人习惯使用 |
shift+left | 移动到当前行行首 | |
ctrl+b | 屏幕往后(上)移动一页 | |
ctrl+f | 屏幕往前(下)移动一页 | |
ctrl+u | 屏幕往后(上)移动半页 | |
ctrl+d | 屏幕往前(下)移动半页 | |
shift+g(G) | 移动到文本的最后一行行首 | 注意与shift+down的区别,两者区别不大,依个人习惯使用 |
gg | 进入到文本的开始 | |
shift+4 ($) | 移动到光标所在行的行尾 | |
shift+6 (^) | 移动到光标所在行的行首 | |
w | 光标跳到下个字的开头 | |
b | 光标回到上个字的开头 | |
o | 光标跳到最后另起一行,并进入插入模式 | 小写字母,不是数字 |
删除文字
命令 | 功能 | 备注 |
---|---|---|
x | 删除光标所在位置的下一个字符 | |
Shift+x (X) | 删除光标所在位置的前一个字符 | |
dd | 删除光标所在行 | |
#dd | 从光标所在行开始删除#行 | 3dd,删除3行 |
复制粘贴
命令 | 功能 | 备注 |
---|---|---|
yy | 复制当前光标所在行,光标只要在当前行就行,不管前中后 | |
yw | 复制光标所在位置的后一个字 | |
p | 将复制内容粘贴光标之后 | 如果复制的是一整行,则粘贴到当前行的下一行 |
shift+p ( P ) | 将复制内容粘贴到光标所在位置的前一个字之前 | 如果复制的是一整行,则粘贴到当前行的上一行 |
查找替换
普通模式下无法将查找和替换结合使用,即没办法将查找到的结果一键替换
命令 | 功能 | 备注 |
---|---|---|
/ | 向下查找 | 在/后输入要查找的内容,查找到光标会出现在内容的前面,按n表示查找下一个 |
shift+/ (?) | 向上查找 | 在?后输入要查找的内容,查找到光标会出现在内容的前面,按n表示查找上一个 |
shift+8 | 向下查找某个单词 | 将光标放到某个单词上按shift+8,按n表示查找下一个 |
shift+3 | 向上查找某个单词 | 将光标放到某个单词上按shift+3,按n表示查找上一个 |
#r | 替换光标处右侧的#个字母 | 只能将右侧的#个字母全部替换成同一个字母,例如光标在who的左侧,输入3r,再输入a,则who会变成aaa |
shift+r ( R) | 替换光标所到之处的内容,直到按Esc |
撤销
命令 | 功能 | 备注 |
---|---|---|
u | 撤销上一次操作 | 按几次就撤销几次 |
更改
命令 | 功能 | 备注 |
---|---|---|
cw | 更改光标后当前行的所有内容 | |
c#w | 更改光标后当前行及向下#-1行的所有内容 |
视图模式
视图模式下主要使用的功能就是选择,然后复制,使用方法类似手机上的选择复制
命令 | 功能 | 备注 |
---|---|---|
v | 移动方向键逐个选中内容 | 在普通模式下,按下v,进行视图模式,选中后按下y可以复制 |
shift+v (V) | 移动方向键逐个选中内容 | 在普通模式下,按下V,进行视图模式,选中后按下y可以复制 |
编辑(插入)模式
一般情况下先通过普通模式定位到需要编辑的地方再进行编辑
命令 | 功能 | 备注 |
---|---|---|
i | 进行编辑模式 | 需要在普通模式下输入i |
命令模式
先通过普通模式进入命令模式,再执行相应的命令
命令 | 功能 | 备注 |
---|---|---|
: | 进入命令模式 | 在普通模式下输入 |
wq | 保存修改过的内容,并退出 | 在编辑模式下编辑好后,ECS退出到普通模式,再进入命令模式,再执行此命令 |
q! | 不保存内容退出 | 在编辑模式下编辑好后,ECS退出到普通模式,再进入命令模式,再执行此命令 |
set nu | 显示行号 | 一定要在命令模式下执行,即先输入:, 再执行此命令 |
set nonu | 不显示行号 | 一定要在命令模式下执行,即先输入:, 再执行此命令 |
总结
关于vim绝对常用命令就介绍完了,当然可能还有一些遗漏的常用命令,希望大佬们指正并留言。最后,希望本文能帮助大家,祝大家在IT之路上少走弯路,一路绿灯不堵车,测试一性通过,bug秒解!
以上是关于vim绝对常用命令的主要内容,如果未能解决你的问题,请参考以下文章