- by yejinlei
-
移动
- h/j/k/l 光标左/上/下/右移
- 0/$/^ 行首/行尾/首字母
- gg 第一行
- [N]G N行/最后行
- */# 读取当前光标下的字符串,并跳到下一个/上一个
- `[a-z] 移动到标记
- m[a-z] 设置标记
- `. 最后修改处
- `` 上一次跳转处
- H 页面上方
- M 页面中间
- L 页面下方
- ctrl+g 显示当前位置
- 标记
- 页面
- 行间
- 行内
- 光标
- 跳跃
- 当前
-
查找
替换
- /string 搜索string
- ?string 反向搜索
- n 继续搜索
- N 反向继续搜索
- :s/old/new/g 当前行替换
- :%s/old/new/g 所有替换
- :s/old/new/gc 当前行替换,需确认
- :%s/old/new/gc 所有替换,需确认
- :set hlsearch 高亮
- :set nowrapscan 不循环搜索
- :set ignorecase 忽略大小写
- :set noignorecase
- :set ignorecase smartcase
只要有大写,必须全匹配
- /\Cstring 全匹配,例如:
\Cword word
\CWord Word
- /\cstring 大小写不敏感匹配,例如:
\cword word, Word, WORD, WoRd, etc.
\cWord word, Word, WORD, WoRd, etc.
- *匹配任意次数0~无穷,例如:
/a* "a","aa","aaa"
/\(ab\)* "ab","abab","abbb" <-ab作为整体
- +匹配至少1次,例如:
/\(a\)\+A "aA"
- =匹配可有可无,例如:
/folders\= "folder"和"folders"
- |并列匹配,例如:
/one\|two\|three <-\|代表or
- &同时匹配,例如:
/a\&.....s "apples" <-\&代表and,同时.代表占位符
- 简单搜索
- 替换
- 设置
- 模式搜索
-
宏
- qa 开始记录
- q 结束记录
- @a 播放记录
- 记录
-
正常模式
- J 合并两行
- u 撤销
- U 撤销一行
- ctrl+r 重做
- P/p 黏贴
- ~ 改变字符大小写
- dl 删除当前光标下的字符("x"的快捷命令)
- dh 删除当前光标之前的字符("X"的快捷命令)
- d$ 删除自当前光标至行尾的内容("D"的快捷命令)
- dw 删除自当前光标至下一个word 的开头
- db 删除自当前光标至前一个word 的开始
- diw 删除当前光标所在的word(不包括空白字符)
- daw 删除当前光标所在的word(包括空白字符)
- dG 删除当前行至文件尾的内容
- dgg 删除当前行至文件头的内容
- dd 删除当前行
- yy 拷贝当前行,其他同d*,例如yl拷贝当前光标下的字符
- cc 删除当前行,并进入插入模式,其他同d*,例如cl删除当前光标下的字符,进入插入模式
- 删除、更改和拷贝
- 撤销和重做
- 合并
- 更改
- 黏贴
-
插入模式
- I |前插
- i 前|插
- A 后插|
- a 后|插
- O |
上插
- o 下插
|
- S 删除行
- s 删除当前字符
- 非删除
- 删除
-
替换模式
- R 进入替换模式
- <BS> 撤销替换
-
命令行模式
- :q! 强制退出
- :e! 恢复源文件
-
视图模式
- V
-
设置
- :set nu 设置行号
- :set showmode 显示当前模式