skip to content

Search

Vim 常用操作总结

4 min read Updated:

这篇文章总结了 Vim 的常用操作,包括快速跳转、多行注释、终端开关、自定义快捷键等,帮助提高编辑效率。

🧠 Vim 常用操作总结

📌 快速跳转

操作命令说明
跳到文件开头gg移动到第 1 行
跳到文件结尾G移动到最后一行
跳到当前行行首0精确到第 0 列
跳到当前行第一个非空字符^跳到第一个非空字符
跳到当前行行尾$移动到当前行末尾字符

✏️ 多行注释与取消注释(无插件方式)

添加注释(以 # 为例):

  1. 进入可视行模式,选中多行: V + j/j/...

  2. 输入命令:

    :s/^/# /

取消注释:

:s/^#\s\?//

使用块模式注释(适合 //, #, 等语言):

  1. 进入可视块模式:Ctrl + v
  2. 用方向键或 j/k 选中多行开头列
  3. 输入 I 再输入注释符号(如 #
  4. Esc 自动插入到每行前

🔧 自定义终端开关快捷键(绑定 Ctrl + j

nnoremap <C-j> :call ToggleTerminal()<CR>
tnoremap <C-j> <C-\><C-n>:call ToggleTerminal()<CR>
 
function! ToggleTerminal()
  if &buftype ==# 'terminal'
    execute "normal! \<C-\\>\<C-n>"
    quit
  else
    belowright split | terminal
  endif
endfunction

功能说明:

  • Ctrl + j 在普通模式中打开/关闭终端
  • 在终端中按 Ctrl + j 会退出终端并关闭窗口
  • 终端窗口默认出现在下方

✂️ 复制全文

ggVGy        " 复制全文(普通寄存器)
ggVG"+y      " 复制到系统剪贴板(需支持 +clipboard

↩️ 撤销与重做

操作命令说明
撤销u撤销上一步操作
重做Ctrl + r恢复被撤销的操作(redo)
自定义 redo 映射nnoremap <C-y> <C-r>模仿 VSCode 的 Ctrl + Y 重做

🔍 当前行内跳转到指定字符

命令说明
f<char>向右跳到当前行中第一个 <char> 字符
F<char>向左跳到当前行中第一个 <char> 字符
t<char>向右跳到 <char> 前一个字符
T<char>向左跳到 <char> 后一个字符
;重复上一次跳转
,反向重复上一次跳转

❗ 报错 / 退出处理

:!q 报错的解释

  • 如果你在 Vim 中执行了:

    :!q

    会得到:

    /bin/bash: q: command not found
    shell returned 127
    Press ENTER or type command to continue
    
  • 表示 Vim 尝试运行 shell 命令 q,但找不到,Enter 即可返回正常编辑模式


正确退出 Vim 的命令

命令说明
:q退出当前文件(未修改时)
:q!强制退出(不保存)
:wq保存并退出
ZZ快捷保存并退出(大写 Z 两次)
:wqa保存并退出所有窗口/文件

🖥️ 终端模式中退出回普通模式

Ctrl + \  然后 Ctrl + n

作用:退出终端模式,回到普通命令模式(用于关闭终端等操作)