0%

[2023-09-09] Linux #1:Vim编辑器

Vim

Vim介绍

VIM 是 Linux 系统上一款文本编辑器,它是操作 Linux 的一款利器。

Vim 常用的四个模式:

  • 正常模式 (Normal-mode)

    一般用于浏览文件,也包括一些复制、粘贴、删除等操作。这时击键时,一些组合键就是vim的功能键,而不会在文本中键入对应的字符。

  • 插入模式 (Insert-mode)

    简单的来说,就是编辑文本的模式。

  • 命令模式 (Command-mode)

    在正常模式中,按下:(冒号)键或者/ (斜杠),会进入命令模式。在命令模式中可以执行一些输入并执行一些 VIM 或插件提供的指令,就像在shell里一样。这些指令包括设置环境、文件操作、调用某个功能等等。

  • 可视模式 (Visual-mode)

    在正常模式按下v, V, <Ctrl>+v,可以进入可视模式。可视模式中的操作有点像拿鼠标进行操作,选择文本的时候有一种鼠标选择的即视感,有时候会很方便。

Vim使用

文件打开、切换、保存

文件外命令 文件内命令 说明 备注
vim file1 打开file1文件 打开单个文件
vim file1 file2 … 打开file1,file2文件 打开多个文件
:ls 列出Vim打开的所有文件 在上述打开多个文件的基础上使用
:b2 在显示屏上显示第2个文件 切换到第2个文件显示
vim -On file1 file2 … 左右分屏显示多个文件
vim -on file1 file2 … 上下分屏显示多个文件
Ctrl+w s 上下分割当前打开的所有文件 在打开多个文件的基础上使用
:sp file 上下分割当前文件和新打开的文件
Ctrl+w v 左右分割当前打开的所有文件 在打开多个文件的基础上使用
:vsp file 左右分割当前文件和新打开的文件
Ctrl+w h 将当前光标移动到左边的分屏
Ctrl+w l 将当前光标移动到右边的分屏
Ctrl+w H 将当前光标所在分屏移动到左边
Ctrl+w L 将当前光标所在分屏移动到右边
Ctrl+w j 将当前光标移动到下边的分屏
Ctrl+w k 将当前光标移动到上边的分屏
Ctrl+w J 将当前光标所在分屏移动到上边
Ctrl+w K 将当前光标所在分屏移动到下边
:w 保存当前对文件的修改,但是不退出文件
:w! 强制保存但是不退出文件
:w file 保存当前的文件修改到 file 文件当中
:q! 退出文件,对文件的修改不做保存
:qa! 退出所有的文件并不做保存
:wq 退出文件并保存对文件的修改
:x 退出文件并保存对文件的修改
:e file 打开另一个文件
:e! 放弃对文件的所有修改,恢复文件到上次保存的位置
:saveas file 另存为 file
:bn:bp :bn:bp 进行上一个文件或者下一个文件的切换

文件编辑

命令 说明
i 在光标所在的字符之前插入需要录入的文本
I 在光标所在行的行首插入需要录入的文本
a 在光标所在的字符之后插入需要录入的文本
A 在光标所在行的行尾插入需要录入的文本
o 光标所在行的下一行行首插入需要录入的文本
O 光标所在行的上一行行首插入需要录入的文本
s 删除光标所在处的字符然后插入需要录入的文本
S 删除光标所在行,在当前行的行首开始插入需要录入的文本

光标移动

命令 说明
h 向左移动
j 向下移动
k 向上移动
l 向右移动
0 移动到行头
^ 移动到本行的第一个不是 blank 字符
$ 移动到行尾
g_ 移动到本行最后一个不是 blank 字符的位置
w 光标移动到下一个单词的开头
e 光标移动到下一个单词的结尾
b 光标移动到上一个单词的开头
fa 移动到本行下一个为 a 的字符处
nG 光标定位到第 n 行的行首
gg 光标定位到第一行的行首
G 光标定位到最后一行的行首
H 光标定位到当前屏幕的第一行行首
M 光标移动到当前屏幕的中间
L 光标移动到当前屏幕的尾部
zt 把当前行移动到当前屏幕的最上方,也就是第一行
zz 把当前行移动到当前屏幕的中间
zb 把当前行移动到当前屏幕的尾部
% 匹配括号移动,包括 ( , { , [ 需要把光标先移动到括号上
* 匹配光标当前所在的单词,移动光标到下一个匹配的单词
# 匹配光标当前所在的单词,移动光标到上一个匹配的单词

翻页操作

命令 说明
ctrl+f 查看下一页内容
ctrl+b 查看上一页内容

撤销和恢复

命令 说明
u 撤销刚才的操作
ctrl + r 恢复撤销操作