Vim 是一个高效且强大的文本编辑器,被许多程序员和系统管理员视为必备工具。Vim 的高效来源于其模式操作与丰富的命令集。本文将详细介绍 Vim 的基本模式、常用操作、正常模式命令集、末行模式命令集,以及一份 Vim 操作的总结,希望可以为您提供一个清晰的入门指引。
1. vim基本模式
Vim 有以下三个主要模式,每种模式都有特定的功能和快捷键:
- 正常模式 (Normal Mode):这是 Vim 的默认模式,打开 Vim 时即处于该模式。在正常模式下,用户可以进行光标移动、文本删除、复制等操作。按 `ESC` 键可随时回到正常模式。
- 插入模式 (Insert Mode):插入模式用于文本输入。在正常模式下按 `i` 进入插入模式,此时可以像其他文本编辑器一样输入文本。
- 底行模式 (Command-line Mode):,也叫末行模式,用于执行文件保存、退出、查找和替换等命令。在正常模式下按 :(也就是shift + ;) 进入底行模式,输入相应命令并按 `Enter` 执行。
除此之外还有可视模式。替换模式。选择模式等辅助模式
2. vim基本操作
了解了 Vim 的模式后,让我们进入基本操作部分,包括打开文件、保存、退出、切换模式等日常编辑操作。
- 打开文件:vim 文件名。例如 vim myfile.txt。
- 保存文件:在底行模式下输入 `:w` 并按 `Enter`。
- 退出编辑:在底行模式下输入 :q ,如果有未保存更改,则可以使用 `:q!` 强制退出。
- 保存并退出:输入 `:wq` 或 `:x` 保存并退出。
- 切换到插入模式:在正常模式下按 i 开始编辑,按 `ESC` 退出插入模式。(o、a也可以进入插入模式,区别是a会使光标向后移动一位,o会新起一行)
3. vim正常模式命令集
在正常模式下,可以执行各种文本编辑、移动、删除等命令。以下是常用命令集:
(1)光标移动:
- h:光标左移
- j:光标下移
- k:光标上移
- l:光标右移
(方向键也支持光标移动)
- 0:移动到行首
- $:移动到行尾
- gg:移动到文件开头
- G(shift + g):移动到文件末尾
(2)删除文本:(支持在正常模式下进行删除操作,而不用换成插入模式)
- x:删除当前光标所在字符
- dw:删除一个单词
- dd:删除当前行并复制(剪切)
- d$:删除光标到行尾
(3)复制和粘贴:
- yy:复制当前行
- yw:复制一个单词
- p:粘贴到当前行的下一行
- P:粘贴到当前行的上一行
(4)查找和替换:
- /关键字:向下查找关键字
- ?关键字:向上查找关键字
- n:查找下一个匹配项
- N:查找上一个匹配项
(5)撤销操作:
- u:撤销上一个操作。按多次u可连续撤销多个操作
- U:撤销对当前整行的所有更改。
Ctrl + r:对u进行撤销
(6)组合命令:
- n + p:粘贴n行复制的内容(这里的n是指一个数)
p
10 p
- n + dd:剪切或删除n行
10 dd
按p粘贴
- n + x/X:正常模式下的删除n个字符
3 x
(7)文本替换命令:
- ~ 或(shift + ·):快速转大小写
按住shift+·
- n + r:小范围文本替换,替换n个字符
5 r w
- R(shift + r):进入替换模式(直接替换原来的字符)
输入printf
shift + zz:保存并退出
掌握这些命令可以让您在不离开键盘的情况下完成大部分文本编辑任务。
4. vim底行模式命令集
底行模式主要用于一些文件操作命令和文本处理。以下是常用的末行模式命令:
(1)文件操作:
- :w:保存文件
- :q:退出 Vim
- :wq 或 :x:保存并退出(等于正常模式下的shift+zz)
- q!:不保存强制退出
- :w 文件名`:另存为新文件
(2)文本处理:
- :%s/旧文本/新文本/g:全文替换
- :set nu:显示行号
- :set nonu:取消显示行号
(3)跳转操作:
- :数字:跳转到指定行
- :e 文件名:打开其他文件
(4)搜索操作:
- /xxx + n:
/main:找到main,按n/N可以上下查找
(5)执行外部命令
!command:在不退出vim的情况下,执行命令行命令
!ls
!man 3 printf
底行模式的操作主要用于文件管理、全局替换等,适用于复杂的文本处理。
(6)替换文本
%s/要替换的字符/替换的字符/g
5. 分屏操作
在 Vim 中,分屏操作(Vertical Split 和 Horizontal Split)可以让您在同一窗口内查看或编辑多个文件,甚至同一个文件的不同部分。以下是一些常用的分屏命令:
1. 垂直分屏(Vertical Split)
- :vsp 文件名 或 :vsplit 文件名:垂直分屏并打开指定文件。
- :vsp:垂直分屏并重新打开当前文件(适合查看不同位置)。
- 快捷键:在正常模式下按 Ctrl + w, v 快速垂直分屏。
2. 水平分屏(Horizontal Split)
- :sp 文件名 或 :split 文件名:水平分屏并打开指定文件。
- :sp:水平分屏并重新打开当前文件。
- 快捷键:在正常模式下按 Ctrl + w, s 快速水平分屏。
3. 分屏窗口间的导航
在分屏状态下,可以使用以下快捷键在不同窗口间切换:
- Ctrl + w, h:移动到左边的窗口。
- Ctrl + w, j:移动到下方的窗口。
- Ctrl + w, k:移动到上方的窗口。
- Ctrl + w, l:移动到右边的窗口。
- Ctrl + w, w:在窗口间循环切换。
4. 调整窗口大小
- Ctrl + w, +:增加当前窗口的高度。
- Ctrl + w, -:减少当前窗口的高度。
- Ctrl + w, >:增加当前窗口的宽度。
- Ctrl + w, <:减少当前窗口的宽度。
- Ctrl + w, =:使所有窗口大小相等。
5. 关闭分屏
-:q:关闭当前分屏窗口。
- :close:同样用于关闭当前分屏。
- Ctrl + w, c:在正常模式下快速关闭当前分屏。
- :only:保留当前窗口,关闭其他所有分屏窗口。
通过分屏操作,可以有效提升在 Vim 中编辑多个文件的效率。
6. 视图模式下操作
(1)批量化注释:ctrl + v -> hjki -> shift + i -> // ->Esc
注释全文:gg -> ctrl + v -> G -> shift + i -> // - > Esc
(2)批量化去注释
ctrl + v -> hjki -> d
d
(3)快速执行最近的命令
!+ 命令首字符
希望本文能为您提供一个清晰的 Vim 入门指南,帮助您尽快上手这个编辑神器。