Vi Buffer 的基本操作

在 vi 中打开过多个文件时,每个文件都是存放在各自的 buffer  中,可以用命令 ls (buffers 或 files,三个命令中拣你最喜欢的一个即可,ls 输入方便,buffers/files 更表意) 显示所有的 buffer。显示出来的结果如下:

vi-list-buffers

可以看到

每个 Buffer  的编号,分别是 1, 4, 5, 6
% 表示的是当前窗口中的 Buffer
+ 表该 Buffer  中的内容有修改
Buffer 中的文件名称

切换 Buffer 的办法

bn (bNext 或 bnext) -- 切换到下一个 Buffer
bp (bprevious) -- 切换到前一个 Buffer
bd (bdelete) -- 删除当前 Buffer

bN (N 表示编号,或 buffer N) -- 切换到编号对应的 Buffer
b filename (buffer filename) -- 切换到对应文件的 Buffer

vim-buffer-switch

bn 和 bp 切换 Buffer 比较盲目,bN 编号方式要先 ls 来确定编号,b filename 借助于 Tab 键也是个不错的选择。

前面切换命令都可以在前面加 s 表示 split window,即 sbn, sbp, sbN, sb filename, 新拆分窗口中跳到指定的 Buffer。

badd filename -- 新加一个 Buffer, 并载入文件。

另外关闭窗口的命令是 :q

补充 bl (blast) -- 切换到最后一个 Buffer, bf (bfirst) -- 切换到第一个 Buffer。

更多 Vi 的 Buffer 和 窗口操作请参考:

1. http://vim.wikia.com/wiki/Vim_buffer_FAQ
2. http://vimdoc.sourceforge.net/htmldoc/windows.html#buffers

本文链接 https://yanbin.blog/vi-buffer-basic-operation/, 来自 隔叶黄莺 Yanbin Blog

[版权声明] Creative Commons License 本文采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。

Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments