50 个有用的 Vim 命令

  • gg 移动到文件的第一行
  • G 移动到文件的最后一行
  • gg=G 重新缩进整个文件
  • gv 重新选择上次的可视选择
  • `` < 跳到上次可视选择的开头
  • `` > 跳到上次可视选择的末尾
  • ^ 移动到行首第一个非空字符
  • g_ 移动到行尾最后一个非空字符(你应该已经去除了尾随空白)
  • g_lD 删除行尾所有的尾随空白
  • ea 在当前单词的末尾追加
  • gf 跳到光标下的文件名
  • xp 向前交换字符
  • Xp 向后交换字符
  • yyp 复制当前行
  • yapP 复制当前段落
  • dat 删除HTML标签及其内容
  • dit 删除HTML标签内的内容,不包括标签
  • w 向右移动一个单词
  • b 向左移动一个单词
  • dd 删除当前行
  • zc 关闭当前折叠
  • zo 打开当前折叠
  • za 切换当前折叠状态
  • zi 完全切换折叠状态
  • << 向左缩进当前行
  • 向右缩进当前行

  • z= 显示拼写纠正建议
  • zg 添加到拼写字典
  • zw 从拼写字典中移除
  • ~ 切换当前字符的大小写
  • gUw 将光标到单词末尾的字符变为大写(用u为小写,~切换)
  • gUiw 将整个单词变为大写(用u为小写,~切换)
  • gUU 将整行变为大写
  • gu$ 将光标到行末的字符变为小写
  • da” 删除下一个双引号内的字符串
    • 移动到下一行的第一个非空字符
  • S 删除当前行并进入插入模式
  • I 在行首插入
  • ci” 修改下一个双引号内的内容
  • ca{ 修改花括号内的内容(试试[, (, 等)
  • vaw 可视选择单词
  • dap 删除整个段落
  • r 替换一个字符
  • `` [ ` 跳到上次拷贝文本的开头
  • `` ] ` 跳到上次拷贝文本的末尾
  • g; 跳到上次修改的位置
  • g, 向前跳到下一个修改的位置
  • & 在当前行重复上次替换
  • g& 在所有行重复上次替换
  • ZZ 保存当前文件并关闭它
  • 希望这些命令能帮助你在Vim中更加高效地工作!