Vim可是Linux中最强大、最受欢迎的文本编辑器之一,很多程序员、系统管理员都离不开它。要说清楚Vim的各种功能和用法,似乎有点长,但我会尽量用简单通俗的方式,把Vim的核心知识讲清楚,让你能一步一步开始使用它。
一、什么是Vim?
- Vim,全名"Vi IMproved",就是"改良版的Vi"。
- Vi 是Unix/Linux系统中最经典的文本编辑器,非常基础,但操作复杂且强大。
- Vim 在Vi的基础上加入了很多新功能,让编辑变得更方便、更强大。
简单说:Vim就是一个超级强大的文本编辑工具,你可以用它写代码、修改配置文件、编辑各种文本内容。
二、如何启动Vim?
在终端(命令行)输入:
vim
会打开一个空白的文件(新文件)或者你指定的文件,比如:
vim filename.txt
三、Vim的两大基本模式
Vim比普通文本编辑器有点特别,它有两大主要操作模式:
1. 普通模式(Normal mode)
也叫命令模式,类似浏览状态,你可以用各种键盘命令操作文本(删除、复制、粘贴、保存等)。
2. 插入模式(Insert mode)
用来编辑文本,可以像普通编辑器一样打字。
切换方式:
- 启动时默认在普通模式。
- 想输入文本,按
i
(insert)进入 插入模式。 - 输入完毕后,按
Esc
返回普通模式。
四、Vim的基本操作(通俗版)
1. 进入文件
vim filename
:打开文件- 空文件可以直接编辑新内容
2. 基本的文本插入
- 在普通模式:按
i
进入插入模式 - 你可以打字了,比如"Hello World"
- 输入完毕,按
Esc
返回普通模式
3. 保存/退出
- 在普通模式:
- 输入
:w
代表"write"(保存) - 输入
:q
代表"quit"(退出) - 一起写:
:wq
或ZZ
也可以(保存并退出) - 不保存退出:
:q!
- 输入
4. 移动光标
h
:左l
:右j
:下k
:上- 其实也可以用方向键,但用
hjkl
更方便(键位相似于游戏方向键)
5. 删除文本
x
:删除光标所在字符dd
:删除整行dw
:删除单词
6. 复制粘贴
yy
:复制(yank)整行p
:粘贴到光标后面u
:撤销刚刚的操作
五、Vim的常用操作(详细一点)
操作 | 说明 | 快捷键 |
---|---|---|
进入插入模式 | 输入文本 | i |
退出插入/普通模式 | 按 Esc |
Esc |
保存当前文件 | 保存操作 | :w |
退出Vim(不保存) | 退出不保存 | :q! |
保存并退出 | 保存后退出 | :wq 或 ZZ |
移动光标 | 在普通模式下 | h , j , k , l |
复制整行 | yy ("yank") |
|
粘贴 | p (在光标后粘贴) |
|
删除操作 | x 、dd 、dw |
|
撤销操作 | u |
|
重做操作 | Ctrl + r |
|
搜索文本 | /<关键词> (向前搜索) |
|
替换(当前行) | :s/旧文本/新文本/ |
|
进入命令行窗口 | : 显示命令 |
六、Vim的高级技巧(让你变大神)
1. 复制多行
在普通模式下:
V
进入可视行选择(Visual Line mode)- 移动光标选择多行
y
复制全部选中的内容
2. 粘贴到指定位置
- 复制后,可以在其他地方用
p
3. 查找和替换
假设你想把所有"foo"改成"bar":
:%s/foo/bar/g
这会在整个文件里替换所有"foo"。
4. 自动缩进
用:
gg=G
可以自动格式化整个文件(所有代码缩进)。
5. 复制到系统粘贴板(在支持的环境)
"+y # 复制到系统粘贴板
"+p # 粘贴系统粘贴板内容
注:部分Vim版本需要支持clipboard功能。
七、Vim配置(个性化设置)
Vim可以通过配置文件~/.vimrc
来自定义:
例如:
set nocompatible " 关闭兼容模式,启用现代特性
syntax on " 开启语法高亮
set number " 显示行号
set cindent " 自动缩进
set tabstop=4 " 制表符宽度4
set expandtab " 将Tab变空格
这样可以让Vim变得更符合你的习惯。
八、总结:如何逐步学习Vim
- 了解基本操作:进入文件、插入文本、保存退出
- 熟练移动光标和删除操作
- 学习搜索、替换和复制粘贴
- 尝试配置文件,个性化Vim
- 多练习,逐步熟悉操作
九、鼓励的话
刚开始用Vim可能会觉得有点"生硬",但坚持用几天,你会发现它的效率远远超过普通编辑器。其实,Vim的强大在于它的"命令"让你快速操作文本,一旦掌握,写代码、编辑配置会变得非常轻松。