Vim缓冲区简介

Vim打开文件进行编辑时其实编辑的是文件在内存中的映像(即Vim中的缓冲区)
当使用Vim对缓冲区进行操作时,磁盘文件内容与内存映像不再一致,执行w、x等命令时便是将缓冲区的内容回写到文件。

vim缓冲区列表

Vim支持同时在多个缓冲区进行操作,每打开一个文件,Vim就会创建一个对应缓冲区。 缓冲区不仅包含了文件的内容,也记录了该文件的编辑状态等配置信息,包括激活、隐藏、上次编辑行数等;

VIM缓冲区_vim命令

假设通过vim命令vim *.txt同时打开了当前目录下的两个文件 1.txt和 2.txt;
Vim启动时只会显示一个窗口,且窗口内的缓冲区对应着第一个文件,虽然另一个文件当前不可见,但其内容已经被载入到一个Vim的缓冲区

如下图所示,:ls 和 :buffers 命令会列出所有被载入到内存中的缓冲区的列表,%符号指明哪个缓冲区在当前窗口中可见;

VIM缓冲区_vim_02


在vim命令行模式下,可通过 :bnext 和 :bprev 命令正向或反向遍历列表,命令Ctrl + ^可以在当前文件和轮换文件间快速切换;而 :bfirst 和 :blast 则分别用于跳转到Vim缓冲区列表的开头和结尾;