vim学习纪要

时间:2024-01-20 20:33:51

普通模式

  1. 根据屏幕行上下移动.

    gj gk g0 g^ g$

  2. 移动到行首第一个非空字符

    ^

  3. 反向移动到上一单词的词尾

    ge


插入模式

  1. 粘贴寄存器中内容

    <C-r>


可视模式

  1. 移动光标的起始位置

    <o>

  2. 重新选中刚才选中的代码

    <gv>

  3. 进入列块模式

    <C-v>

  4. 结合查找命令删除某一段,把光标放在删除开始的首字符, d\(输入末尾单词)<CR>, 删除的内容把末尾单词排除在外。

  5. 选中xml标签

    at, it

  6. 文本对象

     | 文本对象 | 选择范围            |
    | ------- | :-----------------: |
    | iw | 当前单词 |
    | aw | 当前单词及一个空格 |
    | iW | 当前字串 |
    | aW | 当前字串及一个空格 |
    | is | 当前句子 |
    | as | 当前句子及一个空格 |
    | ip | 当前段落 |
    | ap | 当前段落及一个空行 |
  7. 自动标记

     | 位置标记 | 跳转到                           |
    | ------- | :-----------------: |
    | `` | 当前文件中上次跳转动作之前的位置 |
    | `. | 上次修改的地方 |
    | `^ | 上次插入的地方 |
    | `[ | 上次修改或复制的起始位置 |
    | `] | 上次修改或复制的结束位置 |
    | `< | 上次高亮选区的起始位置 |
    | `> | 上次高亮选区的结束位置`> |
  8. 粘贴到光标之前

     P
  9. 删除时不拷贝到无名寄存器,使用黑洞寄存器

     _d
  10. 复制时会同时拷贝到无名寄存器0,粘贴时使用

    0P
  11. 系统剪切板

    "+
  12. 只读寄存器

    | 寄存器  | 内容                |
    | ------- | :-----------------: |
    | "% | 当前文件名 |
    | "# | 轮换文件名 |
    | ". | 上次插入的文本 |
    | ": | 上次执行的 Ex 命令 |
    | "/ | 上次查找的模式 |

命令模式

  1. 插入光标中的单词

     <C-r><C-w>
  2. 从命令行模式切换到命令窗口

     <C-f>

文件操作

  1. 从当前文件切换到轮换文件

     <C-^>