Vim快捷键介绍
Vim 是一款功能强大的文本编辑器,以其高效的快捷键系统著称。以下是 Vim 的详尽快捷键介绍:
模式切换
普通模式(Normal mode) - 默认模式,用于导航和命令
Esc或Ctrl+[- 从其他模式返回普通模式
插入模式(Insert mode) - 用于输入文本
i- 在光标前插入I- 在行首插入a- 在光标后插入A- 在行尾插入o- 在当前行下方新建一行并插入O- 在当前行上方新建一行并插入
可视模式(Visual mode) - 用于选择文本
v- 字符可视模式V- 行可视模式Ctrl+v- 块可视模式
命令模式(Command mode) - 用于执行命令
:- 进入命令模式
光标移动
基本移动
h- 左移j- 下移k- 上移l- 右移0- 移动到行首^- 移动到行首非空白字符$- 移动到行尾gg- 移动到文件开头G- 移动到文件末尾:[n]- 跳转到第n行
单词移动
w- 移动到下一个单词开头W- 移动到下一个单词开头(忽略标点)e- 移动到当前单词末尾E- 移动到当前单词末尾(忽略标点)b- 移动到上一个单词开头B- 移动到上一个单词开头(忽略标点)
屏幕移动
H- 移动到屏幕顶部M- 移动到屏幕中间L- 移动到屏幕底部Ctrl+f- 向下翻页Ctrl+b- 向上翻页Ctrl+d- 向下半页Ctrl+u- 向上半页zz- 将当前行置于屏幕中央
编辑操作
删除
x- 删除当前字符X- 删除前一个字符dw- 删除到下一个单词开头de- 删除到当前单词末尾db- 删除到前一个单词开头dd- 删除整行D或d$- 删除到行尾d0- 删除到行首dgg- 删除到文件开头dG- 删除到文件末尾
复制与粘贴
yy- 复制当前行yw- 复制到下一个单词开头y$- 复制到行尾p- 粘贴到光标后P- 粘贴到光标前]p- 粘贴并自动缩进
撤销与重做
u- 撤销Ctrl+r- 重做U- 撤销整行修改
替换
r- 替换当前字符R- 进入替换模式~- 切换大小写guu- 整行转为小写gUU- 整行转为大写guw- 当前单词转为小写gUw- 当前单词转为大写
查找与替换
查找
/pattern- 向前查找?pattern- 向后查找n- 下一个匹配项N- 上一个匹配项*- 查找当前单词(向前)#- 查找当前单词(向后)f[char]- 查找当前行的下一个charF[char]- 查找当前行的上一个chart[char]- 查找当前行的下一个char前T[char]- 查找当前行的上一个char后;- 重复上次f/F/t/T命令,- 反向重复上次f/F/t/T命令
替换
:s/old/new- 替换当前行第一个old为new:s/old/new/g- 替换当前行所有old为new:%s/old/new/g- 替换全文所有old为new:%s/old/new/gc- 替换全文所有old为new(需确认)
窗口与标签页
窗口操作
:sp [file]- 水平分割窗口:vsp [file]- 垂直分割窗口Ctrl+w h/j/k/l- 切换到左/下/上/右窗口Ctrl+w w- 循环切换窗口Ctrl+w =- 使所有窗口等宽等高Ctrl+w _- 最大化当前窗口高度Ctrl+w |- 最大化当前窗口宽度Ctrl+w +- 增加窗口高度Ctrl+w -- 减少窗口高度Ctrl+w >- 增加窗口宽度Ctrl+w <- 减少窗口宽度Ctrl+w q- 关闭当前窗口Ctrl+w o- 关闭其他窗口
标签页操作
:tabnew [file]- 新建标签页:tabclose- 关闭当前标签页:tabonly- 关闭其他标签页gt或:tabnext- 下一个标签页gT或:tabprevious- 上一个标签页[n]gt- 切换到第n个标签页
其他实用命令
.- 重复上次修改%- 在匹配的括号间跳转Ctrl+g- 显示当前文件名和位置Ctrl+o- 跳转到上一个位置Ctrl+i- 跳转到下一个位置:e!- 重新加载当前文件(放弃修改):w- 保存文件:wq或ZZ- 保存并退出:q!或ZQ- 不保存退出:set number- 显示行号:set nonumber- 隐藏行号:set paste- 进入粘贴模式(避免自动缩进):set nopaste- 退出粘贴模式:help- 打开帮助
宏录制
q[a-z]- 开始录制宏到指定寄存器q- 停止录制@[a-z]- 执行指定寄存器的宏@@- 重复上次执行的宏
寄存器操作
"[a-z]- 指定寄存器进行操作:reg- 查看寄存器内容"+y- 复制到系统剪贴板"+p- 从系统剪贴板粘贴
以上是 Vim 的主要快捷键,掌握这些可以极大提高编辑效率。Vim 的学习曲线较陡,但一旦熟悉,将成为极其强大的编辑工具。