vim常用命令整理

基础指令

  • i → Insert 模式,按 ESC 回到 Normal 模式.
  • x → 删除光标所在字符。
  • :wq → 存盘 + 退出
  • dd → 删除当前行,并把行存到剪贴板里
    • 2dd → 删除2行
  • p → 粘贴剪贴板内容
  • hjkl → 对应方向(←↓↑→)
  • :help → 显示相关命令的帮助(注:使用:q退出)

插入模式

  • a → 在光标后插入
  • o → 在当前行后插入一个新行
  • O → 在当前行前插入一个新行
  • cw → 替换光标所在位置后的第一个单词

光标移动

  • 0 → 数字零,到行头
  • $ → 到本行行尾
  • w 光标移动到下个单词首字母
    • W 光标移动到下个字符串首字母
  • e 光标移动到下个单词尾字母
    • 光标移动到下个字符串尾字母
  • b 光标移动到上个单词首字母
    • B 光标移动到上个字符串首
  • /pattern → 搜索 pattern 的字符串(按n键到下一个)
  • NG → 到第N行 (Ngg或:N都可以)
  • gg → 到第一行
  • G → 到最后一行
  • % → 匹配括号移动,包括 (, {, [.
  • * 和 # → 匹配光标当前所在的单词,移动光标到下一个(或上一个)匹配单词
  • fa → 到下一个a字符处
    • 3fa → 到第三处a字符处
    • F → 检索方向相反
  • ta → a前的第一个字符
    • dta → 删除所有的内容直到遇到a
    • T → 检索方向相反

拷贝/粘贴

  • p → 粘贴(P表示在当前位置之后)
    • 3p → 粘贴文本3次
  • P → 粘贴(P表示在当前位置之前)
  • yy → 拷贝当前行当行于 ddP

Undo/Redo

  • u → undo
  • ctrl+r → redo

打开&保存&退出&切换文件

  • :e → 打开一个文件
  • :w → 存盘
  • :saveas → 另存为
  • :x, ZZ 或 :wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)
  • :q! → 退出不保存 :qa! 强行退出所有的正在编辑的文件,就算别的文件有更改。
  • :bn 和 :bp → 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。

块操作:

块操作,典型的操作: 0 Ctrl+v I// [ESC]

1
2
3
4
5
6
7
8
9
10
//块行头插入数据
^ → 到行头
<C-v> → 开始块操作
<C-d> → 向下移动 (你也可以使用hjkl来移动光标,或是使用%,或是别的)
I-- [ESC] → I是插入,插入“//”,按ESC键来为每一行生效。

//块行尾插入数据
<C-v> → 选中相关的行
$ → 到行最后
A → 输入字符串,按 ESC。

可视化选择 v,V, Ctrl+v Ctrl+q(windows)

  • J → 把所有的行连接起来(变成一行)
  • < 或 > → 左右缩进
  • = → 自动给缩进

分屏

  • :split → 创建分屏
  • :vsplit → 创建垂直分屏
  • Ctrl+w <dir> → dir就是方向,可以是 hjkl 或是 ←↓↑→ 中的一个,其用来切换分屏。

其它

  • 100i<word> [ESC]
  • . → 重复上一次修改指令
    • 3. → 重复3次修改指令
  • 通过进行操作
    • 0y$ → 从行头开始拷贝到本行最后一个字符
    • d (删除 ) gU (变大写) gu (变小写)
  • 自动补齐:Ctrl+n 和 Ctrl+p (Insert模式下)
Thank you for your support!