Vim进阶
https://www.bilibili.com/video/BV1NG4y1p74h
查看帮助文档:normal 模式下输入 :help 字符
插入模式下
ctrl + h删除上一个字符,相当于 backspace 删除键
ctrl + w 如果光标所在位置为空格,则删除本行中当前光标左边最近的一个单词
ctrl + u删除当前光标到行首的内容;如果光标在行首,则删除当前行与上一行之间的换行符
快速切换到 normal 模式和 insert 模式
insert 切换到 normal 模式
ctrl + [ 推荐
ctrl + c 不推荐,可以会切断运行
normal 切换到 insert 模式
gi 快速切换到 insert 模式并将光标移动到最后一次编辑的位置
快速移动光标
向后
w/W: 移动到下一个word/WORD开头;e/E: 移动到下一个word/WORD开头;
向前
b/B: 移动到上一个word/WORD开头;
WORD表示是以空白符分割的单词;word表示是以非空白符分割的单词。
行内搜索移动
f + 字符:在当前行从前往后搜索,跳转到指定的字符上,使用; 或 ,分别向右或向左移动F + 字符:在当前行从后往前搜索,跳转到指定的字符上,使用; 或 ,分别向左或向右移动t + 字符:在当前行从前往后搜索,跳转到指定字符的前一个字符上,使用; 或 ,分别向右或向左移动T + 字符:在当前行从后往前搜索,跳转到指定字符的前一个字符上,使用; 或 ,分别向左或向右移动
移动到行首或行尾
0: 移动到行首第一个字符^: 移动到行首第一个非空白字符,可以使用0w代替。常用$: 移动到行尾。常用g_: 移动到行尾非空白字符
页面移动
gg移动到文件开头G移动到文件结尾H/M/L移动到屏幕的开头、中间和结尾ctrl + uupword,向上翻半页ctrl + fforword,向下翻半页zz将当前光标所在的行放置在屏幕中间
快速操作
删除
在 normal 模式下进行删除
dd 删除光标所在行;数字 + dd 删除光标所在行及之后的数字 - 1个行
x 删除光标所在字符;数字 + x 删除光标所在字符及之后的数字 - 1个字符
dw 删除当前单词的一部分:当前光标到单词结尾的部分(左闭右闭),以及单词后的空格
daw 删除光标所在的单词以及后面的空格
diw 删除光标所在的单词,不会删除后面的空格
dt + 字符 删除当前光标到指定字符之间(左闭右开)的内容。dt 为 delte to 的意思
d$ 删除当前光标及之后位置上的内容
d0 删除当前光标之前的所有内容
在 visual 模式下进行删除
按 v 进入行内选择,配合 h 或 l 左右选择后使用 d 或 x 删除
按 V 进入多行选择模式,配合 j 或 k 上下选择后使用 d 或 x 删除
修改
replace
r + 字符 快速替换光标所在的字符。数字 + r + 字符 将当前光标位置及后边紧挨着的共数字个字符替换为指定的字符
R 进入 replace 模式
substitute
s 删除当前字符并进入 insert 模式;数字 + s 表示删除指定个数个字符后进入插入模式
S 删除当前行,进入 insert 模式,光标移动到行首
change
caw 删除光标所在单词及后边的空格,并进入插入模式
C删除当前行,进入 insert 模式,光标移动到行首。与 S 功能相同
ct + 字符 删除当前字符到指定字符之间的内容(左闭右开),进入 insert 模式
查询
/ + 字符串 向后搜索;? + 字符串 向上搜索
n/N 跳转到下一个或上一个匹配
* 向下搜索当前光标所在单词,并将光标跳转到其上;# 向上搜索当前光标所在单词,并将光标跳转到其上
normal 模式下配置
:set hlshighlight selected:set incsearchincrease search,增量搜索,即动态显示搜索的结果

浙公网安备 33010602011771号