vim 合集
vim 的学习记录
资料来源:
<>
更新
1
2022.04.18 初始
导语
vim 与 emacs 编辑器之神与神之编辑器.虽然用的最多的是 vscode (_)…
尝试切换到全键盘流,于是选择了 vim. 这是一篇合集贴,记录自己使用 vim 的全部内容,仅备忘.
ps: 个人目的是熟悉 vim 的快捷键,在各类编辑器中使用,并非折腾 vim 本体和插件,因此并没有太多相关内容(或许最后会走向 vim 一把梭子也说不定)
vimtutor
vimtutor 是 vim 自带的入门教程,非常实用.
移动指令
- h j k l 左下上右
- 词: w 下一个词头 b 上一个词头 e 下一个词尾
- 行: 0 行首 $ 行尾 ^ 第一个非空字符
- 文件: gg 文件头 G 文件尾 NG 跳转到 N 行 C-G 查看当前位置
写入
- o 光标后 创建新行,进入 insert
- O 光标前 创建新行,进入 insert
- 进入 insert; i 原地 a 当前词末尾 A 行末尾.
删除 (删除的内容会暂存到 vim,p 可使用)
- x 删除字符
- d{移动指令} dN{移动指令} 删除移动范围内内容
- dd 删除行 Ndd 删除 N 行 (删除的内容)
撤销
- u 撤销最后一次执行的命令
- U 撤销光标在的这一行所有修改
- C-R 撤销上一次 u 命令
修改
- y 进入 v 模式复制选中文本
- p 粘贴 粘贴 vim 的暂存
- rx 替换字符
- R 进入类似输入模式,但会替换已有字符
- c{移动指令} cN{移动指令} 删除移动范围内容,并进入 insert
查找
- /x 向下查找 ?x向上查找
- n 结果向上 N 结果向下
- % 查找并跳转到
)]}
,再输入 % 跳转到([{
- set 选项查找时输入 :set xx,关闭则是 set noxx
- ic 忽略大小写
- is 搜索部分匹配
- hls 高亮显示 (关闭高亮: 不带set 的 :nohlsearch)
替换
- 😒/x/y 头一个
- 😒/x/y/g 本行
- :M,Ns/x/y/g M 到 N 行
- :%s/x/y/g 整个文件
- :%s/x/y/gc 整个文件并一个一个询问
窗口
- sp vsp 打开新窗口
- :q 退出当前窗口
- C-W 切换焦点
C-O C-I 光标回到 光标向前/向后
C-G 查看当前位置
C-W 切换焦点
C-D 补全列表
operator number motion 的组合: d2w
:!command 执行外部命令
:w filename 将选中区写入一个新文件
:r file or any_command 类似管道将内容写入现在光标位置