Vim 基础操作学习笔记

2013/12/05 vim

# 一、移动

  • h, j, k, l: 左,下,上,右
  • w: 下一个词的词首
  • e: 下一个词的词尾
  • b: 上一个词的词首
  • <>: v 模式选中后进行缩进

# 二、跳转

  • %: 可以匹配{},"",(),[]之间跳转
  • H, M, L: 直接跳转到当前屏幕的顶部、中部、底部
  • #H: 跳转到当前屏的第#行
  • #L: 跳转到当前屏的倒数第#行
  • zt: 当前编辑行置为屏顶
  • zz: 当前编辑行置为屏中
  • zb: 当前编辑行置为屏底
  • G: 直接跳转到文件的底部
  • gg: 跳转到文件首
  • (): 跳转到当前的行首、行尾
  • {}: 向上、向下跳转到最近的空行
  • [{: 跳转到目前区块开头
  • ]}: 跳转到目前区块结尾
  • 0: 跳转到行首
  • $: 跳转到行尾
  • 2$: 跳转到下一行的行尾
  • #: 跳转到该行的第#个位置
  • #G: 15G 跳转到 15 行
  • :#: 跳转到 #
  • f'n':跳转到下一个 "n" 字母后
  • ctrl+b: 向后翻一页
  • ctrl+f:向前翻一页
  • ctrl+u: 向后翻半页
  • ctrl+d: 向前翻半页
  • ctrl+e: 下滚一行

# 三、选择

  • V: 选择一行
  • ^V: 矩形选择
  • v3w: 选择三个字符

# 四、编辑

# 1. 新增

  • i: 光标前插入
  • I: 在当前行首插入
  • a: 光标后插入
  • A: 当前行尾插入
  • O: 在当前行之前插入新行
  • o: 在当前行之后插入新行

# 2. 修改 c(change) 为主

  • r: 替换光标所在处的字符
  • R: 替换光标所到之处的字符
  • cw: 更改光标所在处的字到字尾处
  • c#w: c3w 修改 3 个字符
  • C: 修改到行尾
  • ci': 修改配对标点符号中的文本内容
  • di': 删除配对标点符号中的文本内容
  • yi': 复制配对标点符号中的文本内容
  • vi': 选中配对标点符号中的文本内容
  • s: 替换当前一个光标所处字符
  • #S: 删除 # 行,并以新文本代替

# 3. 删除 d(delete) 为主

  • D: 删除到行尾
  • X: 每按一次,删除光标所在位置的前面一个字符
  • x: 每按一次,删除光标所在位置的后面一个字符
  • #x: 删除光标所在位置后面6个字符
  • d^: 删至行首
  • d$: 删至行尾
  • dd:(剪切)删除光标所在行
  • dw: 删除一个单词/光标之后的单词剩余部分
  • d4w: 删除4个word
  • #dd: 从光标所在行开始删除#行
  • daB: 删除{}及其内的内容
  • diB: 删除{}中的内容
  • n1+n2+D: 将 n1, n2 行之间的内容删除

# 4. 查找

  • /: 输入关键字,发现不是要找的,直接再按 n,向后查找直到找到为止
  • ?: 输入关键字,发现不是要找的,直接再按 n,向前查找直到找到为止
  • *: 在当前页向后查找同一字
  • #: 在当前页向前查找同一字

# 5. 复制 y(yank)为主

  • yw: 将光标所在之处到字尾的字符复制到缓冲区中
  • #yw: 复制#个字到缓冲区
  • Y: 相当于 yy, 复制整行
  • #yy: 表示复制从光标所在的该行往下数 # 行文字
  • p: 粘贴。所有与y相关的操作必用p来结合粘贴
  • n1+n2+co+n3: 复制第 n1 行到第 n2 行之间的内容到第 n3 行后面

# 6. 大小写转换

  • gUU: 将当前行的字母改为大写
  • guu: 将当前行的字母改为小写
  • gUw: 将当前光标下的单词改为大写
  • guw: 将当前光标下的单词改为小写
  • ggguG: 整篇大写
    • gg: 光标到文件第一个字符
    • gu: 把选择范围全部小写
    • G: 到文件结束
  • gggUG: 整篇小写

# 7. 其它

J: 当前行和下一行合并成一行

# 8. 移动

  • n1+n2+m+n3: 将 n1 行到 n2 行之间的内容移至 n3 行下

# 五、退出

  • w filename: 保存正在编辑的文件 filename
  • wq filename: 保存后退出正在编辑的文件 filename
  • q: 退出不保存

# 六、窗口操作

  • ctrl+w+p: 在两个分割窗口之间来回切换
  • ctrl+w+j: 跳到下面的分割窗
  • ctrl+w+h: 跳到左边的分割窗
  • ctrl+w+k: 跳到上面的分割窗
  • ctrl+w+l: 跳到右边的分割窗
上次更新: 2024/10/31 08:48:42