参考视频:编辑器之神:Vim 从入门到精通——李二花
https://www.bilibili.com/video/BV1Yz411e7pK?p=9&spm_id_from=pageDriver
参考文章:https://www.bilibili.com/read/cv6476028
- 显示行号:
在普通模式下输入 :nu 显示当前行行号
在普通模式下输入 :set nu 显示所有行号 - 退出:
在普通模式下输入 :q 退出
在普通模式下输入 :q! 强制退出
在普通模式下输入 :wq 保存后退出 - vim的三种模式:
普通模式 按下ESC键
插入模式 i或者a或者c
可视模式 普通可视按v 行可视按V 块可视按control+v - 普通模式下的上下左右键:k j h l
- 基于单词的移动:在普通模式下
按w移动到下一个单词的开头
按b移动到当前单词的开头/上一个单词的开头
按e移动到当前单词的末尾/下一个单词的末尾
按ge移动到上一个单词的末尾 - 对字符进行查找并通过查找进行移动:
f{char} 正向移动到下一个{char}所在之处
F{char} 反向移动到上一个{char}所在之处
t{char} 正向移动到下一个{char}所在之处的前一个字符上
T{char} 反向移动到上一个{char}所在之处的后一个字符上
; 重复上次的字符查找命令
, 反转方向查找上次的字符查找命令 - 文本对象与选择:
分隔符文本对象 括号和引号 () {} [] <> ‘’ “” ``
范围文本对象 单词w 句子s 字串W 段落p
i表示inside a表示around
vib选中()里的内容 vab选中()和()里的内容
viw选中当前单词 vaw选中当前单词和下一个空格 - 操作符待决模式
d{motion} 删除模式 dd删除一行
c{motion} 修改模式 cc修改一行
y{motion} 复制模式 yy复制一行 p粘贴
v{motion} 可视模式
d/c/y/v + ib/ab/iw/aw 操作符待决模式+文本对象 - 设置标记,快速回跳:
在普通模式下,m{mark}设置标记;`{mark}回跳 - 跳转和翻页:
gg跳到文件开头,shift+g跳到文件结尾,52+gg跳到52行
0 移动到一行的第一个字符 $ 移动到一行的最后一个字符
ctrl+u 上翻半页 ctrl+d 下翻半页
o 新建行并进入插入模式 - 查找: : / {string} 按n向下
- 替换:
vim中替换的格式为:[range]s/{string1}/{string2}/[flags]
range表示要替换的范围,比如10,20表示10-20行,%表示全部
string1表示要替换的字符串
string2表示替换成为的字符串
flags表示标志,常用的有g(表示全局范围内执行),没有g的话,每一行只会替换一行中第一个匹配成功的。c表示确认,在进行替换时我们可以选择是否进行替换,n表示匹配的次数,但不进行替换。
比如:%s/my/you/g, 表示把文件中所有的my替换成you。而且string1和string2都是支持正则表达式的。%s/my/you/gc
键盘图高清打印版,转载自https://blog.csdn.net/www_helloworld_com/article/details/103610639