admin 管理员组

文章数量: 1087190

目录

基础模式(也叫一般模式)

1、光标移动

2、删除/剪切

3、复制/粘贴

4、替换

5、查找

末行模式

可视化 VISUAL 模式

其他


基础模式(也叫一般模式)

1、光标移动

  • 基本移动:

h:左移一个字符
j:下移一行
k:上移一行
l:右移一个字符

  • 单词间移动:

w:移动到下一个单词的词首
b:移动到上一个单词的词首
e:移动到当前/下一个单词的词尾
ge:移动到上一个单词的词尾

  • 行内移动:

0:移动到行首(第一个字符位置)
^:移动到行首的第一个非空白字符
$:移动到行尾

  • 行间移动:

gg:移动到文件开头
G:移动到文件结尾
nG 或 :n:移动到第 n 行(如 10G 移动到第 10 行)
%:跳转到匹配的括号(如 (、)、[、]、{、})

  • 屏幕内移动:

H:移动到屏幕顶部
M:移动到屏幕中间
L:移动到屏幕底部
Ctrl+u:向上滚动半屏
Ctrl+d:向下滚动半屏
Ctrl+f:向前滚动一屏(下一页)
Ctrl+b:向后滚动一屏(上一页)

2、删除/剪切

x:删除当前光标所在字符(相当于 dl)
X:删除当前光标前的字符(相当于 dh)
dd:删除当前行(并放入剪贴板,可用于粘贴)
ndd:删除从当前行开始的 n 行(如 3dd 删除 3 行)
dw:删除从当前光标位置到下一个单词词首的内容
de:删除从当前光标位置到当前/下一个单词词尾的内容
d$:删除从当前光标位置到行尾的内容
d0 或 d^:删除从当前光标位置到行首的内容
d%:删除从当前光标位置到匹配括号之间的内容
dG:删除从当前行到文件结尾的内容
dgg:删除从当前行到文件开头的内容


3、复制/粘贴


yy 或 Y:复制当前行(Y 等价于 y$)
nyy:复制从当前行开始的 n 行(如 3yy 复制 3 行)
yw:复制从当前光标位置到下一个单词词首的内容
ye:复制从当前光标位置到当前/下一个单词词尾的内容
y$:复制从当前光标位置到行尾的内容
y0 或 y^:复制从当前光标位置到行首的内容
p:在当前光标后粘贴剪贴板内容
P:在当前光标前粘贴剪贴板内容


4、替换


r<char>:替换当前光标所在字符为指定字符(如 ra 将当前字符替换为 a)
R:进入替换模式,持续替换后续字符,按 Esc 退出
cw:删除从当前光标位置到下一个单词词首的内容,并进入插入模式
ciw:删除当前单词(不包括周围空格),并进入插入模式
c$:删除从当前光标位置到行尾的内容,并进入插入模式
撤销/重做
u:撤销上一步操作
Ctrl+r:重做(恢复撤销的操作)

5、查找


/pattern:向前查找指定模式(如 /hello 查找 hello)
?pattern:向后查找指定模式
n:重复上一次查找(方向相同)
N:反向重复上一次查找(方向相反)
*:查找当前光标所在的单词(向前)
#:查找当前光标所在的单词(向后)

末行模式

取消高亮

:set nohlsearch 

开启行号

:set nu

取消行号

:set nonu

可视化 VISUAL 模式

使用快捷键 ctr+V模式进入行选择模式

使用ctr + v 进入 字符选择模式

a) 使用 向下的选择键 就可以选中需要处理的行

b)    再使用 D 键就可以删除选中的行, 使用 y 就可以复制所选中的行

示例1:快速删除行首的注释符号 “#”

示例2: 在多行同时添加注释符号 “#”

ctr+ V 进入可视化模式

其他

::进入命令行模式(如保存、退出等)
Esc 或 Ctrl+[:从其他模式返回到一般模式

Ctrl+v:进入块选择模式
J:将当前行与下一行合并为一行,并用空格分隔
~:切换当前光标所在字符的大小写
guw:将当前单词转换为小写
gUw:将当前单词转换为大写
guu:将当前行转换为小写
gUU:将当前行转换为大写

本文标签: 高级 vim