目录
[1. Vim的三种模式](#1. Vim的三种模式)
[2. 基本操作命令](#2. 基本操作命令)
[3. 文件管理](#3. 文件管理)
[4. 搜索与替换](#4. 搜索与替换)
[5. 文本操作](#5. 文本操作)
[6. 宏与自动化](#6. 宏与自动化)
[7. 配置与自定义](#7. 配置与自定义)
[8. 高级功能](#8. 高级功能)
[9. 插件与扩展](#9. 插件与扩展)
前言
Vim 是一个强大的文本编辑器,广泛用于代码编辑和脚本编写。Vim的命令非常丰富,涵盖了文本操作、文件管理、搜索与替换、宏录制、脚本编写等各个方面。以下是Vim命令的详细介绍,涵盖基本操作、文件管理、文本编辑、搜索与替换等。
1. Vim的三种模式
Vim 有三种主要模式:
- 正常模式(Normal Mode):默认模式,用于浏览、编辑和执行命令。在这个模式下,按键代表特定命令。
- 插入模式(Insert Mode) :用于文本输入,类似于其他文本编辑器的普通模式。通过按 i进入插入模式。
- 命令模式(Command Mode) :用于执行文件保存、退出、查找替换等操作。在正常模式下按 :进入命令模式。
2. 基本操作命令
- 进入 Vim :
- vim filename:打开指定文件。
- vim:打开Vim,不指定文件。
 
- 移动光标 :
- h:向左移动光标。
- j:向下移动光标。
- k:向上移动光标。
- l:向右移动光标。
- gg:移动到文件首行。
- G:移动到文件尾行。
- 0:移动到当前行的行首。
- $:移动到当前行的行尾。
- w:移动到下一个单词的开头。
- b:移动到上一个单词的开头。
 
- 编辑操作 :
- i:在光标前进入插入模式。
- a:在光标后进入插入模式。
- o:在光标下方插入新行并进入插入模式。
- x:删除光标所在字符。
- dd:删除当前行。
- yy:复制当前行。
- p:在光标后粘贴内容。
- u:撤销上一个操作。
- Ctrl + r:重做被撤销的操作。
 
3. 文件管理
- 保存与退出 :
- :w:保存当前文件。
- :w filename:另存为指定文件名。
- :q:退出Vim。
- :q!:不保存退出。
- :wq:保存并退出。
- ZZ:保存并退出(正常模式下)。
 
- 分屏操作 :
- :sp filename:水平分屏打开文件。
- :vsp filename:垂直分屏打开文件。
- Ctrl + w + w:切换光标到下一个分屏。
- Ctrl + w + h/j/k/l:在分屏间移动光标。
- :q:关闭当前分屏。
 
4. 搜索与替换
- 搜索 :
- /pattern:向下搜索指定模式。
- ?pattern:向上搜索指定模式。
- n:跳转到下一个匹配项。
- N:跳转到上一个匹配项。
 
- 替换 :
- :s/old/new:将当前行第一个- old替换为- new。
- :s/old/new/g:将当前行所有- old替换为- new。
- :%s/old/new/g:将全文所有- old替换为- new。
- :%s/old/new/gc:替换时逐个确认。
 
5. 文本操作
- 
选择与复制: - v:进入可视模式(选择文本)。
- V:选择整行。
- Ctrl + v:进入块可视模式(选择文本块)。
- y:复制选中文本。
- d:剪切选中文本。
 
- 
文本缩进: - >>:当前行右移一个缩进。
- <<:当前行左移一个缩进。
- >:选择后右移缩进。
- <:选择后左移缩进。
 
6. 宏与自动化
- 
录制宏: - q{register}:开始录制宏,- register是任意字母,用作存储宏的寄存器。
- 执行操作(所有键入的命令将被录制)。
- q:结束录制宏。
 
- 
播放宏: - @{register}:执行存储在寄存器中的宏。
- @@:重复上一次执行的宏。
 
7. 配置与自定义
- Vim 配置文件 :
- ~/.vimrc是Vim的配置文件,可以在其中定义键绑定、设置选项等。
 
- 常用配置 :
- set number:显示行号。
- set relativenumber:显示相对行号。
- set tabstop=4:设置制表符宽度为4。
- set expandtab:将制表符转换为空格。
- set autoindent:自动缩进。
 
8. 高级功能
- 
文本折叠: - zf:折叠选中的文本。
- zo:打开折叠。
- zc:关闭折叠。
- za:切换折叠状态。
 
- 
多文件编辑: - :e filename:打开另一个文件。
- :bnext/- :bn:切换到下一个缓冲区。
- :bprev/- :bp:切换到上一个缓冲区。
- :bd:关闭当前缓冲区。
 
- 
撤销树: - :earlier或- :later:在撤销树中前进或后退。
 
9. 插件与扩展
- 
插件管理: - Vim 支持丰富的插件生态,可以通过插件管理工具(如Vundle、Pathogen、Plug等)来扩展功能。
- :PluginInstall:安装插件(以Vundle为例)。
 
- 
常用插件: - NERDTree:文件浏览器。
- CtrlP:模糊文件查找。
- vim-airline:美化状态栏。
- YouCompleteMe:代码补全。