参考 https://mp.weixin.qq.com/s/bnqTgPYoKqZ9iBUkfSZrRQ
Vim 是被 Linux 管理员和开发者广泛使用的最流行和功能强大的编辑器之一。它可以通过高度的自定义配置来提高文本编辑效率。它是在众多 Unix 默认安装的 Vi 编辑器的升级版。
什么是 Vim
Vim 通常被称为“程序员的编辑器”,但并不限于此,它也可用于编辑任何类型的文件。它具有许多功能,例如:多次撤销、多窗口和缓冲区、语法高亮、命令行编辑、文件名补全、可视选择等等。你可以使用:help命令来获取在线帮助。
理解 Vim 的模式
如果你正在使用插入模式,你会在编辑器的底部看到 INSERT 。如果编辑器底部没有显示任何内容,或者在编辑器底部显示了文件名,则处于 “命令模式”。
命令模式下的光标移动
Vim 快捷键允许你使用不同的方式来移动光标:
◈ G – 跳转到文件最后一行
◈ gg – 跳转到文件首行
◈ $ – 跳转到行末尾
◈ 0 (数字 0) – 跳转到行开头
◈ w – 跳转到下一个单词的开始(单词的分隔符可以是空格或其他符号)
◈ W – 跳转到下一个单词的开始(单词的分隔符只能是空格)
◈ b – 跳转到下一个单词的末尾(单词的分隔符可以是空格或其他符号)
◈ B – 跳转到下一个单词的末尾(单词的分隔符只能是空格)
◈ PgDn键 – 向下移动一页
◈ PgUp键 – 向上移动一页
◈ Ctrl+d – 向下移动半页
◈Ctrl+u – 向上移动半页
插入模式:插入文字
下面的 Vim 快捷键允许你根据需要在光标的不同位置插入内容。
◈ i– 在光标之前插入
◈ a – 在光标之后插入
◈ I– 在光标所在行的开头插入。当光标位于行中间时,这个键很有用
◈ A – 在光标所在行的末尾插入。
◈ o– 在光标所在行的下面插入新行
◈ O – 在光标所在行的上面插入新行
◈ea – 在单词的末尾插入
拷贝、粘贴和删除一行
◈ yy – 复制一行
◈ p/ P – 将内容粘贴到光标之后 / 之前
◈ dd – 删除一行
◈ dw– 删除一个单词
在 Vim 中搜索和替换匹配的模式
◈ /模式 – 向后搜索给定的模式
◈ ?模式 – 向前搜索给定的模式
◈ n– 向后重复搜索之前给定的模式
◈ N– 向前重复搜索之前给定的模式
◈ :%s/旧模式/新模式/g– 将文件中所有的旧模式替换为新模式
◈ :s/旧模式/新模式/g – 将当前行中所有的旧模式替换为新模式
◈ :%s/旧模式/新模式/gc– 逐个询问是否文件中的旧模式替换为新模式
如何在 Vim 编辑器中跳转到特定行
根据需求以两种方式达到该目的,如果你不知道行号,建议采用第一种方法。
通过打开文件并运行下面的命令来显示行号
:set number
当设置好显示行号后,按 :n跳转到相应的行号。例如,如果你想跳转到第 15 行,请输入:
:15
如果已经知道行号,请使用以下方法在打开文件时直接跳转到相应行。例如,如果在打开文件时直接跳转到 20 行,请输入下面的命令:
$ vim +20 [文件名]
撤销操作/恢复上一次操作/重复上一次操作
◈ u– 撤销更改
◈Ctrl+r – 恢复更改
◈. – 重复上一条命令
保存和退出 Vim
◈ :w – 保存更改但不退出 vim
◈:wq – 写并退出
◈ :q!– 强制退出