1. vim简介
vi编辑器是所有Unix及Linux系统的任何版本下标准的编辑器,类似于windows系统下的notepad(记事本)编辑器。vim可以视为vi的升级版,它比较高级,更适用于coding,vim的重点是:光标的移动、模式切换、删除、查找替换、复制粘贴、撤销命令6个命令的使用。
vim中存在3种模式:
(1) 命令模式:该模式下不能对文件进行编辑,但可以输入快捷键进行一些操作(删除行、移动光标、粘贴等)------这是打开文件后默认进入的模式;
(2) 编辑模式(输入模式):该模式下可以对文档内容进行编辑;
(3) 末行模式:可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出、撤销、高亮等)。
2. vim 基本命令
|-----|------------------|
| 快捷键 | 功能描述 |
| i | 在当前光标位置插入文本 |
| x | 删除当前光标所在位置的字符 |
| :w | 保存文件 |
| :q | 退出vim编辑器 |
| :q! | 强制退出vim编辑器,不保存文件 |
| :wq | 保存文件并退出vim编辑器 |
3.vim光标移动命令
|-----|----------------|
| 快捷键 | 功能描述 |
| h | 将光标向左移动一个字符 |
| j | 将光标向下移动一行 |
| k | 将光标向上移动一行 |
| l | 将光标向右移动一个字符 |
| w | 将光标移动到下一个单词的开头 |
| e | 将光标移动到当前单词的末尾 |
| b | 将光标移动到上一个单词的开头 |
| 0 | 将光标移动到当前行的开头 |
| $ | 将光标移动到当前行的末尾 |
| G | 将光标移动到文件的末尾 |
| gg | 将光标移动到文件的开头 |
4. vim文本编辑命令
|-----------------------|---------------------------|
| 快捷键 | 功能描述 |
| dd | 删除当前行 |
| ndd | 删除当前行(包括此行)后n行文本 |
| dG | 删除光标所在行一直到文件末尾的所有内容 |
| yy | 复制当前行 |
| o | 在光标所在行的下面插入新的一行,光标停在行首 |
| O | 在光标所在行的上面插入新的一行,光标停在行首 |
| p | 粘贴已复制或删除的文本 |
| u | 撤销上一次的操作 |
| Ctrl + r | 重做上一次的操作 |
| r | 替换当前光标所在位置的字符 |
| c | 删除从当前光标位置到指定位置的文本,并进入插入模式 |
| v | 进入可视模式,选择文本 |
| :s/<old>/<new>/g | 将当前行中的<old>替换成<new> |
| :%s/<old>/<new>/g | 将整个文件中的<old>替换成<new> |
5. vim插入模式命令
|-----------------|----------------------------------------------|
| 快捷键 | 功能描述 |
| Esc | 退出插入模式 |
| Ctrl + A / Home | 将光标移动到所在行的行首 |
| Ctrl + E / End | 将光标移动到所在行的行尾 |
| Ctrl + U | 删除从当前光标位置到行首的全部内容 |
| Ctrl + K | 删除从当前光标位置到行尾的全部内容 |
| Ctrl + W | 删除光标前的单词,如果光标在单词上,则会删除光标位置到行首的全部字母 |
| Alt + D | 由光标位置开始,往右删除单词 |
| Ctrl + Y | 粘贴Ctrl + W、Alt + D、Ctrl + U和Ctrl + K快捷键删除的文本 |
| Ctrl + T | 插入一个制表符 |
| Ctrl + 左右键 | 在单词间跳转 |
| Ctrl + P | 向上一行移动 |
| Ctrl + N | 向下一行移动 |
| Ctrl + Z | 将正在运行的程序放到后台执行(类似于&) |
| Ctrl + L | 清空终端 |
| Ctrl + D | 退出当前终端 |
| Ctrl + R | history |
6. vim其他命令
|-----------------|----------------------------|
| 快捷键 | 功能描述 |
| :set nu | 显示行数 |
| :set nonu | 隐藏行数 |
| :set hlsearch | 高亮显示搜索结果 |
| :set nohlsearch | 取消高亮显示搜索结果 |
| / + 关键词 | 从上往下搜索(按n来搜索下一个匹配结果,N反向搜索) |
| ? + 关键词 | 从下往上搜索(按n来搜索下一个匹配结果,N反向搜索) |
| /<pattern> | 向下搜索<pattern> |
| / + 上下键 | 搜索历史 |
7. vim注释多行命令
(1) 将光标放到想要注释的行开头
(2) Ctrl+v进入列模式
(3) 用鼠标或键盘↑↓键移动光标覆盖想要注释的多行
(4) Shift+i,输入#
(5) 按下Esc即可
8. vim注释多行命令
(1) 将光标放到想要删除注释的行开头
(2) Ctrl + v进入列模式
(3) 用鼠标或键盘↑↓键移动光标覆盖想要删除注释的多行
(4) 按下x或d即可