在 Linux 开发环境中,vim
是一个非常强大的文本编辑器,它提供了丰富的功能来帮助开发者高效地编写代码。
基本模式介绍
- 普通模式:启动 Vim 后,默认进入普通模式。可以在此模式下移动光标、复制粘贴文本等。
- 插入模式 :在普通模式下输入
i
(插入模式)、a
(追加模式)等命令进入插入模式,在此模式下可以直接输入文本。 - 命令行模式 :在普通模式下按下
:
键进入命令行模式,在此模式下可以执行各种命令,如保存文件、退出等。
移动光标
h
、j
、k
、l
:分别向左、向下、向上、向右移动一个字符。H
、M
、L
:分别移动到屏幕顶部、中间、底部行。0
或者^
:移动到行首。$
:移动到行尾。w
、W
:分别跳过单词(忽略标点符号)和大写单词(包含标点符号)。b
、B
:分别回到单词的开始(忽略标点符号)和大写单词的开始(包含标点符号)。e
、E
:分别跳到单词的结束(忽略标点符号)和大写单词的结束(包含标点符号)。G
:移动到文件的最后一行。nG
或n
:移动到文件的第 n 行。gg
:移动到文件的第一行。Ctrl+f
、Ctrl+b
:分别向下滚动一页和向上滚动一页。Ctrl+d
、Ctrl+u
:分别向下滚动半页和向上滚动半页。
文本编辑
i
:在当前光标处开始插入文本。a
:在当前光标后的下一个字符处开始插入文本。o
:在当前行下新开一行并进入插入模式。O
:在当前行上新开一行并进入插入模式。r
:替换当前字符。R
:进入替换模式,替换光标之后的所有字符直到按下ESC
键返回普通模式。x
或del
:删除当前光标下的字符。X
:删除当前光标前的一个字符。dd
:删除当前行。yy
或Y
:复制当前行。p
:粘贴剪切板中的内容到光标之后。P
:粘贴剪切板中的内容到光标之前。u
:撤销上一次操作。Ctrl+r
:重做上一次被撤销的操作。.
:重复上一次修改操作。
选择文本
v
:进入可视模式,可以选择文本。V
:进入行可视模式,可以选择整行文本。Ctrl+v
:进入块可视模式,可以选择矩形区域的文本。shift+j
、shift+k
:在可视模式下扩展选择区域到下一行和上一行。shift+l
、shift+h
:在可视模式下扩展选择区域到右边和左边。y
:复制选中的文本。d
:删除选中的文本。c
:剪切选中的文本并进入插入模式。
搜索与替换
/pattern
:搜索 pattern,按下n
到下一个匹配项,N
到上一个匹配项。?pattern
:反向搜索 pattern,按下n
到下一个匹配项,N
到上一个匹配项。:s/pattern/replacement/flags
:替换当前行中第一个匹配 pattern 的文本为 replacement。:1,$s/pattern/replacement/flags
:替换整个文件中所有匹配 pattern 的文本为 replacement。:.,+10s/pattern/replacement/flags
:替换从当前行开始的接下来 10 行中所有匹配 pattern 的文本为 replacement。
文件操作
:w
:保存文件。:q
:退出 Vim。:q!
:不保存直接退出 Vim。:wq
或:x
:保存并退出 Vim。:e filename
:打开或编辑另一个文件。:sp filename
或:split filename
:在新窗口中打开或编辑文件。:vsp filename
或:vsplit filename
:垂直分割窗口并在新窗口中打开或编辑文件。:set number
:显示行号。:set nonumber
:隐藏行号。:set relativenumber
:显示相对行号。